web-dev-qa-db-ja.com

Drushを使用してDrupal 7マルチサイトのデータベースをバックアップおよび復元する最良の方法は?

Drushを使用してDrupalマルチサイト)のデータベースをバックアップ(および必要に応じて復元)する簡単な方法を探しています。

すべてのデータベースのバックアップに使用するDrushコマンド:

drush @sites sql-dump --result-file --gzip

データベースのバックアップは機能しているようです。上記のコマンドを実行すると、データベースは自動的に/ root/drush-backups /[〜#〜] databasename [〜#〜]/[に保存されます〜#〜] timestamp [〜#〜]/DATABASENAME_TIMESTAMP。sql.gz

データベースの最新のバックアップを自動的に復元するには、どのコマンドを使用できますか?

Drushを使用してDrupal 7マルチサイトのデータベースをバックアップおよび復元する最良の方法は何ですか?

PS:私はGitを使用しているので、データベースのバックアップのみが必要です。

アドバイスありがとうございます!

2
user49731

これは、サイトごとに復元を行う方法です。

drush @site1 sql-drop -y && gunzip -c /path/to/backup/file1 | drush @site1 sql-cli

データベース名に対するサイトエイリアスのリストを維持し、プロセスを自動化するシェルスクリプトを作成できます。

個々のサイトのデータベース名は、次のように抽出できます。

drush status @site1 --fields=db-name --field-labels=0

残念ながら、復元のためのオールインワンソリューションはありません。

別の解決策は バックアップと移行モジュール を使用することです。 bam-backupコマンドとbam-restoreコマンドがあり、操作が簡単になる場合があります。

@Duncanmooが述べたように、復元後にdrush rebuild-registryを実行するのも良い方法です。

4
cleaver