是否可以使用drush到rsush文件到drush转储目录进行MySQL转储?

时间:2014-04-05 16:07:45

标签: mysql bash drupal rsync drush

我想使用drush rsync命令将文件从远程服务器传输到本地Drush,使用两台服务器上的Drush dump-directory。在我看来,它看起来像这样:

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

由于我主机的限制,我无法直接使用dump remote mysql。相反,我将在远程服务器上本地转储,然后使用drush rsync将转储传输到安全(非Web可访问)目录。

我可以使用常规rsync,但我正在尝试为各种主机目录树创建一个bash脚本。 drush dump-directory似乎是理想的,因为:

  • 每个榨油网站都有一个,
  • 它已经在公共网站目录之外(/ web,/ www等),
  • 高级用户可以根据需要在.drushrc中重新配置dump-dir。

我知道Drush使用dump-dir进行MySQL转储。是否也可以命令Drush到rsync文件到同一目录?

可以在drushrc中配置转储目录,如下所示:

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

如何针对命令行进行逆向工程?

1 个答案:

答案 0 :(得分: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