初めに
こんにちは。新入社員のA.H.です。
前回はAWS EC2インスタンスに構築したEC-CUBEを別のインスタンスへ移行する手順について共有させていただきました。
今回は同じくAWS EC2インスタンスに構築したMagentoを別のインスタンスへ移行していきたいと思います。
前回はこちら↓
AWS EC2インスタンスにMagentoを構築する手順をご確認ください。
目標
・新しいインスタンス上でMagentoが正常に動作している
※EC2インスタンスの作成手順は割愛します。
目次
- 構築環境
- 下準備
- 新しいインスタンスの作成
- バックアップファイルの作成
- 移行作業
- バックアップファイルの移行
- バックアップファイルの展開
- Magentoのインストール
構築環境
インスタンス構成
タイプ | プロトコル | ポート範囲 |
SSH | TCP | 22 |
HTTP | TCP | 80 |
カスタムTCP | TCP | 8080 |
カスタムTCP | TCP | 9200 |
システムバージョン
- Magento 2.4
- Apache 2.4
- MySQL 8.0
- PHP 7.4
- phpMyAdmin 5.0.2
- Java 1.8.0
- ElasticSearch 7.9.2
使用ツール
下準備
1.新しいインスタンスの作成
Magentoのシステム要件を満たすように、Apache・MySQL・PHP・Composer・Java・ElasticSearchをインストールしてください。
今回は以前投稿した
AWS EC2にECサイトを構築する ~Magento編~
1~4、6.2、7、8、9.1 の通りに構築を行った前提で説明していきますので、相違点があった場合は適宜変えながら進めてください。
※新しいインスタンスはバージョン・権限含め、なるべく移行元の環境と同じ状態にしてください。
2.バックアップの作成
2.1 DBのバックアップを取る
移行元のインスタンスにTeraTermでログインしrootユーザーに切り替えます。
sudo su -
cd /home/ec2-user mysqldump -u root -p --single-transaction --databases magento2 | gzip > DB_magento2.sql.gz
WinSCPでダウンロード、アップロードを行うため、ec2-userで操作できる /home/ec2-user 内にバックアップファイルを作成しています。
2.2 Magentoのバックアップを取る
tar zcvf magento2.tar.gz /var/www/magento2
以上でMagentoのバックアップファイルの作成は完了です。
移行作業
1.バックアップファイルの移行
1.1 WinSCPでバックアップファイルを移行する
WinSCPでバックアップファイルを一度操作しているPCにダウンロードし、移行先のインスタンスにアップロードします。
アップロード先は /home/ec2-user とします。
2.バックアップファイルの展開
2.1 DBのバックアップファイルを解凍する
cd /home/ec2-user/ gzip -d DB_magento2.sql.gz
2.2 DBをリストアする
mysql -u root -p < DB_magento2.sql
無事に展開できたらファイルは不要となるため削除します。
rm DB_magento2.sql
2.3 Magentoのバックアップファイルを解凍する
cd /home/ec2-user/ tar -zxvf magento2.tar.gz
無事に解凍が完了したら、解凍前のファイルは不要となるので削除します。
rm magento2.tar.gz
2.4 Magentoファイルを配置する
mv var/www/magento2 /var/www/
3.Magentoのインストール
3.1 Magentoをインストールする
bin/magento setup:install \ --base-url=http://xxxxxxxx/ \ --db-host=localhost \ --db-name=magento2 \ --db-user=root \ --db-password=rootのMySQLへのログインパスワード
今回変更のある部分だけ指定してインストールします。
特に変更がない場合は 最初の1行のみでも構いません。
3.2 Webブラウザで確認する
Magentoのインストール時に設定した base-url にWebブラウザでアクセスし、ページが表示されたら成功です。
移行作業、お疲れ様でした。
最後に
今回はMagentoを新しいインスタンスに移行しました。
次回はMagentoのマルチサイト作成手順について共有させていただけたらと思います。
最後までお付き合いいただき、ありがとうございました!