2011-03-28 3 views
2

데스크탑 프로그램이 업데이트하는 서버에서 데이터베이스를 실행하고 있습니다. 내 프로그램은 C#으로 작성되었으며 MySQL Connector를 사용하여 잘 연결할 수있다.PHP가 포함 된 원격 mysql에 연결할 수 없습니다.

private void Initialize() 
    { 
     server = "xxx.com"; 
     database = "test01"; 
     uid = "user"; 
     password = "pass"; 
     string connectionString; 
     connectionString = "SERVER=" + server + ";" + "DATABASE=" + 
     database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";"; 

     connection = new MySqlConnection(connectionString); 
    } 

나는 내 웹 사이트에 PHP 스크립트 내 데이터베이스에서 일부 데이터를 검색 할 수 있도록하려면,하지만 난 같은 연결 정보와 함께, 내 데이터베이스와 함께 작동하도록 심지어 간단한 연결을 얻을 수 없습니다. 누군가가 내가 멍청한 짓을하고있는 중이 야 말해와 말할 수 ... 나는 PHP에 익숙하지 않다, 나는 그냥 바보 같은 실수 :

$con = mysql_connect("xxx.com","user","pass"); 
if (!$con) 
{ 
    die('Could not connect: ' . mysql_error()); 
} 

이 그냥 죽어 유지를 만들고 있어요 것을 바라고 있어요 어떻게 고칠 수 있니? 사전에

감사합니다, LordJesus

편집 : 내가 점점 계속 오류는 이것이다 : 는 연결할 수 없습니다 : 시스템 오류 '최초의 통신 패킷을 읽는'에서 MySQL 서버에 분실 연결 : (110)

EDIT # 2 : '사용자'는 이미 모든 IP를 포함해야하는 '%'에 대한 액세스 권한을 이미 부여 받았습니다. phpinfo()를 실행할 때; 나는 정보가있는 mysql 섹션을 포함하여 많은 정보를 얻는다.

해결되었거나 공개되지 않았습니까? 좋아, 왜 실패하는지 알 것 같아. 내 웹 사이트는 one.com에서 주최되고 서포터 중 한 사람과 채팅을하면 내 도메인의 원격 데이터베이스에만 연결할 수 있음을 알았습니다. 그건 내가 원하는 것이 아니야. 그래서 그것을 풀지는 못했지만 왜 나는 그 오류를 발견했습니다. 이제는 그 문제를 해결할 방법을 찾아야합니다 ...

+1

특정 오류 메시지가 있습니까? 올바른 포트에 연결하고 있습니까? – drudge

+0

정확히 무엇이 발생합니까? 약간의 오류가 발생합니다. –

+0

PHP가 제대로 구성 되었습니까? phpinfo()를 먼저 인쇄하십시오. MySql 정보를 볼 수 있는지 확인하십시오. MySql에 대한 결과가 없으면 먼저 구성해야합니다. 이것을 확인하십시오 http://www.php.net/manual/en/mysql.installation.php – ace

답변

2

다음과 같은 환경에서 나는 소리가납니다. C# 프로그램이있는 바탕 화면, 다른 컴퓨터에있는 MySQL 서버 및 마지막으로 웹 서버 자율적이며 해당 시스템 중 하나에 연결되어 있지 않습니다. 이 경우 웹 서버에서 데이터베이스에 대한 사용 권한을 부여해야합니다.

다음은 웹 서버에 대한 선택 권한을 부여합니다.

GRANT SELECT ON test01.* TO 'user'@'ip.of.the.webserver' IDENTIFIED BY 'pass'; 
+0

웹 서버에 유효한 역방향 조회가있는 경우 MySQL은 인증을 위해이를 사용할 수 있습니다. 웹 서버의 역 DNS를 살펴보고 GRANT 문에 대한 IP 주소 대신 사용하십시오. –

+0

방금이 작업을 시도했지만 해결되지 않았습니다 ... @Sean C. 웹 서버의 역 DNS를 얻으려면 어떻게해야합니까? – Daniel

+0

dig에 액세스 할 수 있으면 해당 도구를 사용해보세요. 다음은 그 예입니다. www.google.ca를 파헤 치면 5 개의 IP가 생성됩니다. 하나는 74.125.226.146; 그래서 저는 이것을 예로 들어 사용하겠습니다. 역방향 조회는 포인터 레코드 (PTR)에 의해 처리됩니다. 'dig PTR 146.226.125.74.in-addr.arpa'는 주소에 대한 연관된 ​​PTR 레코드를 찾으려고 시도합니다. –

관련 문제