在 CentOS + LAMP(Linux + Apache + MySQL/MariaDB + PHP) 环境下,“重置密码”通常分为 3 种常见情况。下面分别说明:
适用于:忘记服务器登录密码(SSH / 控制台)
elinux16 或 linux 行,在末尾添加:init=/bin/bash
Ctrl + X 启动mount -o remount,rw /
passwd root
exec /sbin/init
或reboot
适用于:忘记数据库 root 密码
systemctl stop mariadb
# 或
systemctl stop mysqld
mysqld_safe --skip-grant-tables &
或
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
systemctl start mariadb
mysql -u root
MySQL 5.7+ / MariaDB 10.2+
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
老版本
UPDATE mysql.user SET Password=PASSWORD('NewPassword') WHERE User='root';
FLUSH PRIVILEGES;
systemctl restart mariadb
如果你是 LAMP 搭建的网站(如 WordPress、Discuz、自建系统):
mysql -u root -p
use wordpress;
UPDATE wp_users SET user_pass = MD5('newpassword') WHERE user_login='admin';
如果是自建系统,一般直接改数据库用户表即可。
请告诉我:
我可以直接给你精确步骤。