Centos7中怎么安装MySQL8,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
站在用户的角度思考问题,与客户深入沟通,找到长宁网站设计与长宁网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、网站制作、企业官网、英文网站、手机端网站、网站推广、申请域名、网站空间、企业邮箱。业务覆盖长宁地区。
1.配置Mysql 8.0安装源:
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
2.安装Mysql 8.0
sudo yum --enablerepo=mysql80-communityinstall mysql-community-server
以下都选y
看到complete就是安装完啦,是不是很简单?
3.启动mysql服务
安装完的第一件事当然是启动mysql服务啦
sudo service mysqld start
这样就算启动完了哦,不信?看下运行状态:
service mysqld status
嗯,没骗你吧。。。
4.查看root临时密码:
安装完mysql之后,会生成一个临时的密码让root用户登录,那么临时密码在哪里看呢?
输入以下命令就可以啦:
grep "A temporary password"/var/log/mysqld.log
我去,好复杂。。。
5.更改临时密码:
这个密码估计也只有外星人能记得住了,作为地球人,第一件事就是改成我自己容易记得密码啦。
先用临时密码登录mysql
输入:mysql -uroot -p
在Enter password:后面输入密码,注意输入密码的时候是看不到的哟,别担心,直管输完回车就行。
恭喜你,这样就是登录成功了。
先在我们要改密码了哟:
输入:ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';
这里的new password要改成你自己的密码哟,我想把密码改成root,所以我输入:ALTER USER 'root'@'localhost'IDENTIFIED BY 'root';
哎哟,提示密码不满足密码验证策略,也是,密码太简单了呢。
好吧,现在有2种选择:
1. 把密码改复杂点,让它符合密码验证策略,这个当然是最好的,符合国际惯例;
2. 把密码验证策略改简单点,让它适用简单的密码,这个符合懒人的做法。
额,作为一个上进的人,那我就选择2吧。
那我们先看看当前的密码验证策略是怎么样的吧。
输入:SHOW VARIABLES LIKE 'validate_password.%';
我去,重置密码之前还不让看。。。直接看官方文档吧:
validate_password.length
是密码的最小长度,默认是8,我们把它改成4
set global validate_password.length=4;
validate_password.policy
验证密码的复杂程度,我们把它改成0
set global validate_password.policy=0;
validate_password.check_user_name
用户名检查,用户名和密码不能相同,我们也把它去掉
set globalvalidate_password.check_user_name=off;
现在再执行修改密码的命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
成功了,密码设成了root,但是我建议大家还是设个复杂点密码,不要这么懒哦。
6.配置远程访问
用mysql客户连接报不允许连接的错误,那是因为没开通远程访问的权限哦。
百度上基本说执行
GRANT ALL ON *.* TO 'root'@'%'; 就行了,但是一不下心报了个错:
看下默认MySQL用户:
use mysql;
select host, user, authentication_string, plugin fromuser;
发现root的host是localhost,不是%哦,那我们就加个host是%的root账号:
CREATE USER 'root'@'%' IDENTIFIED BY 'root';
再查下用户
select host, user, authentication_string, plugin fromuser;
可以看到已经新增了host为%的root用户
然后再执行:
GRANT ALL ON *.* TO 'root'@'%';
成功了耶,嘿嘿。
连接成功:
7.navicat连接mysql
用navicat连接mysql还是会报错:
原因是mysql8的加密方式规则不一样,是caching_sha2_password
把加密方式改成mysql_native_password就行了:
ALTER USER '[用户名]'@'%' IDENTIFIED WITH mysql_native_password BY '[密码]';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_passwordBY 'root';
加密方式以及改成了mysql_native_password:
看完上述内容,你们掌握Centos7中怎么安装mysql8的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!