一、密码过期,修改密码

1.正常密码过期需要执行以下操作解决:
	(1)切换到超级用户 		    sudo su
	(2)使用原始密码登录mysql	sh-3.2# ./mysql -uroot -pxxxxx
	(3)mysql> show databases; 
		 注意:输入show databases会提示你密码过期,需要重新设置密码
		 如:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
	(4)SET PASSWORD = PASSWORD("XXXXX");  或 set authentication_string=password('XXXXX');
		 注意:新版本的mysql数据库mysql.user没有password字段,是authentication_string字段
	(5)刷新权限 flush privileges;
2.出现Unknown column 'password' in 'field list'
  原因:	因为新版本mysql采用authentication_string替代了password字段
  解决方案:	
    update mysql.user set authentication_string=password('root') where user='root' ;
	flush privileges;
	quit;

二、设置mysql密码永不过期

1.输入命令:mysql -uroot -p,回车;
2.提示输入密码时,输入原密码
3.修改原密码(若继续使用原密码无需此操作),输入命令:
	set password for root@localhost = password('XXXXXX');<请牢记新密码>
4.修改root密码永不过期,输入命令:
	alter user 'root'@'localhost' password expire never;	
5.刷新权限
	flush privileges;
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐