MySQL密码忘记重置密码

MySQL artisan 273℃ 0评论

1: 停止现有MySQL服务进程,之后重新开启跳过验证的MySQL服务。

# 停止现有服务
service mysqld stop ;

# mysqld --verbose --help 查看帮助,使用如下参数:
# --skip-grant-tables Start without grant tables. This gives all users FULL ACCESS to all tables.

# 开启无需验证的MySQL服务
mysqld  --skip-grant-tables   --user=mysql

2: 重新设置密码

mysql  -uroot -p # 直接回车即可登录,无需输入密码,之后设置密码。

设置密码,直接设置表密码字段:

USE mysql;

UPDATE user 
SET authentication_string = PASSWORD('root')
WHERE user = 'root' AND 
      host = 'localhost';

使用–skip-grant-tables参数启动,不支持使用如下设置密码方式:

# 方式1
mysql>  SET PASSWORD FOR 'dbadmin'@'localhost' = PASSWORD('newpasswd2');
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

# 方式2:
mysql>  ALTER USER dbadmin@localhost IDENTIFIED BY 'newpasswd3';
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement


3: 关闭 mysqld –skip-grant-tables –user=mysql 服务 重启启动登录即可。

service mysqld  start

备注:MySQL不同版本对密码强度要求不一样,可以按照要求设置。

转载请注明:Java工匠师 » MySQL密码忘记重置密码

喜欢 (5)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址