在網上先找了一些辦法:
- C:\>mysql -u root -p
- Enter password: ******
- Welcome to the MySQL monitor. Commands
end with ;
or \g.
- Your MySQL connection id is 2
- Server version: 5.1.22-rc-community-log MySQL Community Server (GPL)
-
- Type 'help;' or
'\h' for help. Type
'\c' to clear the buffer.
-
- mysql> grant all
privileges on *.*
to 'username'@'%' identified
by'password';
- Query OK, 0 rows affected (0.05 sec)
-
- mysql> flush privileges;
- Query OK, 0 rows affected (0.06 sec)
-
- mysql> exit
- Bye
C:\>mysql -u root -p Enter password: ****** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.1.22-rc-community-log MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> grant all privileges on *.* to 'username'@'%' identified by'password'; Query OK, 0 rows affected (0.05 sec) mysql> flush privileges; Query OK, 0 rows affected (0.06 sec) mysql> exit Bye
更好的解決還是更改使用者名稱,不要用root為善。
錯誤碼 1045
Access denied for user 'root'@'localhost' (using password:YES)
如果你的mysql也出現以上這種提示, 建議你逐個字看完我這篇文章再按以下方法來嘗試解決問題.
這是mysql資料庫很多時候出現的問題, 網上流傳很多解決辦法. 有人按照那些方法, 還真可以把問題解決了; 但也有很多人按那些方法解決不了問題! 而這箇中原因, 就是沒有對症下藥!!!
網上的那些方法, 很多都沒有明確指出是什麼版本的mysql, 所以導致問題者不能對症下藥.
出現這個問題, 通過停止/重啟 mysql 服務, 是可以解決的, 這個是最簡單的辦法! 對於不懂得什麼叫做"停止/重啟mysql服務"的人來說, 這個最簡單的辦法就是把伺服器主機進行重新啟動(就是把你的電腦進行重新啟動).
以上是方法A! (這個方法適合任何版本的mysql)
以下是方法B:(方法僅適用於MySQL4.0.26 版本!!! (我估計, 4.0的其他版本應該也可以的))
網上也有說, 就是對root進行重改密碼. 對於網上流傳的改密碼方法, 也是可行的. 請參考以下:
DOS下修改ROOT密碼:當然後面安裝PHPMYADMIN後修改密碼也可以通過PHPMYADMIN修改
格式:mysqladmin -u使用者名稱 -p舊密碼 password 新密碼
例:給root加個密碼ideacmblog
首先在進入CMD命令列,轉到MYSQL目錄下的bin目錄,然後鍵入以下命令
mysqladmin -uroot password ideacmblog
註:因為開始時root沒有密碼,所以-p舊密碼一項就可以省略了。
D:\php\MySQL\bin>mysqladmin -uroot password ideacmblog斷行符號後ROOT密碼就設定為ideacmblog了
但是, 請注意了, 以上方法僅適用於MySQL4.0.26 版本!!! (我估計, 4.0的其他版本應該也可以的)
方法C:
好了, 扯了那麼多, 以上的兩個方法都不是我本人測試過的, 本人不對真實性負責!
而現在我說一下本人親自試過的方法, 以供參考:
話說今天, 我的伺服器所有php及使用了mysql資料庫的網站, 均掛掉了! 無法開啟, 並有以下提示:
錯誤碼 1045
Access denied for user 'root'@'localhost' (using password:YES)
一開始我也是不斷搜尋google(我本人不喜歡百度!), 去找尋解決的辦法. 看了很多, 也參照執行了, 事實上也是解決不了問題. 後來我想到了是版本的問題, 不同的mysql版本, 解決辦法是不一定一樣的!!記住...
我的mysql版本是: 5.0.22 (mysql-essential-5.0.22-win32)
今天一整天, 那些php網站均罷工. 到今晚才有時間上去伺服器繼續尋找方法, 但仍然解決不了.
最後, 我決定把mysql卸掉重新安裝!
卸載很快, 而且不需要重新啟動電腦.
於是, 繼續進行安裝.
第一步: 開啟這個mysql-essential-5.0.22-win32.exe檔案;
第二步: 見到視窗彈出, 並點擊 Next> 進入下一步;
第三步: 選擇 Custom 項, 並點擊
Next> 進入下一步;
第四步: 到這一步要注意了, 點擊 Change... 選擇你原安裝mysql的目錄; 選擇後, 繼續點擊Next> 進入下一步;
第五步: 點擊 Install 進行安裝...
安裝至下一步, 會提示你進行註冊, 選擇最後一項, 即跳過註冊, 進入下一步正式完成安裝.
安裝完成後, 繼續彈出一個視窗, 提示你是不是立刻進行配置, 選擇 Next
選擇Standard Configuration.繼續點擊 Next 進入下一步
這一步裡, 把上面那行的勾去掉, 只在 Include ....PATH 那行打勾, 繼續點擊 Next 進入下一步
在這一步, 點擊中間的"Ex****"那頂, 接著配置完畢!
這時候, 你去看看你的mysql正常了沒有?? !!
這樣就ok了!!!
幾個可能:
1. 使用者名稱、密碼錯誤,所以無法訪問
2. 資料庫端設定了IP存取權限,不能用localhost訪問。換成具體的IP地址試試。
3. 資料庫端設定了相關操作許可權,該使用者沒有create許可權。
其實呢,這個可能是因為沒有注意到安裝mysql的時候,沒有設定一些密碼:
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h istore01 password 'new-password'
Alternatively you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
只要將紅色部分執行一下就好了,也就是重新設定一下密碼,在網上找了很多辦法 ,都不管用,看來以後安裝軟體的時候不是仔細點比較好