温馨提示×

ubuntu mysql怎么重置密码

小樊
42
2026-10-12 21:00:35
栏目: 云计算

在 Ubuntu 上重置 MySQL(或 MariaDB)密码,通常步骤如下。根据你的 MySQL 版本 和 是否能登录 情况选择对应方法。


一、能登录 MySQL(记得旧密码)

如果你还能用 root 登录:

mysql -u root -p

执行:

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

二、忘记 root 密码(最常用方法)

1. 停止 MySQL 服务

sudo systemctl stop mysql

(如果是 MariaDB:sudo systemctl stop mariadb)


2. 以安全模式启动 MySQL

sudo mysqld_safe --skip-grant-tables &

或(Ubuntu 20.04+):

sudo mkdir -p /var/run/mysqld
sudo chown mysql:mysql /var/run/mysqld
sudo mysqld --skip-grant-tables &

3. 无密码登录 MySQL

mysql -u root

4. 重置密码

FLUSH PRIVILEGES;

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

如果是 MySQL 5.7 以下:

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

5. 退出并重启 MySQL

exit
sudo systemctl restart mysql

三、Ubuntu + MySQL 8 特殊情况

如果 ALTER USER 报错:

CREATE USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

四、验证

mysql -u root -p

如果你告诉我:

  • Ubuntu 版本
  • MySQL / MariaDB 版本
  • 报错信息

我可以给你更精确的一步步操作。

0 踩