我有一个醉汉配置文件〜/ .drush / drushrc.php:

if (!isset($options['structure-tables']['common'])) {
  $options['structure-tables']['common'] = array(
    'cache', 'cache_*', 'history', 'search_*', 'sessions', 'watchdog'
  );
}

$options['structure-tables']['common'] = array_merge($options['structure-tables']['common'], 
  array('ctools_css_cache', 'ctools_object_cache', 'logz', 'views_object_cache')
);
.

,我有一个bash脚本文件:

/usr/bin/drush sql-dump --root="/home/username/domains/sitename/www" --skip-tables-key="common" --gzip --result-file=/home/username/backup/$year/$month/dbname_$date_now_time.sql
.

但是当我执行它时,备份文件仍然具有缓存表中的数据。 我究竟做错了什么?

和第二问题是 - 如果我把它放入crontab,我需要在其他地方放置配置文件吗?

我使用苏打版本8。

有帮助吗?

解决方案

抱歉,我的第一个问题无法帮助您...

你的第2问题问:

和第二问题是 - 如果我把它放入crontab,我需要在其他地方放置配置文件吗?

Drush文档站点链接到Drushrc.php示例文件所说的可以放置RC文件:

https://raw.githubusercontent.com/ Drush-ops / drush / master / master / example.drushrc.php

将此文件重命名为Drushrc.php,并可选择将其复制到下面列出的位置,按优先顺序:

  1. drupal站点文件夹(例如,站点/ {default | example.com} /drushrc.php)。
  2. Drupal / Drush和Sites / All / Drush文件夹,或/ Drush文件夹 在Drupal根上方的目录中。
  3. 在任何位置的
  4. ,由--config(-c)选项指定。
  5. 用户的.drush文件夹(即/ .drush / drushrc.php)。
  6. 系统范围配置文件夹(例如/etc/drush/drc.php)。
  7. 润滑安装文件夹。

用于cron,文档建议我们将疏浚配置为与同一用户一起运行运行您的Web服务器。据说我建议您将RC文件放在位置(5),一个系统范围的配置文件夹中。是的,更多本地化的疏浚RC文件将根据需要覆盖系统范围的配置文件(哦嗯)。

其他提示

除了生成的所有表之外,除了生意经阳极常规表和表以cache开头的表。

drush sql-dump --skip-tables-list=cache,cache_* > dumpfile.sql
.

数据库结构。根本没有数据。

drush sql-dump --extra=--no-data > dumpfile.sql
.

仅限数据。没有缓存数据和没有缓存结构。

drush sql-dump --skip-tables-list=cache,cache_* --data-only > dumpfile.sql
.

没有缓存数据,但在其结构中转储。

drush sql-dump --structure-tables-list=cache,cache_* > dumpfile.sql
.

sql-dump文档

出于某种原因,缓存_ *在我遗漏9+之前对我不起作用,直到我省略了下划线。但是,这可能是我的(服务器)BASH /终端的特定。 对我有什么工作:

drush sql-dump --skip-tables-list=cache*
.

,您可以始终添加--verbose以查看实际的MySQL转储及其--ignore参数。

许可以下: CC-BY-SA归因
scroll top