Docker mysql_connect():无法连接

时间:2017-02-10 15:31:49

标签: php mysql docker

请记住,我试图使用php 5.4在docker环境中运行,因为Kohana PHP MVC是一个尚未更新且不再受支持的框架,会出现以下错误< / p>

mysql_connect(): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)" ["string":"Exception":private]=> string(0) "" ["code":protected]=> int(2) ["file":protected]=> string(64) "/var/www/html/modules/database/classes/kohana/database/mysql.php

我的docker命令是

sudo docker run -d -p 8080:80 -p 3307:3306 -p 22:22  -v   "/home/me/public_html/project-folder:/var/www/html" ushios/lamp-ubuntu

我遗漏了一些东西让它与数据库一起工作,谢谢

2 个答案:

答案 0 :(得分:1)

您的PHP设置看起来不像是使用tcp连接器。

  

无法通过套接字

连接到本地MySQL服务器

似乎正在使用&#39; /var/run/mysqld/mysqld.sock' mysql_connect调用默认在没有参数的情况下使用各种PHP设置。

检查您在PHP中的设置以及mysql_connect()来电。

我的猜测是你需要:

  • 更改默认设置
  • 将参数添加到mysql_connect调用。

除此之外, mysql _ 已弃用,如果可能,您应该使用 mysqli _ 调用。

答案 1 :(得分:1)

Docker文件:   - docker-php-ext-install mysqli   - docker-php-ext-enable mysqli

代码:  使用mysqli_connect而不是mysql_connect