web-dev-qa-db-fra.com

Drush ne peut pas bootstrap

J'ai installé Drush 7 à l'aide de Composer et j'ai créé un Drupal 8 fonctionnant sur XAMPP sous Windows.

  1. H:\xampp\htdocs\d8_test est la racine Drupal.
  2. L'emplacement du fichier settings.php est H:\xampp\htdocs\d8_test\sites\default\settings.php.

Aucune des commandes drush ne fonctionne. Tous échouent avec la même erreur:

H:\xampp\htdocs\d8_test>drush pmi
Command pm-info needs a higher bootstrap level to run - you will need    [error]

to invoke drush from a more functional Drupal environment to run this
command.
The drush command 'pmi' could not be executed.                           [error]

Drush was not able to start (bootstrap) the Drupal database.             [error]

Hint: This may occur when Drush is trying to:
 * bootstrap a site that has not been installed or does not have a
configured database. In this case you can select another site with a
working database setup by specifying the URI to use with the --uri
parameter on the command line. See `drush topic docs-aliases` for
details.
 * connect the database through a socket. The socket file may be
wrong or the php-cli may have no access to it in a jailed Shell. See
http://drupal.org/node/1428638 for details.

Drush was attempting to connect to:
 Drupal version        :  8.0-dev
 Site URI              :  http://default
 Database driver       :  mysql
 Database username     :  root
 Database name         :  d8_test
 PHP executable        :  php.exe
 PHP configuration     :  H:\xampp\php\php.ini
 PHP OS                :  WINNT
 Drush version         :  7.0-dev
 Drush temp            :  Z:\Temp
 directory
 Drush configuration   :
 Drush alias files     :
 Drupal root           :  H:/xampp/htdocs/d8_test
 Site path             :  sites/default
 Active config path    :  sites/default/files/config_MoeSD5C7JSguok
                          xrBh4-UuwT_r9_jk2Z59QKdN-j9Zx9DIgHBy2dH8n
                          1rGOeKNJpaAAxBi4PzA/active
 Staging config path   :  sites/default/files/config_MoeSD5C7JSguok
                          xrBh4-UuwT_r9_jk2Z59QKdN-j9Zx9DIgHBy2dH8n
                          1rGOeKNJpaAAxBi4PzA/staging

Contenu de mes settings.php

$databases['default']['default'] = array (
  'database' => 'd8_test',
  'username' => 'root',
  'password' => '',
  'prefix' => '',
  'Host' => '127.0.0.1',
  'port' => '3306',
  'namespace' => 'Drupal\\Core\\Database\\Driver\\mysql',
  'driver' => 'mysql',
);

Notez que l'hôte de mon installation MySQL est 127.0.0.1 au lieu de localhost.

Notez également que H:\xampp\php\est ajouté à ma variable PATH, donc php.exe fait référence à H:\xampp\php\php.exe.

La sortie de drush sql-connect est le suivant:

mysql --user = root --password = --database = d8_test --Host = 127.0.0.1 --port = 3306

4
claws

La sortie de drush sql-connect est mysql --user=root --password= --database=d8_test --Host=127.0.0.1 --port=3306. Maintenant, lorsque j'exécute directement cette commande, cela n'a pas fonctionné car mysql.exe n'était pas là dans le système PATH. J'ai donc ajouté H:\xampp\mysql\bin à PATH (variable d'environnement dans Windows) et puis ça a marché!

19
claws

Assurez-vous que le paquet mysql-client-core-5.5 est installé.

Sur Ubuntu:

Sudo apt-get install mysql-client-core-5.5
5
Francisco Luz