一、删除以前安装的 MySQL 服务
一般安装程序第一步都需要清除之前的安装痕迹,否则可能会有版本或依赖冲突等问题,这里步骤和 MySQL 卸载流程可以通用。
1. 卸载 MySQL
查看之前是否安装过 MySQL:
rpm -qa | grep -i mysql
通过 yum remove 将以上内容删除:
yum remove mysql80-community-release-el8-1.noarch
yum remove mysql-community-server-8.0.27-1.el8.x86_64
yum remove mysql-community-client-plugins-8.0.27-1.el8.x86_64
yum remove mysql-community-libs-8.0.27-1.el8.x86_64
yum remove mysql-community-client-8.0.27-1.el8.x86_64
yum remove bt-mysql57-5.7.34-1.el8.x86_64
yum remove mysql-community-common-8.0.27-1.el8.x86_64
检查是否卸载干净:
rpm -qa | grep -i mysql
查找 MySQL 相关目录:
find / -name mysql
对这些目录进行删除:
rm -rf /etc/logrotate.d/mysql
rm -rf /var/lib/selinux/targeted/active/modules/100/mysql
rm -rf /var/lib/selinux/targeted/tmp/modules/100/mysql
rm -rf /var/lib/mysql
rm -rf /usr/bin/mysql
rm -rf /usr/lib64/mysql
rm -rf /usr/share/selinux/targeted/default/active/modules/100/mysql
删除 /etc/my.cnf 文件:
rm -rf /etc/my.cnf
删除 /var/log/mysql/mysqld.log 文件:
rm -rf /var/log/mysql/mysqld.log
2. 卸载 MariaDB
查看是否有安装 MariaDB,该软件与 MySQL 数据库有冲突,需要卸载:
# 如果是 CentOS 7 可以检测出已经安装了 mariadb
rpm -qa | grep mariadb
移除 MariaDB 相关的软件:
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
如果是一个刚刚新建的服务器,那前面的步骤可以忽略,可以直接进行下载安装了。
二、下载安装 MySQL
下载网址: https://dev.mysql.com/downloads/
选择对应版本,默认是最新的版本。如果想要下载之前的版本的话,可以点击 Archives 里面查找,下载 RPM Bundle 版本。
下载完成后使用 Xftp 等工具传输到自己安装的路径下,或者直接使用 wget 命令进行下载:
mkdir /usr/local/mysql/
cd /usr/local/mysql/
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar
解压文件:
tar -xvf mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar
使用 rpm 安装,必须按照顺序执行命令,否则会出现依赖错误的报错:
rpm -ivh mysql-community-common-8.0.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.16-1.el7.x86_64.rpm
如果是 CentOS 8 及以上版本,按照这个顺序来执行:
rpm -ivh mysql-community-common-8.0.35-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.35-1.el8.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.35-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-8.0.35-1.el8.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.35-1.el8.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.35-1.el8.x86_64.rpm
rpm -ivh mysql-community-server-8.0.35-1.el8.x86_64.rpm
查看已安装的 MySQL 的版本:
mysql --version
如果后期业务需要区分大小写的话就配置 my.cnf。注意: MySQL 不区分表名、数据库名和数据库模式名的大小写,需要先加 lower_case_table_names=1,MySQL 8.0 只能初始化时候配置,后面修改比较麻烦。
vi /etc/my.cnf
MySQL 的常用命令,这里进行启动:
# 开机自启
systemctl enable mysqld
# 启动
systemctl start mysqld
# 查看状态
systemctl status mysqld
# 重启
systemctl restart mysqld
# 关闭
systemctl stop mysqld
# 关闭开机自启
systemctl disable mysqld
状态显示为 active (running) 表示启动成功,到这里就是安装完成了。
三、MySQL 的使用
1. 获取 root 用户的初始密码
cat /var/log/mysqld.log | grep root@localhost
2. 使用 root 用户登录到 MySQL 服务
mysql -u root -p
3. 修改 root 的初始化密码
由于数据库默认有个密码强度策略,所以需要有大小写和特殊字符,后面可以修改密码策略:
alter user root@localhost identified by 'Abu123456.';
4. 开放远程访问权限
其他主机可以连接数据库,可以使用 Navicat 等工具进行操作:
# 选择数据库
use mysql;
# 设置 root 用户任意地方可以访问
update user set host='%' where user='root';
# 刷新权限
flush privileges;
此时可使用客户端工具尝试连接,连接成功。如果连接失败就去看看防火墙的 3306 端口是否开放。

