在上篇文章给大家介绍了Mysql5.7忘记root密码及mysql5.7修改root密码的方法
Mysql5.7忘记密码快速且简单的解决方法,具体方法详情如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
# 最简单最粗暴的方法 找到mysql的配置文件直接编辑
vim /etc/my.cnf
# 在 [mysqld] 中加上一行跳过权限限制
skip- grant -tables
# 保存退出 重启mysql服务
service mysqld restart
# 用户登录
mysql -uroot -p (直接点击回车,密码为空)
# 选择数据库
use mysql;
# 但是在5.7版本中不存在 password 字段,所有我们要用以下修改进行重置密码
update user set authentication_string= password ( 'new password' ) where user = 'root' ;
# 刷新权限
flush privileges ;
# 退出mysql
quit;
# 将最开始修改的配置文件my.cnf中的skip- grant -tables删除 重启mysql
service mysqld restart
# 当你登陆mysql之后你会发现,当你执行命令时会出现
ERROR 1820 (HY000): You must reset your password using ALTER USER statement;
# 这是提示你需要修改密码 当你执行了
SET PASSWORD = PASSWORD ( 'root' );
# 如果出现
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
# 你需要执行两个参数来把mysql默认的密码强度的取消了才行 当然也可以把你的密码复杂度提高也行啊
set global validate_password_policy=0;
set global validate_password_mixed_case_count=2;
# 这时你再执行 就ok了
SET PASSWORD = PASSWORD ( 'root' );
# 下面再说一下mysql中的字符集的问题
show variables like "%character%" ;
# 出现如下情况 可以忽略…………
+ --------------------------+----------------------------+
| Variable_name | Value |
+ --------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+ --------------------------+----------------------------+
#找到mysql的配置文件 加上几句话就ok 在mysqld下面加上
character - set -server=utf8
collation-server=utf8_general_ci
# 在client下面加上
default - character - set =utf8
|
以上所述是小编给大家介绍的Mysql5.7忘记root密码怎么办(简单且有效方法),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!