SQLSTATE[28000] [1045] (Magento) Access denied for user .. (aber neue PDO, funktioniert in der test-Programm)

Kopierte ich einen Magento-Shop zu einem anderen provider und die Datenbank installiert. Nichts besonderes.

Mit testen immer dieser Fehler auf den mysql-Datenbank:

SQLSTATE[28000] [1045] Access denied for user xx’@’localhost (using password: YES)

Fand ich dieses Programm /httpdocs/lib/Zend/Db/Adapter/Pdo/Abstract.php und hat diese Aussage:

try { 
    $this->_connection = new PDO( 
    $dsn, 
    $this->_config[’username’], 
    $this->_config[’password’], 
    $this->_config[’driver_options’] 
); 

Nutzen, wenn ich die gleiche Aussage mit den gleichen Einstellungen in einem kurzen test Programm auf dem gleichen server, die Verbindung funktioniert.

Wie ist das möglich? Gibt es etwas, das im PDO verschiedenen arbeiten, während die genannten in Magento?

Ich vergaß zu schreiben, hat diese domain nur eine gemeinsame IP-Adresse und den domain-Namen (aber keine DNS noch), so dass ich gepaart diese IP-Adresse zu diesem domain-Namen in der windows hosts-Datei. Also domain www.xxxx.com im internet existiert bereits, ich benutze xxxx.com in windows host-Datei gekoppelt, um die gemeinsame IP-Adresse. Auf diese Weise testete ich immer wieder neue websites, ohne eine domain übertragen noch.

Wenn ich kopiere alles auf meinem eigenen server (localhost.com für Magento), habe ich, um es zu finden, alles funktioniert gut. So, es hat etwas zu tun mit der situation an meinem provider ... aber warum ist es in meiner eigenen test-Programm für PDO mit den gleichen Einstellungen???

$dsn = mysql:Modell=mysql4;initStatements=SET NAMES utf8;type=pdo_mysql;host=localhost;dbname=xxxx;active=1

  • Sind Sie sicher, dass die gespeicherten Einstellungen in der config sind richtig. Diese werden gespeichert in app/etc/local.xml
  • Ja, weil wenn ich den debug-ich finde Sie in der _config variable, die ein seltsames problem ..
  • Was ist in $dsn? Enthält es alle unix_socket params?
  • versuchen Sie, löschen jede opcode-caches (APC) oder Schlüssel-Wert-caches (wie Memcache oder Redis).
  • Sie finden $dsn oben, ja cache ist gelöscht
InformationsquelleAutor Francois99 | 2012-03-11
Schreibe einen Kommentar