Domanda

Ho un file di configurazione di 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')
);
.

e ho un file di script 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
.

Ma quando lo eseguo il file di backup ha ancora dati nelle tabelle della cache. Che cosa sto facendo di sbagliato?

e la seconda domanda è - se metto questo in crontab, ho bisogno di mettere il file di configurazione da qualche altra parte?

Io uso la versione 8.

È stato utile?

Soluzione

Scusa non posso aiutarti molto con la tua prima domanda ...

La tua 2a domanda ha chiesto:

.

e la seconda domanda è - se metto questo in crontab, ho bisogno di mettere il file di configurazione da qualche altra parte?

the Doch Documentation Site links a DrushRC.php File di esempio che dice dove tu può posizionare il file RC:

https://raw.githubuserContent.com/ Drush-Ops / Drush / Master / Esempi / Esempio.Drushrc.php

.

Rinominare questo file su Drushrc.php e facoltativamente copiarlo su uno dei luoghi elencati di seguito in ordine di precedenza:

    .
  1. Cartella del sito Drupal (A.G. Siti / {default | example.com} /drushrc.php).
  2. Drupal / Sumruss and Sites / Tutelle / Tutelle / Purbultate o Cartella / Schush Nella directory sopra la radice drupal.
  3. in qualsiasi posizione, come specificato dall'opzione --config (-c).
  4. Cartella dell'utente .Drush (I.e. ~ / .Drush / Drushrc.php).
  5. System Wide Configuration Folder (ad esempio /etc/Drush/drushrc.php).
  6. Cartella di installazione di Drush.

per cron La documentazione raccomanda che non è configurata per eseguire come lo stesso utente che Gestisci il tuo server web. Detto quello che viene detto ti consiglio di posizionare il tuo file RC in posizione (5), una cartella di configurazione a livello di sistema. Sì, i file RC di Drush, più localizzati devono sovrascrivere il file di configurazione a livello di sistema secondo necessità (oh bene).

Altri suggerimenti

Scarica tutte le tabelle ad eccezione della tabella e delle tabelle cache che iniziano con cache_.

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

Struttura del database solo.Nessun dato affatto.

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

Solo dati.Nessun dato della cache e nessuna struttura della cache.

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

Nessun dato della cache ma scarica le loro strutture.

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

Documentazione SQL-dump

Per qualche motivo cache_ * non ha funzionato per me con Drush 9+ fino a quando ho omesso il sottolineatura.Tuttavia, questo potrebbe essere specifico per il mio (server) bash / terminale. Cosa ha funzionato per me:

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

E puoi sempre aggiungere il --verbose per vedere il dump MySQL effettivo e il parametro IT -ignore.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a drupal.stackexchange
scroll top