The following problem occurs when running certain Drush commands, such as
drush en features which outputs:
Command pm-enable needs a higher bootstrap level to run - you will need to invoke drush from a more functional Drupal environment to run this command.
The drush command 'en features' could not be executed.
Drush was not able to start (bootstrap) the Drupal database.
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-aliasesfor 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: 7.58
Site URI: http://default
Database driver: mysql
Database hostname: mysql
Database port: Database username: default
Database name: default
PHP executable: /usr/bin/php PHP configuration: /etc/php/7.2/cli/php.ini
PHP OS: Linux
Drush script: /var/www/vendor/drush/drush/drush.php
Drush version: 8.1.17
Drush temp directory: /tmp
Drush alias files:
Drupal root: /var/www
Drupal Settings File: sites/default/settings.php
Site path: sites/default
This problem has been reported previously, but in different contexts, not in the specific setup I am working with, which consists of separate docker containers on a linux hosting server.
- Apache 2
All the docker containers are running, as well as the (development) website that is built with drupal, which does connect to the database. Drush had previously been used for setting things up, but something seems to have broken during the development process. Drush had been added to the project using composer, as suggested on Install a site-local Drush and Drush Launcher.
The error seems independent of the directory where the command is executed. Moreover, the settings.php file exists at the path mentioned in the output above and contains the correct database configuration.
drush sql-cli returns the following message.
sh: 1: mysql: not found
SQL client error occurred.
Do you have any idea on what the problem might be?