温馨提示×

ubuntu mysql怎么改密码

小樊
46
2026-09-12 23:44:01
栏目: 云计算

在 Ubuntu 上修改 MySQL 密码,常见有几种情况,下面按最常用、最安全的方式给你说明。


一、如果你知道原密码(推荐方式)

1. 登录 MySQL

mysql -u root -p

输入当前 root 密码。

2. 修改密码(MySQL 5.7 / 8.0 通用)

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';

或者(MySQL 8.0 推荐):

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

3. 刷新权限

FLUSH PRIVILEGES;
EXIT;

二、如果你忘记了 root 密码

1. 停止 MySQL

sudo systemctl stop mysql

2. 以安全模式启动

sudo mysqld_safe --skip-grant-tables &

3. 无密码登录

mysql -u root

4. 修改密码

FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

如果是老版本:

UPDATE mysql.user SET authentication_string=PASSWORD('新密码') WHERE User='root';

5. 退出并重启 MySQL

EXIT;
sudo systemctl restart mysql

三、Ubuntu 使用 auth_socket 的情况(常见坑)

Ubuntu 默认 root 可能用 auth_socket,不能直接用密码登录。

查看:

SELECT user, host, plugin FROM mysql.user;

如果是 auth_socket,改回密码登录:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';

四、修改普通用户密码

ALTER USER '用户名'@'localhost' IDENTIFIED BY '新密码';

如果你告诉我:

  • MySQL 版本(mysql -V
  • 是 root 还是普通用户
  • 是否能登录

我可以给你精确命令

0