二进制安装mysql8.0
卸载旧版本rpm包
rpm -qa|grep mysql -i
rpm -qa|grep mariadb -i
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
安装依赖包
yum install -y libaio
yum install -y perl perl-devel
解压二进制包
tar -xvf mysql-8.0.39-linux-glibc2.17-x86_64.tar.xz -C /usr/local/
创建软链接
ln -s /usr/local/mysql-8.0.39-linux-glibc2.17-x86_64 /usr/local/mysql
创建运行的用户
groupadd mysql
useradd -g mysql -d /usr/local/mysql -s /sbin/nologin -M -n mysql
创建所需要的目录及修改权限
mkdir -p /data/mysql/6033
chown -R mysql:mysql /usr/local/mysql/
chown -R mysql:mysql /data/mysql/
关闭SELinux
setenforce 0
sed -i 's/^SELINUX=.*$/SELINUX=disabled/g' /etc/selinux/config
关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
cat > /data/mysql/my6033.cnf << EOF
[client]
port = 6033
socket = /data/mysql/6033/mysql.sock
[mysql]
prompt = "\\h:\\p_\\u@\\d \\R:\\m:\\s>"
no-auto-rehash
default_character_set = utf8mb4
[mysqld]
port = 6033
mysqlx_port = 60330
server_id = 6033
basedir = /usr/local/mysql
datadir = /data/mysql/6033
pid_file = /data/mysql/6033/mysqld.pid
socket = /data/mysql/6033/mysql.sock
mysqlx_socket = /data/mysql/6033/mysqlx.sock
tmpdir = /data/mysql/6033
secure_file_priv = /data/mysql/6033
log_bin = /data/mysql/6033/mysql-bin
log_bin_index = /data/mysql/6033/mysql-bin-index
slow_query_log_file = /data/mysql/6033/slow.log
log-error = /data/mysql/6033/error.log
relay_log = /data/mysql/6033/mysql-relay
relay_log_index = /data/mysql/6033/mysql-relay-index
innodb_buffer_pool_size = 200MB
default_time_zone = "+8:00"
sql_mode = ""
user = mysql
default_authentication_plugin = mysql_native_password
## GTID
gtid_mode = on
enforce_gtid_consistency = 1
master_info_repository = TABLE
relay_log_info_repository = TABLE
[mysqldump]
quick
max_allowed_packet = 2G
EOF
修改my.cnf权限
chown mysql:mysql /data/mysql/my6033.cnf
初始化
/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/my6033.cnf --initialize --user=mysql --initialize-insecure
启动MySQL
/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/my6033.cnf &
修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH 'mysql_native_password' BY 'chengce243';
CREATE USER 'root'@'%' IDENTIFIED WITH 'mysql_native_password' BY 'chengce243';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
关闭
/usr/local/mysql/bin/mysqladmin -uroot -pchengce243 -S /data/mysql/6033/mysql.sock shutdown