如果您在使用MySQL時,輸入正確的密碼卻無法登陸,可能會遇到以下兩種情況:
1. 您的密碼包含了特殊字符,導致輸入時被MySQL自動轉義
解決辦法:在輸入密碼時,使用“\”進行轉義,如:
mysql -u root -p'\!password'
2. 您的密碼長度超出了MySQL的限制
MySQL 5.7版本以下,密碼長度限制為16個字符; MySQL 5.7.6及以上版本,密碼長度限制為3072個字節
如果您的密碼超出了上述限制,則無法登陸。此時需要重置密碼,如:
1. 停止MySQL服務
2. 啟動跳過權限認證的模式
mysqld_safe --skip-grant-tables &
3. 連接MySQL
mysql -u root
4. 修改密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
5. 重新啟動MySQL服務
通過上述方法重置密碼后,應該可以正常登陸MySQL了。