2013-03-06 24 views
3

崩潰服務器後,我們有一個奇怪的錯誤與我們的數據庫...SQLSTATE [28000] [1045]:服務器提供商崩潰後奇怪的PDO錯誤

密碼和用戶正確的,我們用一個簡單的PDO連接:

session_start(); 
ini_set('display_errors', 1); 
ini_set('log_errors', 1); 
try 
{ 
    $bdd = new PDO('mysql:host=localhost;dbname=databaseName', 'correctUSER','correctPassword'); 
    die('ok'); 
} 
catch(Exception $e)`enter code here` 
{ 
    die('Erreur : '.$e->getMessage()); 
} 

但是我們有一個: 「錯誤:SQLSTATE [28000] [1045]訪問被拒絕的用戶 'correctUSER' @ 'localhost' 的(使用密碼:YES)」?

我們嘗試刪除,重新創建數據庫和用戶,但我們總是有問題,很奇怪的是,如果我們嘗試我們的root用戶=>它的工作原理,但它不是安全使用root密碼...

任何人都有解決方案?

謝謝!

+0

卸下模具( 'OK');走着瞧吧。 – 2013-03-06 22:48:53

+3

所以,你用'GRANT'創建了一個新用戶,刷新了權限等。在這種情況下,檢查mysql錯誤日誌,檢查'mysql_upgrade --force'的作用,可能嘗試'REPAIR TABLE mysql.user'等。 – Wrikken 2013-03-06 22:51:20

回答

0

這是與MySQL錯誤,我必須做出

REPAIR TABLE mysql.user

-1

這個錯誤沒有什麼奇怪的。答案非常簡單明瞭。

密碼和用戶正確

正如你可以從下面的錯誤信息看,你的這種說法是不正確的。
所以,要解決這個問題,你必須提供正確的用戶名和密碼。

也只是一個方面的說明:從你的代碼中刪除那個try-catch-die東西。這是完全無用的,多餘的和不安全的。

+0

不是那麼簡單! 我們找到了解決方案,我們必須刪除具有%訪問權的匿名用戶(=>這是服務器崩潰時的錯誤) – injetkilo 2013-03-08 16:12:01