Duplicatorはサイト全体や様々なサブセクションを移動させるのに非常に良い仕事をしてくれます。このセクションでは、そのような様々なオプションについて説明します。
一般的なシナリオ
シナリオ1-サイトの一部
ウェブサイトの一部だけを移動するには?
WordPressサイトは、「ファイル」と「データベーステーブル」の2つの主要アセットで構成されています。インストーラー(Proのみ)には、バックアップを再展開したり、既存のバックアップから特定のデータを除外したりする機能があります。以下は、バックアップのデータをフィルタリング/除外するワークフローです。
バックアップ
バックアッププロセス
ファイル管理:新しいバックアップを作成する際、任意のファイル/フォルダ、ファイル拡張子、データベーステーブルを除外することができます。アーカイブフィルタ(バックアップ > 新規作成 > アーカイブ > ファイルフィルタ)と上書き またはインポートインストールモードにより、サイトの一部を柔軟に移動できます。サイトの一部だけを移動するには、移動する必要のないファイルをすべて除外します。ファイルフィルターには、除外したいディレクトリのフルパスを入力します。除外するパスはセミコロンで区切ることができます。このプロセスは、バックアップしたくない画像や動画などの大きなファイルがある場合に便利です。
データベース管理:テーブルフィルター(バックアップ>新規作成>アーカイブ>データベースタブ>テーブルフィルター)は、データベースの復元に必要なデータを含むdatabase.sqlファイルに追加されるテーブルを除外することができます。
インストーラー
インストール手順
インストール時に、上書きまたはインポートインストールプロセスを実行することで、アーカイブ内のファイルのみを移動することができます。インストーラのステップ 1 の「ファイルをスキップ」オプション(Pro のみ)は、インストーラのもう 1 つの重要な機能です (Installer > Step 1 > Options > Skip Files)。これらのオプションには以下が含まれます:
- すべてのファイルを抽出します:バックアップアーカイブからすべてのファイルを抽出します。このオプションはデフォルトで選択されています。
- WPコアファイルの抽出をスキップします:WordPressのコアファイル以外のすべてのファイルを抽出します。このオプションを選択すると、wp-content フォルダとその他のコア以外のファイルとディレクトリのみを抽出できます。
- メディアファイルと新しいプラグインとテーマのみを抽出します:すべてのメディアファイル、新しいプラグイン、新しいテーマを抽出します。インストーラは、インストール先サイトに既に存在するプラグインとテーマは抽出しません。
シナリオ1-大規模サイト
大規模なサイト/バックアップをより迅速に移動するには?
オプション1継続的に移動する必要があり、アップロード/ダウンロード速度に問題がある非常に大規模なサイトをお持ちの場合、「Classic Overwrite Install」メソッドを使用することで、このワークフローを迅速に改善することができます。
前提条件
- 開発サイトとステージング・サイトの2つのサイトがあります。
- サイトのファイルは、物理的な場所を除いて同一である。
- 各サイトのデータベースは、同じサーバーであるか異なるサーバーであるかというロケーションを除いて同じである。
ワークフロー
- Developmentサイト上に新しいバックアップを作成し、「˶wp-contentuploads」ディレクトリを除外/フィルタリングします。
これは、大きなファイルを持つ可能性のある他の場所でも構いません。 - バックアップファイルをローカルにダウンロードし、WordPressルートにあるステージングサイトに転送する。
- ステージング・サイトのinstaller.phpファイルを参照し、アーカイブを完全にコピーします。
- 完成したステージング・サイトには、ステップ1のフィルターを除いた、開発サイトのすべてのアップデートがあるはずです。
- 当初は同じサイトだったので、Stageサイトでも "uploads "は機能するはずです。
オプション2Duplicatorインポートインストールモードは、ワークフローを迅速に改善します。
シナリオ1-デベロッパーとプロダクションの同期
ステージング/開発サイトを大規模な本番サイトと同期させるには?
- 両方のサイトにデュプリケーター・プロをインストールする
- メインサイトでは、エンジンをDupArchiveに設定します(設定 > バックアップ > アーカイブエンジン = DupArchive)。
- メインサイトにバックアップを構築する
- インポートURLのインストールは、「インポートリンク」の項を参照してください。
上記の作業を行うと、ステージング・サイトが元のサイトと同じになります。アップグレード後は、逆の手順を行うことができます。バックアップがインストールされると、データベースは完全に置き換えられますのでご注意ください(ステージングサイトでの作業中にメインサイトに顧客からの支払いやその他の記録が入ってきた場合、ステージングサイトをメインサイトにインストールし直すと、それらは消去されます)。
データベース固有のシナリオ
シナリオ2-カスタムSQL
カスタムSQLファイルを手動で実行するには?
アーカイブに格納されているdatabase.sqlファイルの代わりに、カスタムSQLコードを実行する必要がある場合。この処理は以下の手順で行うことができます:
- 新しいブラウザータブで、phpAdmin、またはインストール先のマシンの同等のものにアクセスします。
- 移行先データベースから既存のデータベーステーブルを削除します。
- 独自のカスタムスクリプトをインポートする(ほとんどの場合、これはサイトのコピーである必要があります).これはphpMyAdminのインポート手順で行うことができます。
- ブラウザのタブでDuplicator Pro installer.phpを起動します。
- アドバンスモードに切り替え、データベースオプションから「手動SQL実行」を選択します。
これにより、インストーラはアーカイブ内の.sqlを使用せず、データ挿入ステップを完全にスキップします。 - インストールを終了する
シナリオ2-B既存のテーブル
移行中に既存のデータベーステーブルが変更されないようにするには?
オプション1特定のサイトで既存のテーブルを保持する必要がある場合があります。例えば、開発サイト(dev site)とステージングサイト(staging site)があるとします。ステージングサイトでは、wp_postsテーブルから現在の投稿を上書きしたくありません。テーブルを保持するには、以下の手順に従ってください。
- 開発サイトにログインし、Duplicator Pro > バックアップ画面 > 「新規作成」ボタンをクリックします。
- アーカイブ > データベースタブ > "データベーステーブルフィルタを有効にする "をチェック > "wp_posts "テーブルをチェック&バックアップを構築する
注意: これにより、database.sqlスクリプトで作成される "wp_posts "テーブルが除外/無視されます。 - ステージングサイトでinstaller.phpを開き、ステップ1の "Setup "エリアに移動します。
- 既存のテーブルを上書きする "アクションを選択 > "検証 "ボタンをクリックします。
注意: これにより、データベース内のすべての既存テーブルが保持され、同じ名前のテーブルが上書きされます。 - wp_posts "テーブルが削除リストにないことを確認する
を参照してください:テーブルを検証する Validate > Database > "Tables Flagged for Removal or Backup" - インストールプロセスを続行し、完了後、"wp_posts "テーブルは変更されないはずです。
サポートされていないシナリオ
質問A増分バックアップや差分バックアップの設定はありますか?
オプション1現時点ではDuplicatorは差分バックアップや増分バックアップをサポートしていません。しかし、多くの人がバックアップサイズを削減するためにフィルタを使用しています。例えば、すべてのファイルを含むフルバックアップを毎週またはX日ごとに行い、データベースのみのバックアップをX時間ごとまたは毎日行うことができます。
質問Bブログ記事(画像、コメント、カテゴリー、タグなど)だけをコピーするにはどうすればいいですか?
オプション1Duplicatorは現在、ブログ記事などの個別のアイテムを移行することはできませんが、WordPressのインポート/エクスポートツールとファイルのFTP転送を組み合わせることで、ユーザーはこのプロセスを実行できるはずです。このプロセスの詳細については、こちらをご覧ください。