1

Magento を新しいバージョンにアップグレードするための事実上の標準的な方法があるとすれば、それは何ですか。

多くの変数が作用していることはわかっています。しかし、必ず従わなければならない一連の標準的な手順が必要です。

これまでのところ、次のようになると思います。

Create a mirror of the site
Disable all 3rd party modules
Do the upgrade
Fix any issues
Enable 3rd party modules
Fix any issues

しかし、このプロセスを経て、ここで何をすべきかについての経験を持っている他の人の話を聞くことに興味があります.

4

1 に答える 1

0

私たちのデータベースは約10ギガで、約800,000の「製品」があります(それらの多くは実際にはバンドル製品のオプションですが、ほとんどの場合同じものになります)。したがって、これは必要ないかもしれません...数週間前に1.9から1.12にアップグレードしました。途中で悪いデータを修正しなければならないドレスリハーサルを何度も行いました。

  1. サーバーにアクセスできるのはあなただけであることを確認してください。たとえば、apacheに奇妙なポートでリッスンさせます。
  2. 1.9から1.12へのアップグレードには約3.5時間かかりましたので、それに応じてタイムアウトを延長してください。

一意の外部キーチェックをオフにするために、いくつかのコアファイルを変更する必要がありました。config.xmlまたはlocal.xmlを変更することでこれを実行できるはずですが、これは機能しませんでした。

./app/code/core/Mage/Core/Model/Resource/Type/Db/Pdo/Mysql.php:

$configArr['initStatements'] = 'SET NAMES utf8; SET FOREIGN_KEY_CHECKS=0; SET UNIQUE_CHECKS=0;';

./app/code/core/Mage/Core/Model/Resource/Type/Db/Mysqli.php:

$configArr['initStatements'] = 'SET NAMES utf8; SET FOREIGN_KEY_CHECKS=0; SET UNIQUE_CHECKS=0;';

./app/code/core/Mage/Core/Model/Resource.php:

$config['initStatements'] = 'SET NAMES utf8; SET FOREIGN_KEY_CHECKS=0; SET UNIQUE_CHECKS=0;';

実行する必要のあるデータベースクエリ

-- Log tables to truncate
truncate log_url;
truncate log_url_info;
truncate log_visitor;
truncate log_visitor_info;
truncate log_visitor_online;

-- Truncate other large unnecessary tables
truncate op_imagecdn_cache;
truncate core_session;
truncate report_viewed_product_index;
truncate report_compared_product_index;
truncate core_cache;
truncate core_cache_tag;

-- Delete old quotes
DELETE FROM sales_flat_quote WHERE updated_at < DATE_SUB(Now(),INTERVAL 60 DAY);

truncate core_url_rewrite; -- You may not want to do this. We had 2.5 million entries...
truncate report_event;
truncate index_process_event;
truncate index_event;
truncate amazonpayments_api_debug;


-- drop all flat category and flat product tables 
drop table catalog_category_flat_store_1; -- etc.

drop table catalog_product_flat_1; --etc. 

その後、インデクサーを実行します。

于 2012-11-16T00:48:07.103 に答える