MySQL更改用户密码的四种方法

本文最后更新于:2020年11月15日 晚上

1. 用 set password 命令

需要先登录MySql

set password for 用户名@localhost = password('新密码')

2. 用update直接更新user表

需要先登录MySql

use mysql;
update user set password=password('新密码') where user='root' and host='localhost'; 
flush privileges; 

3. 用 mysqladmin 命令

mysqladmin -u用户名 -p旧密码 password 新密码 

4. 忘记root密码

windows:

  1. 停止MySQL服务 net stop mysql
  2. 管理员权限打开cmd窗口,到mysql\bin目录下(即mysqld.exe所在目录)
  3. 设置启动MySQL服务时跳过权限表认证 mysqld --skip-grant-tables (MySQL8.0.x版本使用 mysqld --console --skip-grant-tables --shared-memory
  4. 再开一个新的cmd窗口,同样转到mysql\bin目录。
  5. 输入mysql回车。
  6. 连接权限数据库: use mysql;
  7. 改密码:update user set password=password("新密码") where user="root";
  8. 刷新权限:flush privileges; 。
  9. 退出 quit;
  10. 此时如果无法登录就重启系统。

linux:

  1. 停止MySQL服务 service mysqld stop
  2. 修改mysql的配置文件my.conf(一般在/etc目录下) vi /etc/my.cnf
  3. 在文件的[mysqld]标签下添加一句: skip-grant-tables
  4. 然后wq保存退出
  5. 重启数据库service mysqld start
  6. 直接连数据库mysql -u root
  7. 连接权限数据库: use mysql;
  8. 改密码:update user set password=password("新密码") where user="root";
  9. 刷新权限:flush privileges; 。
  10. 退出 quit;
  11. 把第3步加的那句话去掉,然后重启mysql,然后就可以使用新密码登录了。

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!