【问题标题】:Drush can't connect to local MySQL through socket on WAMPDrush 无法通过 WAMP 上的套接字连接到本地 MySQL
【发布时间】:2014-11-11 21:50:06
【问题描述】:

*我在 drupal.stackexchange 上问过这个问题,但这个问题似乎更多地与 Cygwin 和 WAMP 相关,所以我在这里重新发布。

尝试在 Windows 7 的本地开发环境中设置 Drush,但无法正确配置 MySQL。我通过 Cygwin 运行的测试命令,结果错误如下:

$ drush sql-query "SELECT * FROM erg_node WHERE nid=3"
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

我可以在 phpmyadmin 中运行相同的 SQL 语句,它运行良好。我可以在远程站点上运行相同的 drush 命令,它也可以工作,所以它似乎必须与 MySQL 是如何使用 WAMP 和 Cygwin 配置的有关。当我通过 Cygwin 检查 which mysql 时,我返回 /usr/bin/mysql 而不是 WAMP mysql 的路径。但是 WAMP mysql 路径是在我的系统环境 PATH 变量中设置的,所以应该可以访问。

我尝试将 my.ini 更改为包含 host = 127.0.0.1,将 my.ini 文件复制到 /etc/my.cnf,然后运行 ​​chmod -R 755 /tmp/。 my.ini 文件已包含socket = /tmp/mysql.sock,我尝试添加符号链接,即ln -s /cygdrive/c/wamp/tmp/mysql.sock /tmp/mysql.sock。任何帮助,将不胜感激。谢谢!

*Edit - 上面的 drush 命令在 Powershell 中正确执行,所以问题似乎是 Cygwin 使用的是 /usr/bin/mysql 而不是 WAMP mysql 命令。有没有办法改变 Cygwin 使用的 mysql 命令?

【问题讨论】:

  • 您检查过本文中列出的要点吗? stackoverflow.com/questions/11657829/…>

标签: mysql drupal cygwin wamp drush


【解决方案1】:

必须将我想要使用的 mysql 版本(WAMP 版本)的路径添加到我的.bash_profile 中我的 PATH 变量的开头,回想起来非常明显! SO post 关于 .bash_profile 中的 PATH 变量。

【讨论】:

    猜你喜欢
    • 2011-01-12
    • 2015-04-11
    • 2019-07-03
    • 2017-01-21
    • 2013-03-04
    • 2020-11-14
    • 2011-02-25
    • 2017-10-07
    相关资源
    最近更新 更多