Pergunta

Eu tenho um drush arquivo de configuração ~/.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 eu tenho um script bash arquivo:

/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

Mas quando eu executar o ficheiro de cópia de segurança ainda tem os dados no cache de tabelas.O que estou fazendo de errado?

E a segunda pergunta é Se eu colocar isso no crontab preciso colocar o arquivo de configuração em algum outro lugar?

Eu uso o Drush versão 8.

Foi útil?

Solução

Desculpe, não posso ajudar muito com a sua primeira pergunta ...

O seu 2º pergunta:

E a segunda pergunta é Se eu colocar isso no crontab preciso colocar o arquivo de configuração em algum outro lugar?

O drush documentação links de site para drushrc.php exemplo de arquivo que diz onde você pode colocar o arquivo rc:

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

Renomeie este arquivo para drushrc.php e, opcionalmente, copie-o para um dos lugares listados abaixo em ordem de precedência:

  1. Site Drupal pasta (por exemplo,sites/{default|exemplo.com}/drushrc.php).
  2. Drupal /drush e sites/all/drush pastas, ou o arquivo /pasta drush no diretório acima do Drupal raiz.
  3. Em qualquer localização, como especificado pela opção --config (-c) opção.
  4. Do usuário .drush pasta (por exemplo,~/.drush/drushrc.php).
  5. Todo o sistema de configuração de pasta (por exemplo,/etc/drush/drushrc.php).
  6. Drush pasta de instalação.

Para Cron a documentação recomenda que Drush ser configurado para executar como o mesmo usuário que executa o servidor web.O que está sendo dito, eu recomendo que você coloque seu arquivo rc no local (5), um sistema de configuração de toda a pasta.Sim, mais localizadas, Drush arquivos rc, em seguida, será necessário substituir o seu sistema-amplo arquivo de configuração conforme necessário (bem).

Outras dicas

Despejo de todas as tabelas, exceto cache tabela e tabelas que começam com cache_.

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

Estrutura de banco de dados apenas.Dados em todos os.

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

Somente dados.Sem cache de dados e sem cache estrutura.

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

Nenhum cache de dados, mas de despejo em suas estruturas.

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

sql-dump documentação

Por algum motivo cache_* não funcionou para mim com o drush 9+ até que eu omitido o carácter de sublinhado.No entanto, isso pode ser específico para o meu (servidor) bash/terminal.O que funcionou para mim:

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

e você pode sempre adicionar o --verbose para ver o real mysql dump e é --ignore o parâmetro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a drupal.stackexchange
scroll top