É melhor aparar o grande banco de dados no dump usando o drush sql-dump
dump do arquivo SQL. Isso oferece a vantagem de especificar as opções adicionais para ignorar as tabelas específicas durante o dumping (como armazenar em cache ou migrar tabelas).
Isso pode ser especificado na linha de comando (consulte :)drush help sql-dump
ou configurá-lo no seu arquivo drushrc, como mostrado em example.drushrc.php
:
$options['structure-tables']['common'] = array('cache', 'cache_*', 'history', 'search_*', 'sessions', 'watchdog');
$options['skip-tables']['common'] = array('migration_*');
ou por host, como se você estivesse usando sql-sync
ou sql-dump
entre controles remotos:
$aliases['global'] = array(
// These options will only be set if the alias is used with the specified command.
'command-specific' => array(
'sql-sync' => array(
'structure-tables-key' => 'common',
'skip-tables-key' => 'common',
'structure-tables' => array(
// You can add more tables which contain data to be ignored by the database dump
'common' => array('cache', 'cache_*', 'history', 'search_*', 'sessions', 'watchdog'),
),
'skip-tables' => array(
'common' =>array('migration_*'),
),
),
'sql-dump' => array(
'ordered-dump' => FALSE,
'structure-tables-key' => 'common',
'skip-tables-key' => 'common',
),
), // end: command-specific
);
Em seguida, você pode carregar essas configurações no seu host via:
$aliases['stage'] = array(
// ...
) + $aliases['global'];
Então você pode tentar algo como:
drush @source sql-dump | drush @self sql-cli
Para monitorar o progresso, você pode adicionar um visualizador de canal ( pv
) entre (como ... | pv | ...
).
Veja também: