質問

Drush構成ファイル〜/ .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
.

しかし、私がそれを実行すると、バックアップファイルはまだキャッシュテーブルにデータを持っています。 私は何が悪いのですか?

と2番目の質問は - これをcrontabに入れると、構成ファイルを他の場所に置く必要がありますか?

私はドラッションバージョン8を使います。

役に立ちましたか?

解決

すみません、私はあなたの最初の質問であなたを多くのことができない...

あなたの第2回疑問依頼:

と2番目の質問は - これをcrontabに入れると、構成ファイルを他の場所に置く必要がありますか?

Drush Documentation Site Links Drushrc.phpの例ファイル RCファイルを配置することがあります:

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

このファイルの名前をDrushrc.phpに変更し、それを優先順に下記の場所の1つにコピーします。

  1. Drupalサイトフォルダ(例:sites / {デフォルト| example.com} /drushrc.php)。
  2. DRUPAL / DRUSHとサイト/全/ドラッションフォルダ、または/ Drushフォルダ Drupalルートの上のディレクトリに。
  3. --config(-c)オプションで指定されている任意の場所で。
  4. ユーザーの.drushフォルダ(すなわち〜/ .drush / drushrc.php)。
  5. システム全体の設定フォルダ(例えば、/etc/drush/drushrc.php)。
  6. Drushインストールフォルダ。

Cronの場合、ドキュメントは同じユーザーとして実行するように構成されていることをお勧めします。 Webサーバーを実行します。システム全体の設定フォルダ、RCファイルを場所(5)に配置することをお勧めします。はい、よりローカライズされたDrush RCファイルは、必要に応じてシステム全体の設定ファイルをオーバーライドする必要があります(ああ、まあ)。

他のヒント

cacheテーブルと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 Documentation

何らかの理由でcache_ *はDrush 9以降ではアンダースコアを省略するまで私には機能しませんでした。ただし、これは私の(サーバー)Bash / Terminalに固有のものかもしれません。 私のために何が働いていました:

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

と実際のMySQL Dumpと--ignoreパラメータを表示するには、常に--verboseを追加できます。

ライセンス: CC-BY-SA帰属
所属していません drupal.stackexchange
scroll top