Data Migration Toolの設定
Data Migration Toolをインストールすると、次のディレクトリにマッピングファイルと設定ファイルが含まれます。
-
Magento Open Source:
<your Magento 2 install dir>/vendor/magento/data-migration-tool/etc/opensource-to-opensource: Magento Open Source 1からMagento Open Source 2への移行用の設定とスクリプト
-
Adobe Commerce:
<your Magento 2 install dir>/vendor/magento/data-migration-tool/etc/opensource-to-commerce: Magento Open Source 1からAdobe Commerce 2への移行用の設定とスクリプト<your Magento 2 install dir>/vendor/magento/data-migration-tool/etc/commerce-to-commerce: Adobe Commerce 1からAdobe Commerce 2への移行用の設定とスクリプト
前述のディレクトリには、サポートされている各バージョンのサブディレクトリが含まれています。
移行の設定
Data Migration Toolを設定するには、次の2つの方法があります。
- 別のモジュールでData Migration Toolを設定します(推奨)
<your Magento 2 install dir>/vendor/magento/data-migration-tool/etc/ディレクトリのData Migration Tool設定を変更します。
ソース管理を使用して移行設定を管理し、デプロイメントに使用するには、別のモジュールを作成する必要があります。
Data Migration Toolをローカルでのみ実行する場合は、<your Magento 2 install dir>/vendor/magento/data-migration-tool/ ディレクトリ内のファイルを直接編集できます。
別のモジュールでの移行の設定
データを移行する前に、Magento 2 モジュールを作成する必要があります。
-
Magento 2 モジュールを作成します。
<your Magento 2 install dir>/app/code/Vendor/Migration/composer.json
code language-json { "name": "vendor/migration", "description": "Providing config for migration", "config": { "sort-packages": true }, "require": { "magento/framework": "*", "magento/data-migration-tool": "*" }, "type": "magento2-module", "autoload": { "files": [ "registration.php" ], "psr-4": { "Vendor\\Migration\\": "" } }, "version": "1.0.0" }<your Magento 2 install dir>/app/code/Vendor/Migration/registration.php
code language-php <?php \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::MODULE, 'Vendor_Migration', __DIR__ );<your Magento 2 install dir>/app/code/Vendor/Migration/etc/module.xml
code language-xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd"> <module name="Vendor_Migration" setup_version="1.0.0"> <sequence> <module name="Magento_DataMigrationTool"/> </sequence> </module> </config> -
config.xml.dist設定ファイルをData Migration Tool (<your Magento 2 install dir>/vendor/magento/data-migration-tool/etc/<migration edition>/<ce or version>)の適切なディレクトリから<your Magento 2 install dir>/app/code/Vendor/Migration/etc/<migration edition>/<ce or version>/config.xmlファイルにコピーします。例えば、
Magento 1.9.3.6 Community EditionをMagento 2 Open Sourceに移行する場合は次のようになります。code language-shell cd <your Magento 2 install dir>code language-shell cp vendor/magento/data-migration-tool/etc/opensource-to-opensource/1.9.3.6/config.xml.dist app/code/Vendor/Migration/etc/opensource-to-opensource/1.9.3.6/config.xml -
config.xmlファイルでは、アクセスの詳細をM1およびM2 データベースと暗号化キーに設定する必要があります。 -
M1 ストアにカスタム変更がある場合は、残りのコンフィギュレーションファイルをMagento 1 ストアのカスタマイズにマッピングする必要があります。 設定ファイルとマッピングファイルの操作を参照してください。
vendor フォルダーでの移行の設定
データを移行する前に、提供されたサンプルからconfig.xml設定ファイルを作成する必要があります。
移行用にData Migration Toolを設定するには:
-
ファイルシステム所有者としてアプリケーションサーバーにログインするか、切り替えます。
-
次のディレクトリに移動します。
code language-shell <your Magento 2 install dir>/vendor/magento/data-migration-tool/etc/<migration edition>/<ce or version> -
次のコマンドを入力して、提供されたサンプルから
config.xmlを作成します。code language-shell cp config.xml.dist config.xml -
config.xmlをテキストエディターで開きます。 -
少なくとも、config.xml ファイルには、M1およびM2 データベースへのアクセスの詳細と暗号化キーが含まれている必要があります。
code language-xml <source> <database host="127.0.0.1" name="magento1" user="root"/> </source> <destination> <database host="127.0.0.1" name="magento2" user="root"/> </destination> <options> <crypt_key /> </options><crypt_key> タグには値を含める必要があります。 Magento 1 インスタンスのapp/etc/local.xml ファイルにある
<key>タグ内で見つけることができます。オプションのパラメーター:
- データベース ユーザーのパスワード:
password=<password> - データベース カスタム ポート:
port=<port> - テーブルのプレフィックス:
<source_prefix>、<dest_prefix>
例えば、データベース所有者のユーザー名がパスワード
passのrootで、Magento 1 データベースでプレフィックスmagento1を使用している場合は、config.xmlで次のように使用します。code language-xml <source> <database host="127.0.0.1" name="magento1" user="root" password="pass"/> </source> <destination> <database host="127.0.0.1" name="magento2" user="root" password="pass"/> </destination> <options> <source_prefix>magento1</source_prefix> <crypt_key>f3e25abe619dae2387df9fs594f01985</crypt_key> </options> - データベース ユーザーのパスワード:
完了したら、変更内容をconfig.xmlに保存し、テキストエディターを終了します。
TLS プロトコルを使用した接続
TLS プロトコルを使用してデータベースに接続することもできます(つまり、公開鍵と秘密鍵を使用します)。 次のオプション属性をdatabase要素に追加します。
ssl_cassl_certssl_key
例:
<source>
<database host="localhost" name="magento1" user="root" ssl_ca="/path/to/file" ssl_cert="/path/to/file" ssl_key="/path/to/file"/>
</source>
<destination>
<database host="localhost" name="magento2" user="root" ssl_ca="/path/to/file" ssl_cert="/path/to/file" ssl_key="/path/to/file"/>
</destination>
設定ファイルとマッピングファイルの操作
Data Migration Toolでは、マッピングファイルを使用して、Magento 1とMagento 2のデータベース間でカスタムデータベースマッピングを実行できます。次の機能があります。
-
テーブル名の変更
-
フィールド名の変更
-
テーブルまたはフィールドの無視
-
フィールドのデータ転送をMagento 2形式に適応させる
サポートされているMagento バージョンのマッピングファイルは、<your Magento 2 install dir>/vendor/magento/data-migration-tool/etcのサブディレクトリにあります
マッピングファイルを使用するには:
-
<your Magento 2 install dir>/vendor/magento/data-migration-tool/etc/<migration edition>/<ce or version>/から<your Magento 2 install dir>/app/code/Vendor/Migration/etc/<migration edition>/<ce or version>/にコピーし、.dist拡張機能を削除します。 -
config.xmlの<options>ノードで、新しくコピーしたファイルへのパスを更新します。 更新されたパスは、次のいずれかである必要があります。- 絶対ファイルパス e. g.
/var/www/html/app/code/Vendor/Migration/etc/opensource-to-opensource/1.9.4.1/map.xml - magento/data-migration-tool モジュールの相対ファイルパス:
etc/opensource-to-opensource/1.9.4.1/map.xml - Magentoのルート相対ファイルパス:
app/code/Vendor/Migration/etc/opensource-to-opensource/1.9.4.1/map.xml
- 絶対ファイルパス e. g.
<Magento 2 dir>/vendor/magento/data-migration-tool/etcおよび<Magento 2 dir>/vendor/magento/data-migration-tool/etc/<ce version> ディレクトリには、次の設定ファイルが含まれています。
ほとんどの場合、map.xml.dist ファイルを使用していますが、各マッピングとその他のファイルについては、次の表で説明します。
class-map.xml.distconfig.xml.distcustomer-attr-document-groups.xml.distcustomer-attr-map.xml.distdeltalog.xml.disteav-attribute-groups.xml.disteav-document-groups.xml.distlog-document-groups.xml.distmap-eav.xml.distmap-log.xml.distmap-sales.xml.distmap.xml.distsettings.xml.distcore_config_data テーブルの移行に必要なルールを指定する移行設定ファイルを設定しています。customer-attribute-groups.xml.distcustomer-document-groups.xml.distmap-customer.xml.distorder-grids-document-groups.xml.distmap-document-groups.xml.distmap-stores.xml.distmap-tier-price.xml.distvisual_merchandiser_map.xml.distvisual_merchandiser_attribute_groups.xml.distvisual_merchandiser_document_groups.xml.dist詳しくは、Data Migration Tool 技術仕様を参照してください。