如果您使用mysql命令安裝MySQL數據庫,并且在安裝過程中沒有設置密碼,則可能會遇到默認密碼無法登錄的問題。這是因為MySQL在安裝完成后,默認會為root用戶設置一個空密碼,而在最新版本的MySQL中,空密碼已經不再被支持。
因此,在使用mysql命令登錄MySQL數據庫時,如果您未設置MySQL密碼,則會收到類似以下的錯誤提示:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
這個錯誤提示表明,由于未提供密碼,MySQL拒絕了您的登錄請求。
如果您遇到了默認密碼錯誤的問題,可以按照以下步驟來解決:
- 停止MySQL服務。
- 以跳過授權表的方式啟動MySQL服務。可以使用以下命令啟動MySQL:
$ sudo mysqld_safe --skip-grant-tables &
此時,MySQL服務已經啟動,并且跳過了授權表,因此您可以使用root用戶登錄MySQL。
- 使用以下命令登錄MySQL:
$ mysql -u root
此時,您應該已經成功登錄MySQL。
- 更新root用戶密碼:
mysql>UPDATE mysql.user SET authentication_string=PASSWORD('newpassword') WHERE User='root'; mysql>FLUSH PRIVILEGES;
此命令將為root用戶設置新密碼。請將“newpassword”替換為您想要設置的實際密碼。
- 重新啟動MySQL服務。
$ sudo service mysql restart
現在,您已經成功修改了root用戶的密碼,并且可以使用新密碼登錄MySQL。