2017-02-10 129 views
0

记住我试图运行在PHP 5.4的docker环境中,因为Kohana PHP MVC是一个尚未更新且不再支持的框架,得到以下错误Docker mysql_connect():无法连接

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 

我泊坞窗命令

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 

我失去的东西,使之与数据库的工作,感谢

+0

你为什么这样做'-p 3307 :3306'? – apokryfos

+0

看到我以前的问题http://stackoverflow.com/questions/42162285/docker-using-mysql – GAV

+0

**警告**:您正在使用[一个**过时**数据库API](http://stackoverflow.com/q/12859942/19068)已经**完全从最新版本的PHP中删除。你应该使用[现代替换](http://php.net/manual/en/mysqlinfo.api.choosing.php)。 – Quentin

回答

1

一点也没有”看起来你的PHP设置正在使用tcp连接器。

无法通过插座

这似乎是使用'/var/run/mysqld/mysqld.sock'连接到本地MySQL服务器。 在缺少参数的情况下,mysql_connect调用默认使用各种PHP设置。

检查您的设置在PHP和mysql_connect()调用自己。

我的猜测是,你要么需要:

  • 更改默认设置
  • 参数添加到的mysql_connect通话。

顺便说一句,mysql_折旧,你应该使用mysqli_集通话,如果可能的。

+0

不仅仅是弃用,它完全取决于php 7.0 – hanshenrik

+0

@hanshenrik,确实,尽管我怀疑这个项目不会升级过PHP 5.x –

0

泊坞文件: - 泊坞窗 - PHP-EXT安装的mysqli - 泊坞窗 - PHP-EXT启用mysqli的

在代码: 使用mysqli_connect代替的mysql_connect

相关问题