2026年8月6日
2026年8月6日
WordPressのバックアップをS3に保存する方法
はじめに
ここでは、WordPressサイトの重要なデータをAmazon S3に定期的にバックアップする方法について詳しく説明します。この手順は、サーバー上のファイルやデータベースの内容が破損した場合でも迅速な復旧が可能になるため、非常に重要です。
症状・背景
- WordPressサイトのデータが壊れた
- ユーザーデータをセキュアに保存する必要がある
- リモートからバックアップファイルにアクセスしたい
- サーバー移行時のデータ損失を防ぎたい
手順・設定方法
ステップ1: AWS CLIとS3バケットを作成
# AWS CLIをインストールします(既にインストールされている場合はスキップ)
sudo apt-get install awscli -y
# AWS S3バケットの作成
aws s3 mb s3://your-bucket-name --region your-region-code
ステップ2: バックアップスクリプトを作成
# WordPressディレクトリとデータベースをアーカイブします
tar czf /tmp/wordpress-backup-$(date +%Y%m%d%H%M%S).tar.gz -C /var/www/html/your-wordpress-directory . --exclude=wp-content/uploads
# データベースバックアップの作成
mysqldump -u your-db-user -p your-db-name > /tmp/db-backup.sql
# S3にファイルを転送します
aws s3 cp /tmp/wordpress-backup-$(date +%Y%m%d%H%M%S).tar.gz s3://your-bucket-name/backups/
aws s3 cp /tmp/db-backup.sql s3://your-bucket-name/db-backups/
ステップ3: タスクスケジューラーで定期実行
# cronタスクを設定してバックアップを自動的に実行します
echo "0 2 * * * /path/to/backup-script.sh" >> /var/spool/cron/root
ステップ4: バックアップの監視とテスト
# S3からファイルをダウンロードして、バックアップが正常に作成されたことを確認します
aws s3 cp s3://your-bucket-name/backups/wordpress-backup-$(date +%Y%m%d%H%M%S).tar.gz /tmp/
tar xzf /tmp/wordpress-backup-20231004.tar.gz -C /var/www/html/test-wordpress-directory/
# データベースの復元テスト
mysql -u your-db-user -p your-db-name < /path/to/db-backup.sql
注意事項
- AWS CLIがインストールされていることを確認してください。
- S3バケット名とAWSアカウント情報は適切に設定する必要があります。
- MySQLのバックアップでは、必要なデータのみをエクスポートすることが推奨されます。
- サーバーのディスクスペースと帯域幅も考慮に入れてください。
まとめ
1. AWS CLIのインストール: AWS CLIがインストールされていることを確認してください。これにより、S3との連携が可能になります。
2. S3バケットの作成: バックアップファイルを保存するためのS3バケットを作成します。
3. バックアップスクリプトの作成と実行: WordPressディレクトリとデータベースをアーカイブし、S3に転送します。
4. 定期的なバックアップ設定: cronタスクを設定して自動的にバックアップを実行します。
5. 監視とテスト: バックアップファイルが適切に作成されていることを確認するために、頻繁にチェックしてください。
関連記事: