尝试连接到MySQL通过PHP命令行通过XAMPP(ubuntu / cakephp)

我试图通过xampp运行蛋糕壳,我遇到了一些问题。

什么工作

  • 我可以通过Apache(在Web浏览器)运行时连接PHP到Mysql,
  • 我可以通过inputphp在bash中运行PHP CLI,在xampp下设置bin文件夹作为环境variables
  • 我可以运行蛋糕,我设置了蛋糕/控制台目录作为一个环境variables
  • 我可以在没有附加任何模型的情况下运行我的shell脚本

什么都行不通

连接模型时运行shell脚本。 我得到以下错误:PHP警告:mysql_connect():无法连接到本地MySQL服务器通过套接字'/var/run/mysqld/mysqld.sock'(2)在/ opt / lampp / htdocs / cakephp / cake /第561行的libs / model / datasources / dbo / dbo_mysql.php

我试过了

原来,cli报告说找不到mysql_connect。 所以我安装了php5-mysql,尽pipe我有更好的判断(我认为XAMPP已经做出了必要的关系)。 我安装它之后,它正在寻找mysql.sock。 我试着改变/etc/php5/cli/php.ini下的位置。 也许这不是正确的位置,或者我没有改变正确的variables。

问题

我可以在哪里更改mysql.sock的位置? 或者,我这样做不正确,有没有更好的办法?

你应该find一个my.cnf文件所在的位置,我猜这是在/opt/lampp/etc之类的地方或者类似的东西。 这个文件有一个[mysqld]节,其中socket=/path/to/mysql.sock参数。 您可以使用find /opt/lampp -name my.cnf来查找configuration文件。

所以…我的捷径解决scheme是:

 sudo mkdir /var/run/mysqld sudo ln -s /opt/lampp/var/mysql/mysql.sock /var/run/mysqld/mysqld.sock 

它在那之后工作。 我试图将/opt/lampp/etc/my.cnf复制到/etc/mysql/my.cnf,但是这并没有改变错误。

我希望这可以帮助别人 :)!