2

drush rsyncコマンドを使用して、両方のサーバーの Drush ダンプ ディレクトリを使用して、リモート サーバーからローカル Drush にファイルを転送したいと考えています。私の考えでは、次のようになります。

$ drush rsync @remote$dump-dir/drup.sql.gz $dump-dir/drup.sql.gz

ホストの制限により、リモート mysql を直接ダンプすることはできません。代わりに、リモート サーバーでローカルにダンプし、 を使用drush rsyncしてダンプを安全な (Web からアクセスできない) ディレクトリに転送します。

通常の rsync を使用できますが、さまざまなホスト ディレクトリ ツリー用の bash スクリプトを作成しようとしています。drush ダンプ ディレクトリは、次の理由から、これに最適なようです。

  • すべてのDrushサイトには1つあり、
  • すでにパブリック Web ディレクトリ (/web、/www など) の外にある場合、
  • 上級ユーザーは、必要に応じて .drushrc の dump-dir を再構成できます。

Drush は MySQL ダンプに dump-dir を使用することを理解しています。同じディレクトリにファイルをrsyncするようにDrushに命令することも可能ですか?

ダンプ ディレクトリは、次のように drushrc で構成できます。

$options['dump-dir'] = '/path/to/dumpdir';

これはどのようにコマンド ラインでリバース エンジニアリングされるのですか?

4

1 に答える 1

1

path-aliases次の例のように、 を介してディレクトリ変数にアクセスできます。

$aliases['remote'] = array(
  'site' => 'mysite',
  'path-aliases' => array(
     '%dump-dir' => '/path/to/dumps', // Can be webroot relative path also.
     '%files'   => 'sites/default/files',
     '%private' => 'sites/default/private/files',
     '%custom' => '/my/custom/path',
  ),
);

次に実行します。

drush rsync @remote:%dump-dir/drup.sql.gz %dump-dir/drup.sql.gz

次の方法で事前にテストできます。drush dd %%dump-dir

参照: example.aliases.drushrc.php

于 2015-04-04T14:27:50.527 に答える