0

I've seen a lot of questions about pre 1.6 Magento installations to the most recent version (at the current moment 1.7.0.2) but there are a lot of answers that don't work for everybody.

So below the answer to the question: How to upgrade Magento from a pre 1.6 installation to the most recent one.

4

1 回答 1

0

There are a lot of versions and not all of them are working. This one has worked for me for a lot of versions, as far as 1.3 to 1.7.

Please add comments with solutions to problems you're experiencing, I can update the answer so other people get help from this topic too!

What you need: - SUDO rights/root account on your server. - The linux package 'nohub' - make sure NOBODY can trigger the index.php. If your version supports maintenance.flag, put an empty maintenance.flag file in your Magento root.

Walkthrough

1) Download the latest Magento. Overwrite: ./download/* ./lib/* ./mage
2) Run these steps from you Magento root als SUDOer (if you're not root, put 'sudo' for all the commands)

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod -R 777  ./var
chmod 550 mage

3) Go to your Magento root folder and type:

./mage list-upgrades
./mage config-set preferred_state stable
./mage upgrade-all --force
./mage install http://connect20.magentocommerce.com/community Mage_All_Latest --force

4) Now there is the last step. Note: In some situations this process can take up to 8+ hours!

nohup php -f ./index.php 

Known issues

1) it's possible that your update gets in a loop. To find this loop, enable debugging.
Edit: /lib/Varien/Db/Adapter/Pdo/Mysql.php (+/- line 112 and 112)

protected $_debug               = true;
protected $_debuglogeverything  = true;

This will write a debug to: /var/debug/[debug_file]

2) Read the file by opening the dir:

cd /var/debug/[debug_file] <-- replace with the actual filename
tail -f [debug_file]

3) If you use debug, the file will get HUGE! Make sure you delete it once in a while.
Tip: as a root user, type:

crontab -e
*/5 * * * * rm /[my_magento_base_folder]/var/debug/[debug_file] <-- add this line

If you want to read the file, add a # to this line and use tail to read it.

These steps help you find common errors and loops (if the tail shows a repeating error message)

于 2013-02-28T13:16:28.437 回答