环境介绍 :
服务器: 虚拟机
系统版本: CentOS 7
MySQL版本: 8.0
一、卸载MariaDB
1.1 查看版本:通过rpm -qa | grep mariadb 命令查看mariadb 的安装包
rpm -qa | grep mariadb
![](https://img-blog.csdnimg.cn/img_convert/27e8040eab1b5829dd166b994ec413e9.png)
1.2 卸载:通过rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps 命令装卸 mariadb
rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps
![](https://img-blog.csdnimg.cn/img_convert/8d11c285afe5b615039d6c0e3351ae84.png)
1.3 检查是否卸载干净:通过 rpm -qa | grep mariadb 命令再次查看 mariadb 的安装包
rpm -qa | grep mariadb
![](https://img-blog.csdnimg.cn/img_convert/3cc3b8e5d242fe493859f61f561a994b.png)
二、安装MySQL
2.1 创建安装目录
通过 cd /usr/local/ 命令进入根目录下的usr目录下的local目录,这个目录是放一些本地的共享资源的
![](https://img-blog.csdnimg.cn/img_convert/005cbcbfc5081e7785a9d690eeac7be2.png)
通过 mkdir mysql 命令 在当前目录下创建一个名为 mysql 的目录
![](https://img-blog.csdnimg.cn/img_convert/204f70c019774c0af31facd47b49dae6.png)
2.2 上传安装包
通过 cd mysql 命令进入 mysql 目录,
![](https://img-blog.csdnimg.cn/img_convert/c97fb230647e704094a6baa888c227b1.png)
上传安装包,并通过 ll 命令查看一下当前目录下的目录结构
![](https://img-blog.csdnimg.cn/img_convert/493d7b5c4c12002da0b05f236a272c0a.png)
2.3 解压安装包
通过 tar -xvf mysql-8.0.25-1.el7.x86_64.rpm-bundle.tar 命令解压 tar 包
tar -xvf mysql-8.0.25-1.el7.x86_64.rpm-bundle.tar
![](https://img-blog.csdnimg.cn/img_convert/48769d269e0ba080cb15459deb632224.png)
2.4 安装
通过 rpm -ivh mysql-community-common-8.0.25-1.el7.x86_64.rpm --nodeps --force 命令安装 common
rpm -ivh mysql-community-common-8.0.25-1.el7.x86_64.rpm --nodeps --force 命令安装 common
![](https://img-blog.csdnimg.cn/img_convert/ec823bc1edc267f3a06fdc493a8b5e7e.png)
通过 rpm -ivh mysql-community-libs-8.0.25-1.el7.x86_64.rpm --nodeps --force 命令安装 libs
rpm -ivh mysql-community-libs-8.0.25-1.el7.x86_64.rpm --nodeps --force
![](https://img-blog.csdnimg.cn/img_convert/d359e6cfb699f9eb6e51dc2834450724.png)
通过 rpm -ivh mysql-community-client-8.0.25-1.el7.x86_64.rpm --nodeps --force 命令安装 client
rpm -ivh mysql-community-client-8.0.25-1.el7.x86_64.rpm --nodeps --force
![](https://img-blog.csdnimg.cn/img_convert/c0b24258f0568faf7576ede71ee122c0.png)
通过 rpm -ivh mysql-community-server-8.0.25-1.el7.x86_64.rpm --nodeps --force 命令安装 server
rpm -ivh mysql-community-server-8.0.25-1.el7.x86_64.rpm --nodeps --force
![](https://img-blog.csdnimg.cn/img_convert/517ba92dc27d56d87f23c9eadc4d391a.png)
通过 rpm -qa | grep mysql 命令查看 mysql 的安装包
rpm -qa | grep mysql
![](https://img-blog.csdnimg.cn/img_convert/3d5bb0f8d170585b1165d94c85d05024.png)
三、初始化MySQL
3.1 通过以下命令,完成对 mysql 数据库的初始化和相关配置
mysqld --initialize;
chown mysql:mysql /var/lib/mysql -R;
systemctl start mysqld.service;
systemctl enable mysqld;
![](https://img-blog.csdnimg.cn/img_convert/578201cbfdc1d887aea52e82fa31964e.png)
四、修改密码
4.1 通过 cat /var/log/mysqld.log | grep password 命令查看数据库的密码
cat /var/log/mysqld.log | grep password
![](https://img-blog.csdnimg.cn/img_convert/dff5d892a0057ea7138517e16cc5e26d.png)
)jj5mn,&;>Zq
4.2 使用随便密码登录
![](https://img-blog.csdnimg.cn/img_convert/d252ae543113b080fbb186442c566efb.png)
4.3 通过 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'; 命令来修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
![](https://img-blog.csdnimg.cn/img_convert/2c4c0563da74c72f683cd493a80d5909.png)
4.4 修改密码重新登录
通过 exit; 命令退出 MySQL,然后通过新密码再次登陆
![](https://img-blog.csdnimg.cn/img_convert/e1053041bd05934fc4ca73dbe29313b7.png)
4.5 远程访问授权
create user 'root'@'%' identified with mysql_native_password by 'root';
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;
![](https://img-blog.csdnimg.cn/img_convert/1be6c50e6dce9112906e8f8ee99ed048.png)
4.6 修改加密规则
通过 ALTER USER 'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER; 命令修改加密规则,MySql8.0 版本 和 5.0 的加密规则不一样,而现在的可视化工具只支持旧的加密方式。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;
![](https://img-blog.csdnimg.cn/img_convert/70bf3729365c34aa1a3f13eea0e3d620.png)
通过 flush privileges; 命令刷新修该后的权限
![](https://img-blog.csdnimg.cn/img_convert/fa4e7fa52f644032631ca18fed4c9584.png)
五、配置防火墙
5.1 查看防火墙状态
firewall-cmd --state
![](https://img-blog.csdnimg.cn/img_convert/d87a8155fd78f5aba086ed7d9e37d530.png)
5.2 开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent # 开放3306端口
firewall-cmd --zone=public --remove-port=3306/tcp --permanent #关闭3306端口
firewall-cmd --reload # 配置立即生效
![](https://img-blog.csdnimg.cn/img_convert/09e6b2951144bf8a15f8d9af2224ecc1.png)
5.3 查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports
![](https://img-blog.csdnimg.cn/img_convert/dcc4b081ad018705a7b17d400f0d4111.png)
六、在Navicat上测试连接
![](https://img-blog.csdnimg.cn/img_convert/28ee4245b68a03a976c8c638a78ed129.png)