环境:VMware、CentOS7、MySQL8.0.25、FinalShell、Navicat。
1. 在官网下载MySQL的Linux安装包
MySQL :: Download MySQL Community Server 下载网址
将下载好的压缩包解压。
2. 将解压后的文件上传到虚拟机
只需上传这几个文件即可。
通过FinalShell将文件上传到虚拟机的 /opt 目录。
3. CentOS下检查MySQL依赖
检查 /tmp 临时目录权限,输入命令
chmod -R 777 /tmp
检查依赖,输入命令
rpm -qa|grep libaio
rpm -qa|grep net-tools
如果显示net-tools不存在,需要输入命令
yum install net-tools
进行安装,安装完成后,再次输入rpm -qa|grep net-tools命令检查。
4. 安装MySQL
依次执行以下命令:
rpm -ivh mysql-community-common-8.0.25-1.el7.x86_64.rpm
rmp -ivh mysql-community-client-plugins-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.25-1.el7.x86_64.rpm
第三个命令如果执行后报错:
需要先执行命令:
yum remove mysql-libs
再执行第三个命令。
如果最后一个命令执行后报错,则执行命令:
rpm -ivh mysql-community-server-8.0.25-1.el7.x86_64.rpm --force --nodeps
5. 检查是否安装成功
输入 mysql --version ,成功安装后显示MySQL版本信息。
或者输入 rpm -qa|grep -i mysql 检查是否安装成功。
6. 初始化服务
mysqld --initialize --user=mysql
7. 启动MySQL服务
systemctl start mysqld
成功启动后,输入命令 cat /var/log/mysqld.log ,查看文件,此时显示一个初始密码。利用此密码进行登录。登录成功后,此时如果执行一些操作,会报错:
提示需要重置密码,输入命令(MySQL8对密码的强度有所要求,默认情况下需要密码包含数字、字母以及特殊字符,且长度不小于8)
alter user 'root'@'localhost' identified with mysql_native_password by '新密码';
退出MySQL,利用修改后的新密码重新登录。
7. 远程连接
使用Navicat尝试连接MySQL。此时连接是连接不成功的。
① 检查网络和端口
检查网络
打开cmd命令行,ping 虚拟机的IP地址。
检查MySQL端口是否开放
需要先开启telnet命令,在Windows功能中勾选上Telnet客户端选项。
在命令行中输入 telnet IP地址 端口号 ,此时显示连接失败。
② 关闭虚拟机的防火墙
输入命令:
systemctl disable firewalld
重启虚拟机。(最好把本机的防火墙也一起关闭)
③ 再次检查端口开放情况
在命令行中输入 telnet IP地址 端口号 ,此时没有错误信息提示。
在确保网络畅通和MySQL端口开放的情况下,
④ 修改MySQL的配置信息
默认情况下,MySQL只允许本机访问,不能远程连接。
依次输入命令:
use mysql;
update user set host = '%' where user = 'root';
允许任何IP地址进行访问。此时可以允许远程连接。
⑤ 解决MySQL8以后加密规则的变化
此时如果是MySQL8以前的版本尝试连接,连接成功。
如果MySQL8以后的版本尝试连接,连接失败,报错代码2058,原因是MySQL8以后的密码加密规则发生了变化。
需要输入命令:
alter user 'root'@'%' identified with mysql_native_password by '密码';
⑥ 远程连接
利用Navicat进行连接。