centos8安装mysql8.0.22
如果服务器之前安装过mysql请先卸载,我这里是用yum安装的,现在通过yum去卸载
yum remove -y mysql
find / -name mysql //找到残留的文件,再通过rm -rf去删除对应的文件
1,下载mysql安装包:
wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
2、安装数据源
然后输入:yum install mysql80-community-release-el8-1.noarch.rpm
3、检查数据源
查看mysql源是否安装成功:yum repolist enabled | grep "mysql.*-community.*"
4、配置数据源(可不配置)
修改yum源,可不配置
配置yum源:cat /etc/yum.repos.d/mysql-community.repo
5、禁用CentOS8自带mysql模块
禁用CentOS8自带的mysql模块
yum module disable mysql
6、安装数据库
真正安装mysql
安装语句:yum install mysql-community-server
这一步的时候可能很多人安装不上,
因为是yum安装库的问题,错误(Error: GPG check FAILED),
可以将--nogpgcheck添加到后面: yum install mysql-community-server --nogpgcheck
yum install mysql-community-server
Is this ok [y/Y] 一路 y到底
7、启动mysql
输入:
service mysqld start
service mysqld status
8、显示mysql的随机密码
输入:grep 'temporary password' /var/log/mysqld.log
grep 'temporary password' /var/log/mysqld.log
9、登录并修改mysql密码
登录:mysql -u root -p
然后输入上面生成的密码
修改密码,先修改任意密码才能修改密码策略,之后才能设置我们想要的简单密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root_21root'; //因为我们随便修改密码时,一般都不满足它的策略
会报以下错误:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
解决办法:
一定要先修改默认密码为: Root_21root 满足它的策略,再进行下面的操作:
查看密码策略:SHOW VARIABLES LIKE 'validate_password%';
修改密码长度:set global validate_password.length=1;
(长度)
修改密码等级:set global validate_password.policy=0;
(等级)
修改后再次查看
设置自己想要的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
Mysql8.0.22开放远程访问
真确写法:
1、先创建权限记录:create user 'root'@'%' identified by 'root123';
2、授权:grant all privileges on *.* to 'root'@'%' with grant option;
两句话分开写:
开放防火墙端口
sqlyog连接的坑
本地去连接mysql时报错,错误 2058 Plugin caching_sha2_password could not be loaded
由于mysql8.0的加密方法变了。mysql8.0默认采用caching_sha2_password的加密方式。sqlyog不支持这种加密方式。
1、修改密码过期 ALTER USER'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER; 2、重新修改密码 ALTER USER'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root'; 3、刷新权限(不做可能无法生效) FLUSH PRIVILEGES;
重新连接成功