环境:
Centos 6.5 mysql5.7
一、mysql5.7 密码过期问题
报错:
ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supports expired passwords.
翻译:
错误1862(HY000):你的密码已经过期。登录必须改变它使用一个客户端,支持过期的密码。
解决方法:
1、 用忽略授权表的方法进入mysql
1
2
3
4
|
vi /etc/my.cnf
[mysqld]
skip-
grant
-tables
:wq! #保存退出
|
2、进入mysql,查看root用户的详细信息
1
2
3
|
# mysql -u root -p
> use mysql
>
select
*
from
mysql.
user
where
user
=
'root'
\G
|
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
|
*************************** 1. row ***************************
Host: localhost
User
: root
Select_priv: Y
Insert_priv: Y
Update_priv: Y
Delete_priv: Y
Create_priv: Y
Drop_priv: Y
Reload_priv: Y
Shutdown_priv: Y
Process_priv: Y
File_priv: Y
Grant_priv: Y
References_priv: Y
Index_priv: Y
Alter_priv: Y
Show_db_priv: Y
Super_priv: Y
Create_tmp_table_priv: Y
Lock_tables_priv: Y
Execute_priv: Y
Repl_slave_priv: Y
Repl_client_priv: Y
Create_view_priv: Y
Show_view_priv: Y
Create_routine_priv: Y
Alter_routine_priv: Y
Create_user_priv: Y
Event_priv: Y
Trigger_priv: Y
Create_tablespace_priv: Y
ssl_type:
ssl_cipher:
x509_issuer:
x509_subject:
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
plugin: mysql_native_password
authentication_string: *AC241830FFDDC8943AB31CBD47D758E79F7953EA
password_expired: N
password_last_changed: 2015-11-11 16:52:49
password_lifetime:
NULL
account_locked: N
1 row
in
set
(0.00 sec)
|
3、把password_expired 改成不过期
1
2
3
|
>
update
user
set
password_expired=
'N'
where
user
=
'root'
;
> flush
privileges
;
> quit
|
4、把 /etc/my.cnf 的 skip-grant-tables 这行注释掉
5、重启服务
1
|
#service mysql restart
|
6、再次登陆 mysql 就正常了
转自:http://blog.51cto.com/dahui09/1775501