# CentOS MySQL忘記密碼怎么解決
## 前言
在使用CentOS系統運行MySQL數據庫時,管理員可能會遇到忘記root密碼的情況。本文將詳細介紹在CentOS 7/8系統上重置MySQL/MariaDB root密碼的完整步驟,涵蓋多種常見場景和注意事項。
---
## 方法一:使用--skip-grant-tables模式重置密碼
### 步驟1:停止MySQL服務
```bash
systemctl stop mysqld
mysqld_safe --skip-grant-tables &
mysql -u root
UPDATE mysql.user SET authentication_string=PASSWORD('新密碼') WHERE User='root';
FLUSH PRIVILEGES;
systemctl restart mysqld
echo "ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';" > /tmp/mysql-init
systemctl stop mysqld
mysqld --init-file=/tmp/mysql-init &
rm -f /tmp/mysql-init
systemctl stop mariadb
mysqld_safe --skip-grant-tables --skip-networking &
UPDATE mysql.user SET password=PASSWORD('new_password') WHERE User='root';
--skip-grant-tables
模式啟動FLUSH PRIVILEGES
SET GLOBAL validate_password_policy=LOW;
檢查用戶host權限:
SELECT Host,User FROM mysql.user;
UPDATE mysql.user SET Host='%' WHERE User='root';
版本 | 密碼字段名 |
---|---|
MySQL 5.6 | password |
MySQL 5.7+ | authentication_string |
MariaDB | password |
注意事項:
1. 生產環境操作前建議備份數據庫
2. 操作完成后應立即恢復服務正常啟動模式
3. 密碼修改后需更新相關應用配置
通過以上方法,您應該能夠成功重置CentOS系統上MySQL/MariaDB的root密碼。如仍遇到問題,建議查看MySQL錯誤日志獲取更多信息:
tail -f /var/log/mysqld.log
”`
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。