只有一些drush命令工作

时间:2014-08-12 12:42:13

标签: xampp drush

我试图在我的ubuntu笔记本电脑上工作,因为我想在Drupal中尝试omega主题,但有些命令不起作用。

例如:drush en omegadrush omega-wizard

我得到的错误:Drush无法启动(引导)Drupal数据库。 要么 命令pm-enable需要更高的引导级别才能运行 - 你会[错误] 需要从更具功能性的Drupal环境中调用drush来运行 这个命令。

我已经读过其他帖子,这与drush无法连接到我的mysql数据库有关,我应该更改' localhost'至' 127.0.0.1'在我的settings.php。

我在我的ubuntu 14.04上使用XAMPP和drush v 7.0-dev。

我还尝试使用xampp在我的Windows 8.1机器上设置drush并遇到同样的错误。

请帮助我,我整个周末一直试着匆匆忙忙,我真的很绝望:(

' omega-wizard'完整错误消息

drush命令&omega-wizard'无法找到。运行drush [error] cache-clear drush以清除命令文件缓存(如果有) 安装了新的扩展。 Drush无法启动(引导)Drupal数据库。 [错误] 提示:当Drush试图:  *引导尚未安装或没有安装的站点 配置数据库。在这种情况下,您可以选择另一个站点 通过指定与--uri一起使用的URI来工作数据库 命令行上的参数。请参阅drush topic docs-aliases 细节。  *通过套接字连接数据库。套接字文件可能是 错误或php-cli可能无法在被监禁的shell中访问它。看到 http://drupal.org/node/1428638了解详情。

Drush试图连接到:  Drupal版本:7.31
 网站URI:http://默认
 数据库驱动:mysql
 数据库主机名:localhost
 数据库端口:
 数据库用户名:root
 数据库名称:drupal1
 PHP可执行文件:/ usr / bin / php
 PHP配置:/etc/php5/cli/php.ini
 PHP OS:Linux
 Drush版本:7.0-dev
 Drush temp目录:/ tmp
 捶打配置:
 Drush别名文件:
 Drupal root:/ home / trautmann / websites / mywebsite  网站路径:sites / default

4 个答案:

答案 0 :(得分:3)

Wohoo我找到了解决方案!

感谢Nathan我跟着错误' sh:1:mysql:not found'由drush sql-cli提供并发现:

http://www.webbykat.com/2012/06/solving-sh-mysql-command-not-found-mamp-pro-2 这说,我的mysql命令可能没有映射到正确的位置。

我通过将此行放入我的.bash_profile

来调整xampp的解决方案
export PATH=$PATH:/opt/lampp/bin

和繁荣!它起作用了:))

再次感谢nathan

修改 另外,我发现drush需要在你的xampp文件夹中使用php可执行文件,你可以在你的.bash_profile中设置你的PHP路径

export DRUSH_PHP=/opt/lampp/bin/php

答案 1 :(得分:0)

要查看drush是否连接到您的站点,您应该访问站点的根目录以进行单站点安装,或者访问站点特定目录以进行多站点安装,然后运行“drush st”以查看您的站点是否已配置,这就是我得到的:

NY-MC-NB-NANDERSEN:muscleandfitness.com nandersen$ drush st

Drupal版本:7.31
 网站URI:http://muscleandfitness.com
 默认主题:garland
 行政主题:花环
 PHP配置:/Applications/MAMP/bin/php/php5.4.10/conf/php.ini  榨版:5.9
 捶打配置:
 Drupal root:/ Users / nandersen / dev / drupal7-core / docroot
 网站路径:sites / muscleandfitness.com
 文件目录路径:sites / muscleandfitness.com / files

我是从

运行的
/Users/nandersen/dev/drupal7-core/docroot/sites/muscleandfitness.com
多站点安装

从我上面看到的情况来看,看起来你的匆忙找不到你的网站并正确连接。

例如,如果我不在正确的目录中,当我运行“drush st”时我会得到这个

NY-MC-NB-NANDERSEN:docroot nandersen $ drush st  Drupal版本:7.31
 默认主题:garland
 行政主题:花环
 PHP配置:/Applications/MAMP/bin/php/php5.4.10/conf/php.ini  榨版:5.9
 捶打配置:
 Drupal root:/ Users / nandersen / dev / drupal7-core / docroot

要测试您是否已连接到数据库,可以运行命令“drush sql-cli”,该命令将启动到当前引导的数据库中。

要查看某个命令是否可用,例如“omega-wizard”,您只需键入“drush”然后将其传递给grep然后搜索词,那么“drush | grep wizard”,这将输出任何命令在帮助文件中有向导。如果我忘记命令,这就是我看到可用的drush命令的方式。由于您无法启用omega,并且omega命令不可用,这是您可能无法正确连接到数据库的另一个迹象。

答案 2 :(得分:0)

对于运行XAMPP的Windows环境,我将C:\ xampp \ mysql \ bin \添加到PATH环境变量中,以便找到mysql.exe。

答案 3 :(得分:0)

在发出drush命令时打开调试消息将提供有关不起作用的更多信息。如果无法运行mysql-d选项会报告,以便您知道解决问题的方向。

drush -d omega-wizard
  

...

     

Drush bootstrap阶段:_drush_bootstrap_drupal_configuration()[0.1 [bootstrap]   秒,4.48 MB]

     

sql-query:SELECT 1; [0.16秒,4.6 MB]

     

执行:mysql --defaults-extra-file = / private / tmp / drush_aATUxP --database = drupal --host = localhost --silent< /私人/ TMP / drush_JBBjco

     

sh:mysql:找不到命令