在Centos中安装完MySQL数据库以后,不知道密码,这可怎么办,下面给大家说一下怎么重置密码
1、修改配置文件my.cnf 按i编辑
1 | [root@iZ2ze14tbj23jllo85kuh1Z ~]# vim /etc/my.cnf |
在[mysqld]中添加
1 | skip- grant -tables |
例如:
1 2 3 4 | [mysqld] **skip- grant -tables** datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock |
键盘 Esc 保存修改 :wq退出
2、重启mysql服务
1 | service mysqld restart |
3、用户登录
1 | mysql -uroot -p (直接点击回车,密码为空) |
选择数据库
1 | use mysql; |
下面我们就要修改密码了
以前的版本我们用的是以下修改
1 | update user set password = password ( 'root' ) where user = 'root' ; |
但是在5.7版本中不存在password字段,所有我们要用以下修改进行重置密码
1 | update user set authentication_string= password ( '123456' ) where user = 'root' ; |
执行
1 | flush privileges ; |
4、退出mysql
1 | quit; |
5、将最开始修改的配置文件my.cnf中的skip-grant-tables删除
6、重启mysql
7、当你登陆mysql之后你会发现,当你执行命令时会出现
1 | ERROR 1820 (HY000): You must reset your password using ALTER USER statement; |
这是提示你需要修改密码
当你执行了
1 | SET PASSWORD = PASSWORD ( '123456' ); |
如果执行成功后面的就不要看了,纯属浪费时间!
如果出现:
1 | ERROR 1819 (HY000): Your password does not satisfy the current policy requirements |
你需要执行两个参数来把mysql默认的密码强度的取消了才行
1 | set global validate_password_policy=0; set global validate_password_mixed_case_count=2; |
这时你再执行
1 | SET PASSWORD = PASSWORD ( '123456' ); |
以上所述是小编给大家介绍的Mysql 5.7 忘记密码或重置密码的详细方法,希望对大家有所帮助。