2012-06-21 2 views
2

Я уже несколько часов пытаюсь переместить нашу установку Magento из Dev в live. Я нашел несколько ссылок в Интернете, в которых говорится, что для перемещения Magento Installation вам нужно отредактировать /app/etc/local.xml и обновить его новыми учетными данными MySQL, а затем удалить содержимое /var/cache/ (некоторые даже предложили удалить всю папку /var. Я также удалил содержимое /var/session/ Наш сервер НЕ кэширован (не memcached, лак и т. д.). Я даже перезапустил apache, чтобы проверить, могу ли я очистить любой кеш, который может быть запущен.Перемещение Magento Установка на новый сервер

Таким образом, проблема заключается в том, что наша установка Magento по-прежнему пытается подключиться к старой базе данных. Нам дана эта ошибка:

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

Если у кого-то есть идеи по устранению этого я еще не упомянул, что это будет очень признательно.

EDIT:

Вот трассировки стека, что Magento также сообщает:

Trace: 
#0 fileroot/lib/Zend/Db/Adapter/Pdo/Mysql.php(96): Zend_Db_Adapter_Pdo_Abstract->_connect() 
#1 fileroot/lib/Varien/Db/Adapter/Pdo/Mysql.php(300): Zend_Db_Adapter_Pdo_Mysql->_connect() 
#2 fileroot/lib/Zend/Db/Adapter/Abstract.php(459): Varien_Db_Adapter_Pdo_Mysql->_connect() 
#3 fileroot/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('SET NAMES utf8', Array) 
#4 fileroot/lib/Varien/Db/Adapter/Pdo/Mysql.php(389): Zend_Db_Adapter_Pdo_Abstract->query('SET NAMES utf8', Array) 
#5 fileroot/app/code/core/Mage/Core/Model/Resource.php(169): Varien_Db_Adapter_Pdo_Mysql->query('SET NAMES utf8') 
#6 fileroot/app/code/core/Mage/Core/Model/Resource.php(110): Mage_Core_Model_Resource->_newConnection('pdo_mysql', Object(Mage_Core_Model_Config_Element)) 
#7 fileroot/app/code/core/Mage/Core/Model/Resource/Db/Abstract.php(320): Mage_Core_Model_Resource->getConnection('core_read') 
#8 fileroot/app/code/core/Mage/Core/Model/Resource/Db/Abstract.php(335): Mage_Core_Model_Resource_Db_Abstract->_getConnection('read') 
#9 fileroot/app/code/core/Mage/Core/Model/Resource/Cache.php(53): Mage_Core_Model_Resource_Db_Abstract->_getReadAdapter() 
#10 fileroot/app/code/core/Mage/Core/Model/Cache.php(449): Mage_Core_Model_Resource_Cache->getAllOptions() 
#11 fileroot/app/code/core/Mage/Core/Model/Cache.php(491): Mage_Core_Model_Cache->_initOptions() 
#12 fileroot/app/code/core/Mage/Core/Model/App.php(1175): Mage_Core_Model_Cache->canUse('config') 
#13 fileroot/app/code/core/Mage/Core/Model/Config.php(414): Mage_Core_Model_App->useCache('config') 
#14 fileroot/app/code/core/Mage/Core/Model/Config.php(294): Mage_Core_Model_Config->_canUseCacheForInit() 
#15 fileroot/app/code/core/Mage/Core/Model/App.php(408): Mage_Core_Model_Config->loadModulesCache() 
#16 fileroot/app/code/core/Mage/Core/Model/App.php(338): Mage_Core_Model_App->_initModules() 
#17 fileroot/app/Mage.php(640): Mage_Core_Model_App->run(Array) 
#18 fileroot/index.php(80): Mage::run('', 'store') 
#19 {main} 

ответ

11

Я понял это.

Когда я привез установки Dev жить я скопировал local.xml в local_bk.xml я обнаружил, что Magento будет пытаться автозагрузку ВСЕ XML-файлы в папке /app/etc/ поэтому пытается загрузить мой резервную копию файла, только я переименовал мой резервное копирование на то, что не заканчивалось на .xml, сработало.

+0

Это была моя ошибка, спасибо, спасибо! –

+0

Dood, вы рок - я собирался начать взламывать ядро ​​:) – Jongosi

0

Правильный путь

app/etc/local.xml 

вместо:

etc/app/local.xml 

ли это решить вашу проблему?

+0

О, это была ошибка с моей стороны .. это файл, который я редактировал. Я отредактирую свой вопрос. – Peter

+0

Если у вас есть доступ к командной строке, найдите базу кода для старого имени пользователя: find. -exec grep -n -i --color = auto 'oldDBUsername' '{}' \; -print –

+0

Я думаю, что вы на что-то используете grep .. однако эта команда не работает. Я получаю a: grep: {}: Нет такого файла или каталога grep:;: Нет такого файла или каталога grep: print: Нет такого файла или каталога – Peter

-1

В вашей папке magento вам необходимо отредактировать приложение/etc/local.xml, как упоминал Гершон.

Вы также должны root или sudo удалить все файлы и каталоги в var/cache вашей magento, создаваемые magento.

2

Когда вы устанавливаете magento, вам нужно выбрать, будут ли храниться данные кэша и сеанса в файловой системе или db.

Это может быть следующая строка в local.xml, на данный момент не помню.

<session_save><![CDATA[files]]></session_save> 

Если вы используете db, то он хранит данные в таблице core_cache, возможно, в базе данных.

Посмотрите, являются ли ваши таблицы кэша db пустыми, если они не усекают их.

Вам также потребуется обновить свою базу URL как безопасные, так и небезопасным в core_config_data

увидеть следующее для SQL, чтобы сделать изменение

http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/update_site_url_in_core_config_data

0

Ваш ответ спас меня! Я потратил много времени на эту проблему и только наткнулся на этот ответ. Обычно я копирую и вставляю для поиска ошибки, поэтому я хотел бы дать больше фактической ошибки, чтобы другие могли извлечь выгоду.

Я назвал свой файл local.xml local.bak, и именно там была моя ошибка. Сравнение со всеми файлами работающего экземпляра Magento дало только дополнительный файл.

Ошибка привела меня к мысли, что, возможно, mySQL был проблемой, но это не имело к этому никакого отношения. Возможно, кто-то может опубликовать журнал или метод, который показывает, какой файл фактически используется. Я не видел никаких уведомлений, записанных в журнал.

Вот еще ошибок, за исключением ничего сайт конкретен:

"SQLSTATE[HY000] [1045] Access denied for user '*myuser*'@'localhost' (using password: YES) /lib/Zend/Db/Adapter/Pdo/Mysql.php(111): Zend_Db_Adapter_Pdo_Abstract->_connect() 
0

Также меняющимся мои имен файлов в app/etc/ удалении .xml в средней работала для меня:

local.xml.template до local.template и local.xml.additional до local.additional

Спасибо @Peter.

Смежные вопросы