Mysql
初始安裝後無法重置 MySQL 預設 root 密碼
我在 Red Hat Enterprise Linux 5.5 伺服器上安裝了 mysql 5.7,當我在安裝後嘗試執行以下命令時,它要求輸入 root@localhost 的密碼。
/usr/bin/mysql_secure_installation
我從未設置過 root 密碼,我以 root 使用者身份登錄 Linux。
然後我找到了以下用於重置 root 密碼的文件,並且也遵循了該文件。
https://dev.mysql.com/doc/refman/5.5/en/resetting-permissions.html
但即使在使用以下命令啟動伺服器後,它也會要求輸入密碼
/etc/init.d/mysqld start --skip-grant-tables &
我嘗試使用
init-file
選項啟動伺服器,但沒有成功。有誰知道如何正確重置密碼或預設 MySQL 密碼?
重新啟動服務而不進行身份驗證
Ubuntu/Debian
service mysql stop service mysql start --skip-grant-tables --skip-networking
其他系統
如果你在
sysv
Linux 上使用這個/etc/init.d/mysqld stop /etc/init.d/mysqld start --skip-grant-tables --skip-networking &
重置
然後你需要登錄為
root
mysql -u root -p
然後登錄時執行
FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
其他指南的區別
為了清楚起見,有很多“指南”,
- 一些指南使用較舊的
SET PASSWORD
語法,即 5-7.6 之前的語法,不要再使用了。- 有些指南根本不使用
--skip-networking
,這是不安全的。-u root
有些指南與更容易出錯的指南沒有聯繫。