温馨提示×

debian怎样重置mysqlroot

小樊
38
2026-10-01 21:43:29
栏目: 云计算

在 Debian 上重置 MySQL 的 root 密码,通常有以下几种常见场景。下面以 MySQL / MariaDB 为例说明(Debian 10/11/12 大多适用)。


方法一:使用 mysqladmin(如果你还记得旧密码)

mysqladmin -u root -p password '新密码'

输入旧密码后即可修改。


方法二:通过 MySQL 命令行修改(知道 root 密码)

mysql -u root -p

进入后执行:

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

方法三:忘记 root 密码(重置密码,最常用)

1. 停止 MySQL 服务

sudo systemctl stop mysql

(MariaDB 用 mariadb)


2. 以跳过权限方式启动

sudo mysqld_safe --skip-grant-tables --skip-networking &

如果提示 mysqld_safe 不存在,可直接用:

sudo mysqld --skip-grant-tables --skip-networking &

3. 无密码登录 MySQL

mysql -u root

4. 重置 root 密码

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

如果是老版本 MySQL:

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

5. 退出并重启 MySQL

exit
sudo systemctl restart mysql

方法四:Debian 使用 mysql 初始安全重置(新装系统)

如果你是刚安装完 MySQL:

sudo mysql_secure_installation

可设置 root 密码和安全选项。


常见问题

1. 登录报错 Access denied for user 'root'@'localhost'

通常是使用了 auth_socket 插件:

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

2. MariaDB 用户表不同

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

如果你能告诉我:

  • Debian 版本
  • MySQL 还是 MariaDB
  • 是否记得原密码

我可以给你更精确的一步一步命令。

0 踩