È sempre possibile utilizzare un file di alias di trascinamento sul server dev e impostarlo per saltare le tabelle della cache quando si esegue sql-sync. Quanto segue creerebbe alias per il tuo server di sviluppo locale e il tuo server live remoto:
$aliases['dev'] = array(
'root' => '/var/www/devroot',
);
$aliases['live'] = array(
'root' => '/var/www/liveroot',
'remote-host' => 'www.mysite.com',
'remote-user' => 'exampleuser',
'command-specific' => array (
'sql-sync' => array (
'skip-tables-list' => 'cache,cache_menu',
),
),
);
Se l'hai salvato nella tua home directory su:
~/.drush/mysite.aliases.drushrc.php
allora puoi chiamare il tuo comando sql-sync in questo modo:
drush sql-sync @mysite.live @mysite.dev
e dovrebbe saltare le tabelle della cache (ovviamente ho elencato solo 2 lì, ma potresti inserire qualsiasi cosa, aggiungo anche il watchdog).
Per maggiori informazioni sugli alias e tutte le varie opzioni, controlla il file di esempio nella tua installazione di Drush su drush / esempi / esempio.aliases.drushrc.php
Come ultima nota per chiunque cerchi di utilizzare sql-sync, ho avuto problemi di autenticazione quando l'ho eseguito per la prima volta, quindi se qualcuno tenta questo e ottiene errori sulle chiavi pubbliche / private, procedi come segue:
drush dl drush_extras
drush pushkey @mysite.live
drush @mysite.live status
Il comando pushkey di drush_extras crea una coppia di chiavi privata / pubblica e invia la chiave pubblica al server live. L'ultimo comando è solo per verificare che abbia funzionato.