Vous pouvez toujours utiliser un fichier d'alias drush sur votre serveur de développement et le configurer pour ignorer les tables de cache lorsque vous exécutez sql-sync. Les éléments suivants créeraient des alias pour votre serveur de développement local et votre serveur en direct distant:
$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',
),
),
);
Si vous l'avez enregistré dans votre répertoire personnel à:
~/.drush/mysite.aliases.drushrc.php
alors vous pouvez appeler votre commande sql-sync comme ceci:
drush sql-sync @mysite.live @mysite.dev
et il devrait ignorer les tables de cache (évidemment, je n'en ai répertorié que 2, mais vous pouvez y mettre n'importe quoi, j'ajoute même un chien de garde).
Pour plus d'informations sur les alias et toutes les différentes options, consultez l'exemple de fichier dans votre installation drush à drush / examples / example.aliases.drushrc.php
Comme dernière note pour quiconque essaye d'utiliser sql-sync, j'ai eu des problèmes d'authentification lorsque je l'ai exécuté pour la première fois, donc si quelqu'un tente cela et obtient des erreurs sur les clés publiques / privées, procédez comme suit:
drush dl drush_extras
drush pushkey @mysite.live
drush @mysite.live status
La commande pushkey de drush_extras crée une paire de clés privée / publique et envoie la clé publique au serveur en direct. La dernière commande consiste simplement à vérifier que cela fonctionne.