一、下载MySQL8.0.39安装包
官网下载地址:MySQL :: Download MySQL Community Server
二、卸载原有的mysql和mariadb
rpm -qa | grep mariadb
rpm -qa | grep mysql
将查出来的mariadb和mysql使用rpm -e --nodeps 删除
rpm -e --nodeps mariadb-connector-c-3.0.6-9.ky10.x86_64
rpm -e --nodeps mariadb-common-10.3.39-1.p02.ky10.x86_64
rpm -e --nodeps mariadb-10.3.39-1.p02.ky10.x86_64
rpm -e --nodeps mariadb-server-10.3.39-1.p02.ky10.x86_64
rpm -e --nodeps mariadb-errmessage-10.3.39-1.p02.ky10.x86_64
rpm -ev --nodeps pcp-pmda-mysql-4.1.3-15.p01.ky10.x86_64
rpm -ev --nodeps python2-mysqlclient-1.3.12-8.ky10.x86_64
rpm -ev --nodeps qt5-qtbase-mysql-5.11.1-20.p01.ky10.x86_64
将查找出相关的文件夹文件也一并删除
find / -name mysql
find / -name mariadb
rm -rf /usr/share/mariadb
rm -rf /var/lib/pcp/config/pmlogconf/mysql
rm -rf /var/lib/selinux/targeted/active/modules/100/mysql
rm -rf /var/lib/selinux/ukmcs/active/modules/100/mysql
rm -rf /usr/lib64/perl5/vendor_perl/auto/DBD/mysql
rm -rf /usr/lib64/perl5/vendor_perl/DBD/mysql
rm -rf /usr/share/bash-completion/completions/mysql
rm -rf /etc/my.cnf.d/
rm -rf /etc/my.cnf
三、安装MySQL
1.创建mysql用户组和mysql用户
groupadd mysql
useradd -r -g mysql mysql
2.创建mysql安装以及存放数据的目录(示例:/data/mysql)
#创建数据目录
mkdir /data/mysql/data -p
#创建日志目录
mkdir /data/mysql/log -p
#创建日志文件
touch /data/mysql/log/error.log
3.上传安装包到/data/mysql
rz -be
4.解压安装包并重命名为mysql
#解压压缩包到当前目录
tar -xvf mysql-8.0.39-linux-glibc2.28-x86_64.tar.xz
#重命名
mv mysql-8.0.39-linux-glibc2.28-x86_64 mysql
5.授权
chown -R mysql:mysql /data/mysql/*
6.添加mysql配置文件
vi /etc/my.cnf
[mysqld]
user=mysql
basedir=/data/mysql/mysql
datadir=/data/mysql/data
server_id=1
port=31306
socket=/tmp/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
lower_case_table_names=1
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysql]
socket=/tmp/mysql.sock
[mysqld_safe]
log-error=/data/mysql/log/error.log
pid-file=/data/mysql/mysql.pid
[client]
port=31306
socket=/tmp/mysql.sock
7.初始化数据库
cd /data/mysql/mysql/bin/
#初始化数据库,控制台显示密码,要记录下密码
./mysqld --initialize --user=mysql --basedir=/data/mysql/mysql --datadir=/data/mysql/data
8.设置开机自启动
#复制启动文件到/etc/init.d 并赋执行权限
cp /data/mysql/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
#设置开机自启动
chkconfig --add mysqld
chkconfig --list
9.启动mysql
service mysqld start