2010-07-16 6 views
2

godaddy에서 pdo를 사용하여 데이터베이스에 연결하려고 시도했지만 성공하지 못했습니다. ,PDO가있는 godaddy에 db 연결에 문제가 있습니다

SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 

그런 다음 내가 웹 주위에 보면 내가 소켓 부분을 변경할 필요가 있음을 발견

처음에 나는 오류를 얻었다. 내 소켓을 찾은 다음 unix_socket=/tmp/mysql-1.sock을 사용하여 소켓을 변경했습니다. 나는 또한 서버의 IP 주소 데이터베이스를 호스팅하고 여전히 같은 오류를 얻을 수있는 호스트와 호스트 이름을 변경 시도

SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/tmp/mysql-1.sock' (2) 

: 지금은 오류가 발생합니다.

누군가 나를 도와 줄 수 있습니까? Godaddy에서 호스팅하는 Im.

미리 감사드립니다.

편집 # 1

$dbh = new PDO('mysql: hostname=122.100.111.0;port=3306;unix_socket=/tmp/mysql-1.sock; dbname=orson', 'username', 'password'); 
    foreach($dbh->query('SELECT * from q_users') as $row) { 
     print_r($row); 
    } 
    $dbh = null; 
} catch (PDOException $e) { 
    print "Error!: " . $e->getMessage() . "<br/>"; 

} 
+0

코드를 붙여 넣으십시오. 데이터베이스가 다른 서버에있을 때 localhost에 연결하려고합니다. – Naktibalda

답변

0

GoDaddy이 지원 팀으로 메시지를 교환 한 후 나는 그들의 공유 호스팅 계획에 PDO를 지원하지 않는 것을 발견했다.

+2

어쨌든 나는 이것을 말하고 싶지만 바위처럼 떨어 뜨린다. PDO를 지원해서는 안되는 이유가 전혀 없습니다. (즉, 귀하의 실수는 MySQL이 포트에 연결하려고 시도하는 대신 소켓 파일을 찾는 것이기 때문에 ...) – Charles

+0

설명을 주셔서 감사합니다. – Tebo

+0

어떤 호스트를 사용합니까? – Tebo

0

동일한 오류가 발생했습니다. 나는 당신의 호스트 네임이 틀렸다고 생각합니다. 여기에 호스트 이름을 찾을 수있는 문서가 있습니다. 그들은 PDO를 지원합니다. 전체 애플리케이션을 실행하고 있습니다.

http://support.godaddy.com/help/article/39/locating-your-databases-host-name

+0

그들은 2010 년에 그것을 지원하지 않았습니다. 어쩌면 지금. – Tebo

0

내가 같은 문제가 있어요!

포럼을 통해 살펴본 결과, Go Daddy의 Windows 플랫폼이 지원하지 않는다는 것을 알았지 만, Linux는 그렇습니다. 그들은 전환을 청구하지 않습니다.

4

PDO는 에서 GoDaddy에서 리눅스 호스팅 계획을 지원하지만 분명히 일부 계정에의 cPanel을 통해 활성화되어야한다 :

  1. 내 계정에서 메뉴를 호스팅에서의 cPanel로 이동합니다.
  2. "PHP 버전 선택"로 이동하십시오.
  3. 드롭 박스 (예 : 5.5)에서 PHP 버전을 선택하고 "현재로 설정"을 클릭하십시오 ().
  4. 원하는 기능 (예 : PDO)의 확인란을 선택하고 "저장"을 클릭하십시오.

Note: You may need to check other boxes that one would normally think are on by default (e.g. mysqli).

이를 알아 내기 위해 GoDaddy와 기술 지원 말하는 시간 오늘 밤 소비와 내가 공유하는 것이라고 생각.

관련 문제