天天看點

Access denied for user 'root'@'localhost' to database

今天使用mysql時遇到:Access denied for user 'root'@'localhost' to database

注意在此時輸入show databases;隻顯示了兩個庫,沒有"mysql"庫。

原因是:此時使用者使用的是匿名登入,權限不對,是以"mysql"資料庫找不到了。

網上流傳的解決方案為:

關閉mysql:

# service mysqld stop

然後:

# mysqld_safe --skip-grant-tables

啟動mysql

# service mysqld start

在windows下親測無效,這些指令是Linux下指令。

那麼對應的windows下解決方案:

關閉服務:

net stop mysql

修改權限:

mysqld-nt --skip-grant-tables

開啟服務:

net start mysql

此處如果報"'mysqld-nt'不是内部或外部指令"

就是環境變量問題,将mysql安裝目錄的bin目錄添加到環境變量,具體方式不綴述。

在部落客機子上的目錄為"C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin"。

留意一下會發現,該目錄下有mysqld-nt.exe。