CentOS7 yum命令安装mysql 8.0

安装MySQL 8.0

配置MySQL 8.0安装源

sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

运行结果如下:
在这里插入图片描述

安装MySQL 8.0

sudo yum --enablerepo=mysql80-community install mysql-community-server

运行结果如下:在这里插入图片描述
选择y,继续运行
运行结果如下:在这里插入图片描述
出现Complete!完成安装

启动MySQL服务

sudo service mysqld start

在这里插入图片描述
查看启动状态

service mysqld status

正确启动的情况如下:在这里插入图片描述

查看MySQL的root的临时密码

安装完成MySQL之后,会生成一个临时密码用于root用户的登录,获取临时密码的命令如下:

grep "A temporary password" /var/log/mysqld.log

红色框内即为root用户的临时密码在这里插入图片描述

修改root用户的密码

1、先用临时密码登录MySQL

mysql -u root -p

在出现Enter password后输入临时密码在这里插入图片描述
在这里插入图片描述
2、登录成功后修改root用户的密码

alter user'root'@'localhost'identified by'输入你的密码';

identified by指定用户的登录密码,该项可以省略。
注意:语句必须以分号结束!
在这里插入图片描述
出现以上报错情况,则说明你的密码不符合MySQL的规定。解决情况有以下两种:
①将密码修改成符合MySQL的规定样式。
②修改密码验证策略,让它能够适用自己设定的密码。

查看密码验证策略的方法:
运行命令:

show variables like 'validate_password.%';

在这里插入图片描述
validate_password.length是密码的最小长度;
validate_password.policy是验证密码的复杂程度;
validate_password.check_user_name是检查用户名与密码是够相同。

扫描二维码关注公众号,回复: 14601213 查看本文章

修改密码长度为6:

set global validate_password.length=6;

修改密码复杂度为0:

set global validate_password.policy=0;

去掉不允许用户名和密码相同:

set global validate_password.check_user_name=off;

修改完成:在这里插入图片描述

然后运行修改密码的命令:

alter user'root'@'localhost'identified by'输入你的密码';

在这里插入图片描述

配置远程访问

开启远程访问权限步骤(注意:每一条语句都以 ; 号结束):
1、use mysql;
在这里插入图片描述
2、select host,user,authentication_string,plugin from user;
在这里插入图片描述
经过查询就会发现,root的host是hostname,因此需要加一个host是%的root账号。%的意思是允许在任何地方登录。
3、create user 'root'@'%' identified by '输入你的密码';
在这里插入图片描述
4、此时执行上述中第2步的语句,可以看到结果如下:
在这里插入图片描述
5、运行完上述步骤后,运行如下代码:

GRANT ALL ON *.* TO 'root'@'%';

前面的*号用来指定数据库名,后面的*号用来指定表名。
在这里插入图片描述
运行到这里,就成功了大半。

但此时用navicat连接还是会报错
在这里插入图片描述
原因是MySQL8.0的加密方式不一样,是caching_sha2_password,则运行如下命令修改:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '输入你的密码';

在这里插入图片描述
如果还是不能成功,则有可能没有开放3306端口。
操作步骤如下:
1、输入防火墙开放端口命令:

firewall-cmd --zone=public --add-port=3306/tcp --permanent

2、刷新防火墙

firewall-cmd --reload

3、查询端口状态

netstat -nat|grep 3306

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_44978143/article/details/117117932