centos8安装mysql8.0.22
1,输入:
wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
2、安装数据源
然后输入:
sudo yum install mysql80-community-release-el8-1.noarch.rpm
3、检查数据源
查看mysql源是否安装成功:
sudo yum repolist enabled | grep "mysql.*-community.*"
4、配置数据源(可不配置)
修改yum源,可不配置
配置yum源:
cat /etc/yum.repos.d/mysql-community.repo
5、禁用CentOS8自带mysql模块
禁用CentOS8自带的mysql模块
sudo yum module disable mysql
6、安装数据库
真正安装mysql
安装语句:
sudo yum install mysql-community-server
Is this ok [y/Y] 一路 y到底
7、启动mysql
输入:
service mysqld start
service mysqld status
8、显示mysql的随机密码
输入:
sudo grep 'temporary password' /var/log/mysqld.log
9、登录并修改mysql密码
登录:
mysql -u root -p
然后输入上面生成的密码
修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '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;
重新连接成功
查看防火墙某个端口是否开放
firewall-cmd --query-port=80/tcp
开放防火墙端口80
firewall-cmd --zone=public --add-port=80/tcp --permanent
关闭80端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
配置立即生效
firewall-cmd --reload
查看防火墙状态
systemctl status firewalld
关闭防火墙
systemctl stop firewalld
打开防火墙
systemctl start firewalld
开放一段端口
firewall-cmd --zone=public --add-port=8121-8124/tcp --permanent
查看开放的端口列表
firewall-cmd --zone=public --list-ports
firewall-cmd --zone=public --add-port=80/tcp --permanent