微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

CentOS7.2安装mysql5.7

CentOS7.2认的数据库是mariadb。

MysqL被oracle收购后有闭源的风险(毕竟oracle是家上市公司),所以MysqL社区从现有MysqL下展开了一个分支项目,叫做mariadb。

因为市面上MysqL的教程比较多,所以我还是想通过学习研究MysqL来熟悉数据库操作。

以前我一般都是照着别人的博客一遍一遍安装MysqL,这次我自己到MysqL官网,下了rpm源,自行安装。

下载MysqL5.7的rpm源文件

这是MysqL官网: https://www.mysql.com/
进入下载页面(download这个单词,大家想必很熟悉),再在选项卡里找到Yum Repository 的链接
然后下载redhat版的rpm文件(CentOS就是redhat的社区版,所以rpm共用)。

安装MysqL

这里我是用的Xftp将文件传输到linux系统(我用的是云主机)。
后执行rpm -ivh 加下载下来的rpm文件名来安装该rpm。
后执行 yum install MysqL MysqL-server

登入MysqL

mysq5.7的初始密码不再是空,而是随机生成的临时密码,通过执行grep "password" /var/log/MysqLd.log 来获取临时密码
如果执行该命令后,输出为空的话,需要重启一下MysqL,执行$ service serverd restart
然后在执行MysqL登入命令 MysqL -uroot -p+临时密码
进入后什么都做不了,因为MysqL5.7规定首次登入系统,需要立即修改密码
此时如果我们通过 MysqL>SET PASSWORD=PASSWORD('新密码');来修改密码的话,多半会失败
会出现错误提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements这是密码不符合要求的意思
密码需要的要求不在这里做过多叙述,总之我试了很多次都没成功。
但是有个解决方法是,将密码要求改为长度限制,这样的话,只要密码长度超过限制,就可以修改成功了。
执行MySQL命令MysqL> set global validate_password_policy=0;
后执行命令:
MysqL> select @@validate_password_length;
+-----------------------—————-----+
| @@validate_password_length |
+---------------------------—————-+
| 8 |
+--------------------------—————--+
1 row in set (0.00 sec)
从这里可以看出密码最小长度限制是8
所以我们只要将密码设置成超过8位的就行了。
此时再执行: SET PASSWORD=PASSWORD('新密码')
就完成了密码修改,之后就能正常使用MysqL了^_^



CentOS上安装MysqL的问题困扰了我很久,这次彻底解决后,决定写篇博客记录一下,防止以后忘记解决方法

这是 参考博客,我解决密码限制的问题就是从这篇博客参考来的

原文地址:https://www.jb51.cc/centos/380695.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。