【linux安装mysql】出现报错,问题已解决

下载包:wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
解压包:yum -y install mysql57-community-release-el7-10.noarch.rpm
安装: yum -y install mysql-community-server
安装完毕之后,设置免密码登陆:vim /etc/my.cnf
在[mysqld]下面添加:skip-grant-tables(免密码登录),重启 MySQLservice mysqld restart
进入MySQL数据库,选择mysql库use mysql;
修改密码:update mysql.user set authentication_string=password(‘新密码’) where user=‘用户’;
刷新权限:flush privileges;
删除/etc/my.cnf中的skip-grant-tables(免密码登录),重启MySQLservice mysqld restart

使用新密码能登入MySQL,却无法操作(1820错误)(因为5.7有密码规则)。 执行命令:set global
validate_password_policy=0; 执行命令:set global
validate_password_length=6; 执行命令:ALTER USER ‘root’@‘localhost’
IDENTIFIED BY ‘new password’; 或者: set password for
‘root’@‘localhost’=password(‘MyNewPass4!’);
到这MySQL可以使用123456作为密码登录。(还无法远程登录,只能localhost)

允许远程登陆:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password!' WITH GRANT OPTION;

但是这个时候,系统却报错了:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
不管我使用什么命令都不对,根据提示,我要修改密码,于是我这样操作:
SET PASSWORD = PASSWORD('ZXCzcx1234');
他又提示报错了:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
我记得mysql有一个密码检查策略,他可能觉得我的密码太过于简单了,所以我们吧密码设置的复杂一点,也就是字母大小写都要有,数字和特殊字符也要有
SET PASSWORD = PASSWORD('ZXCzcx1234!');
他就会提示我们修改密码成功,但是我们不想要这么复杂的密码,我们就要修改密码策咯(其实这一步就是我上面框起来的哪一个步骤没做才导致的)
首先看一下mysql的密码策略是什么先:
SHOW VARIABLES LIKE 'validate_password%';
在这里插入图片描述
我们首先修改一下密码验证的等级,设置为LOW
set global validate_password_policy=LOW;
再去修改一下最小密码长度:
set global validate_password_length=6;
然后就可以去修改我们想要的密码了,很多人都喜欢设置为123456,但是这个密码太简单了,不建议设置,我们团队有一个人就是数据库老是被别人改,有一次还登上去了别人的数据库,我惊呆了,密码什么的都是一样的,所以还是不那么常见的比较好
ALTER USER 'root'@'localhost' IDENTIFIED BY 'nishishui';

然后去测试一下我们的连接,但是报错了:
在这里插入图片描述
可能是端口没打开,去阿里云安全组配置一下先:
在这里插入图片描述
打开端口之后还是报错,我真的是服了,然后又去看了一下到底是不是真的允许了远程登陆了,然后发现了这个

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password!' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)

没有行影响,然后又去执行了一遍:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password!' WITH GRANT OPTION;

你们要看清楚啊,里面的password!要改成你们自己的啊,不然就会密码错误提示的。

改完之后,我去测试了一下:
在这里插入图片描述
大功告成!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值