Copié au serveur local WAMP, Exception: SQLSTATE [HY000] [1 045] Accès refusé pour l'utilisateur
Question
J'avais un site web à http://www.avantalarm.com/ et après de nombreuses questions en essayant d'ajouter des modules, j'ai décidé je l'exporter vers un serveur WAMP local pour travailler sur mon développement, donc je ne l'ai pas briser le site tout en essayant de choses à comprendre. Je suis très nouveau pour Magento et pensé que ce serait la meilleure façon de le faire. Après avoir exporté sur mon serveur WAMP via FTP, j'ai remarqué que lorsque vous essayez de vous connecter à Admin ou ouvrir la page d'accueil que je reçois
There has been an error processing your request
Exception printing is disabled by default for security reasons.
Error log record number: 1489781624
En regardant le rapport d'erreur dans var / rapport / révèle ce code.
a:5:{i:0;s:96:"SQLSTATE[HY000] [1045] Access denied for user 'avant_jonathan'@'localhost' (using password: YES)";i:1;s:1302:"#0 C:\wamp\www\includes\src\__default.php(53987): Zend_Db_Adapter_Pdo_Abstract->_connect()
#1 C:\wamp\www\includes\src\__default.php(54460): Zend_Db_Adapter_Pdo_Mysql->_connect()
#2 C:\wamp\www\includes\src\__default.php(52674): Varien_Db_Adapter_Pdo_Mysql->_connect()
#3 C:\wamp\www\includes\src\__default.php(53730): Zend_Db_Adapter_Abstract->query('SET NAMES utf8', Array)
#4 C:\wamp\www\includes\src\__default.php(54566): Zend_Db_Adapter_Pdo_Abstract->query('SET NAMES utf8', Array)
#5 C:\wamp\www\includes\src\__default.php(29302): Varien_Db_Adapter_Pdo_Mysql->query('SET NAMES utf8')
#6 C:\wamp\www\includes\src\__default.php(29243): Mage_Core_Model_Resource->_newConnection('pdo_mysql', Object(Mage_Core_Model_Config_Element))
#7 C:\wamp\www\includes\src\Mage_Core_Model_Resource_Setup.php(141): Mage_Core_Model_Resource->getConnection('core_setup')
#8 C:\wamp\www\includes\src\Mage_Core_Model_Resource_Setup.php(234): Mage_Core_Model_Resource_Setup->__construct('core_setup')
#9 C:\wamp\www\includes\src\__default.php(20124): Mage_Core_Model_Resource_Setup::applyAllUpdates()
#10 C:\wamp\www\includes\src\__default.php(20050): Mage_Core_Model_App->_initModules()
#11 C:\wamp\www\app\Mage.php(683): Mage_Core_Model_App->run(Array)
#12 C:\wamp\www\index.php(87): Mage::run('', 'store')
#13 {main}";s:3:"url";s:6:"/admin";s:11:"script_name";s:10:"/index.php";s:4:"skin";s:7:"default";}
Je me demande si a) des fichiers ou des modules plus anciens de mon ancien serveur WAMP sont à l'origine de l'erreur ou b) tous les fichiers copiés correctement. Si quelqu'un peut aider et même me aider à comprendre comment peut-lire ce rapport, qui serait très apprécié. Ceci est aussi une de mes premières questions sur StackExchange si je peux reformuler ou ajouter à ma question me savoir, je suis heureux d'apprendre comment être un membre à part ici que je sais que ce sera une ressource précieuse.
Merci à l'avance!
La solution
Ces rapports d'erreur sont stockés au format sérialisé de PHP - vous pouvez les unserialize avec le code qui ressemble à ceci
$contents = file_get_contents('path/to/report');
$thing = unserialize($contents);
var_dump($thing);
Si vous faites cela, vous obtiendrez les objets cassés sur dans un tableau, ce qui rend un peu plus facile à lire
array(5) {
[0] =>
string(96) "SQLSTATE[HY000] [1045] Access denied for user \'avant_jonathan\'@\'localhost\' (using password: YES)"
[1] =>
string(1302) "#0 C:\\wamp\\www\\includes\\src\\__default.php(53987): Zend_Db_Adapter_Pdo_Abstract->_connect()\n#1 C:\\wamp\\www\\includes\\src\\__default.php(54460): Zend_Db_Adapter_Pdo_Mysql->_connect()\n#2 C:\\wamp\\www\\includes\\src\\__default.php(52674): Varien_Db_Adapter_Pdo_Mysql->_connect()\n#3 C:\\wamp\\www\\includes\\src\\__default.php(53730): Zend_Db_Adapter_Abstract->query(\'SET NAMES utf8\', Array)\n#4 C:\\wamp\\www\\includes\\src\\__default.php(54566): Zend_Db_Adapter_Pdo_Abstract->query(\'SET NAMES utf8\',"...
'url' =>
string(6) "/admin"
'script_name' =>
string(10) "/index.php"
'skin' =>
string(7) "default"
}
Ainsi, en utilisant ce qui précède, votre message d'erreur (le premier index du tableau) est
SQLSTATE [HY000] [1 045] Accès refusé pour l'utilisateur \ 'avant_jonathan \' @ \ 'localhost \' (en utilisant le mot de passe: OUI)
PHP vous dit qu'il ne peut pas accéder à la base de données avec les informations configurées.
Ouvrez
app/etc/local.xml
et recherchez la section suivante
<connection>
<host><![CDATA[localhost]]></host>
<username><![CDATA[avant_jonathan]]></username>
<password><![CDATA[XXXXXXXXXX]]></password>
<dbname><![CDATA[magento]]></dbname>
<initStatements><![CDATA[SET NAMES utf8]]></initStatements>
<model><![CDATA[mysql4]]></model>
<type><![CDATA[pdo_mysql]]></type>
<pdoType><![CDATA[]]></pdoType>
<active>1</active>
</connection>
Modifier la host
, username
et password
pour correspondre à vos paramètres locaux.
Pour Magento pour voir vos modifications, vous devrez effacer tous les fichiers de /path/to/magento/var/cache/*
, comme Magento met en cache le contenu local.xml
là.
Recharger votre page d'accueil (ou une page à l'exception du rapport d'erreur page) et vous devriez être bon d'aller. (Ou, bon pour passer à l'exception suivante)
Autres conseils
Ceci est une erreur de MySQL vous dire que le avant_jonathan
utilisateur MySQL ne peut pas se connecter à la base de données en utilisant le mot de passe fourni sur localhost
.
- Vérifiez les paramètres de
/app/etc/local.xml
- est le nom d'utilisateur MySQL / mot de passe / hôte correct - Avez-vous copier la base de données à votre environnement WAMP locale aussi?