共计 981 个字符,预计需要花费 3 分钟才能阅读完成。
在 CentOS 中安装好了 MySQL 5.7 之后,发现密码不知道。不要紧,直接重置密码。
1. 修改配置文件 my.cfg
[root@localhost ~]# vi /etc/my.cnf
找到 mysqld 在之后添加
skip-grant-tables
保存退出
2. 重启 mysql 服务
service mysqld restart
3. 直接登陆 mysql 而不需要密码
mysql -u root (直接点击回车)
4. 在 mysql 中输入
update mysql.user set password=password(‘root’) where user=’root’;
(此时提示 ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’)
5.(这是怎么回事?)原来是 mysql 数据库下已经没有 password 这个字段了,password 字段改成了 authentication_string
update
mysql.user set authentication_string=password(‘123456′) where user=’root’ ;
6. 执行 flush
privileges
7. 退出 mysql
,到 my.cgf 中把开始添加的 skip-grant-tables 去掉
8. 重启 mysql 服务
大功告成!
但是事实并非如此!
9. 当你登陆 mysql 之后你会发现,当你执行命令时会出现
ERROR
1820 (HY000): You must reset your password using ALTER USER statement;
当你执行了 SET PASSWORD
= PASSWORD(‘123456’);
出现:ERROR
1819 (HY000): Your password does not satisfy the current policy requirements
10. 你需要执行两个参数来把 mysql 默认的密码强度的取消了才行
set global validate_password_policy=0; set global validate_password_mixed_case_count=2;11 这是你在执行 SET PASSWORD = PASSWORD(‘123456’);
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-10/136522.htm