2017-02-10 2 views
0

마음에두고 있습니다. Kohana PHP MVC가 업데이트되지 않아 더 이상 지원되지 않는 프레임 워크이기 때문에 PHP 5.4로 도커 환경에서 실행하려고합니다. 오류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

deprecated 이상으로, PHP 7.0에서 완전히 제거되었습니다. – hanshenrik

+0

@hanshenrik, True,이 프로젝트가 PHP 5.x 이상으로 업그레이드되지 않을 것으로 의심됩니다. –

0

도커 파일 : - 고정 표시기-PHP-EXT가 활성화 mysqli

코드에

- mysqli 고정 표시기-PHP-EXT는 설치 : 사용 mysqli_connect 대신로 mysql_connect

관련 문제