web-dev-qa-db-fra.com

Configuration d'un alias de drush SQL-Dump

J'ai ce qui suit dans mon aliases.drushrc.php déposer --

$aliases['prod'] = array(
    'uri' => 'foo.com',
    'root' => '/var/www/foo/htdocs',
    'remote-Host' => '123.456.78.90',
    'remote-user' => 'bob',
    'databases' => 
      array (
        'default' => 
        array (
          'default' => 
          array (
            'driver' => 'mysql',
            'username' => 'foo',
            'password' => 'bar',
            'port' => '',
            'Host' => 'localhost',
            'database' => 'foodb',
          ),
       ),
     ),
    'Shell-aliases' => array (
        'dump' => '!drush sql-dump --gzip --ordered-dump',
    ),
  );

Quand je cours drush @prod dump il tente de se connecter à 'remote-Host'. Si je commentaire 'remote-Host' Il décharge comme prévu. J'ai besoin de cette valeur si d'autres fonctions telles que sql-rsync.

Je pourrais créer un nouvel alias juste pour le dumping, mais cela semble un peu excessif.

Des idées?

4
Allan Thomas

Drush décide si un site est local ou distant via la fonction drush_is_local_Host. Maquillez un nom de domaine pour votre système, tel que FOO.LOCAL et effectuez une entrée pour cela dans/etc/hosts (123.456.78.90 FOO.LOCAL). Ensuite, assurez-vous que/etc/hostname contient également FOO.LOCAL et confirmez ceci en exécutant hostname -f. Si vous faites tout cela correctement, vous pouvez définir 'remote-Host' => 'foo.local', et Drush le traitera toujours comme localhost pour des commandes telles que SQL-Sync.

4
greg_1_anderson