VMware workstation16 中Centos7下MySQL8.0安装过程+Navicat远程连接
1.MySQL yum源安装
2.安装后,首次登录mysql以及密码配置
3.远程登录问题(Navicat15为例)
一、CentOS7+MySQL8.0,yum源安装
1.安装mysql前应卸载原有mysql,如果没有请忽虑
1.1找出原有mysql安装目录
输入命令 rpm -qa | grep mysql 后出现以下几行
1.2用以下命令依次删除上述出现的文件
1.3删除mysl配置文件
2.yum源安装mysql8.0
2.1下载repo源
可从mysql官网上获取到repo源 ,点击以下链接(按需要下载,我下载的是下图画红线的Linux7版本的) https://dev.mysql.com/downloads/repo/yum/
点击Download后直接点击下图画红圈的地方
2.2下载完成后通过Xftp把文件传到虚拟机master的文件夹 /usr/local/module/ 中(文件夹可自定义)
2.3yum安装repo
yum install mysql80-community-release-el7-3.noarch.rpm
安装完毕后 cd /etc/yum.repos.d,进入该目录可以看到刚加入的repo
完毕后,用以下命令更新yum缓存
2.4yum安装mysql
2.4.1修改安装版本(默认最高版本)
因为官网最新的repo源中,包括了mysql的许多版本,可以通过cat /etc/yum.repos.d/mysql-community.repo ,修改各版本的enabled的值来确定安装哪个版本
cat /etc/yum.repos.d/mysql-community.repo
上图可看到,5.5,5.6和5.7的版本,enabled值为0,为不安装;
8.0及其它工具,enabled值为1,为安装。默认安装最高版本,可以不修改
2.4.2执行安装命令
yum install mysql-community-server
可能出现的问题:
由于网络问题,可能会出现缺少依赖的问题
Delta RPMs disabled because /usr/bin/applydeltarpm not installed
这时只需要安装对应缺少的依赖即可
yum -y install deltarpm
另外,因为网络环境差,网络速度慢,与mysql官方源连接慢等原因,安装过程中,可能会出现中断等问题,多次执行yum install,直到安装完毕即可。
二、登录mysql以及修改密码
1.启动mysql服务
1.1开启mysql服务
systemctl start mysqld
1.2设置mysql服务开机自启
systemctl enable mysqld
systemctl daemon-reload
1.3查看mysql服务状态
systemctl status mysqld
出现active (running) 表示MySQL在运行,服务开启成功
2.查看mysql初始登录密码
mysql8.0安装时,已经分配了默认初始密码,需要手动查看
grep 'temporary password' /var/log/mysqld.log
root@localhost: 后为初始密码,复制好
3.修改mysql登录密码
注意:官方源中安装的mysql默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误,本文不推荐修改默认的密码安全策略
3.1进入数据库中修改root用户密码
mysql -uroot -p
Enter password: 后输入密码,密码为查看的初始密码(也就是上一步复制的东西,粘贴完是不显示的,直接按enter键)
然后use mysql
执行use mysql后再输入
ALTER user 'root'@'localhost' IDENTIFIED BY 'XXXXXXXXXX';
单引号中的内容为密码
注意输入完后会出现错误ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
出错原因是因为密码策略问题,密码不能太过简单
然后可以查看一下密码策略,在此之前先更改一下密码,否则无论你操作什么都会提示你修改密码,
再次输入ALTER user 'root'@'localhost' IDENTIFIED BY '12Loang';
如果没报错直接跳到3.11
如果还是报相同的错误,直接跳到3.12
3.11 输入以下命令查看对应的参数
SHOW VARIABLES LIKE 'validate_password%';
3.12然后修改参数,输入以下命令
set global validate_password.policy=0;
set global validate_password.length=1;
然后就是修改自己想配置的密码了(我配的是123456,你们随意,建议还是使用复杂点的密码)
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
4.登录mysql
现在可通过 mysql -uroot -p
输入密码登录到mysql了
三、远程登录
1.修改root用户的host
首先登录mysql数据库,并切换到mysql库
mysql -uroot -p123456 # -p后可直接根密码
use mysql
再查看root用户的host属性
select host,user from user;
root用户的host默认为localhost,需要改为%(上图是修改过的),即可允许远程登录数据库,输入下面命令
update user set host='%' where user='root';
修改完成后,使用以下命令刷新,使修改有效
flush privileges;
2.使用Navicat15登录
在使用 Navicat for Mysql连接mysql 8.0时会报如下错误:
Authentication plugin 'caching_sha2_password' cannot be loaded:
这是由于navicat密码加密方式为mysql_native_password ,而mysql默认加密格式为 caching_sha2_password
只需修改root用户密码加密方式与navicat相同即可
执行命令
update user set plugin='caching_sha2_password' where user='root';
flush privileges;
打开Navicat Preminum,点击连接,再点击MySQL出现下图界面
连接名随便取
主机就填你安装MySQL的虚拟主机IP
端口一般都是3306不会变
用户名填root用户
密码就是你登录root时用的密码
点击测试连接,出现连接成功就大功告成了