2014-12-01 5 views
0

필자는 정확히 같은 문제를 대상으로 여러 게시물을 읽었지만 읽은 답변 중 아무 것도 나를 위해 일하지 않았습니다.PHP를 통해 원격 MySQL 서버에 연결할 수없는 이유는 무엇입니까?

내가 다음 명령을 사용하여 만들어 내 네트워크의 데이터베이스에 액세스하기 위해 노력하고있어 :

쿼리에
$con=mysqli_connect("1.2.3.4","user","pass","db_name"); 

모든 데이터가 정확한지를,하지만 오류를 받고 있어요 :

Warning: mysqli_connect(): (HY000/1130): Host '4.3.2.1' is not allowed to connect to this MySQL server in C:\xampp\htdocs\ajax_refresh.php on line 4 

라인 4는 위의 $con 문입니다.

나는 MySQL의 쉘에 사라지고에 입력 한 :

# mysql -u user -p -h 1.2.3.4 

그것은 잘 연결합니다. 또한 데이터를 연결하고로드하는 Excel에서 작성한 응용 프로그램을 통해이 원격 컴퓨터의 데이터베이스에 액세스 했으므로 컴퓨터에 서버에 대한 올바른 액세스 권한이 있다는 것을 알고 있습니다.

나는 또한 내 아파치 - xampp.conf 파일로 여기에 섹션을 추가했습니다 :

Alias /phpmyadmin "C:/xampp/phpMyAdmin/" 
    <Directory "C:/xampp/phpMyAdmin"> 
     AllowOverride AuthConfig 
    Allow from all   
    Require all granted 
    </Directory> 

외부 소스로부터 액세스 할 수 있도록, 그리고 내가 이름과 IP 주소와 일치이 사용자 'user'@'1.2.3.4'을 생성 에서 연결 중.

내가 뭘 잘못하고 있니?

+0

그래서 내 첫 번째 줄 : '내 동일한 문제를 대상으로 여기에 여러 게시물을 통해 읽을 수 있지만 한 I'는 답변 없음 나는 나를 위해 일 해왔다. "는 내가 여기에서 발견 한 해결책을 읽었으며 그들이 일하지 않았다는 것을 나타낼 수도있다. 하지만 당신은 그냥 복제로 표시 할 수 있습니다 ....... – lordterrin

답변

-1

MySQL은 로컬 호스트에서 이외의 연결에 연결하는 것을 허용하지 않습니다

+0

잘못 생각합니다. 이것은 사실이 아닙니다. 당신은 단어로이 지시어를 따라야합니다. http://www.rackspace.com/knowledge_center/article/mysql-connect-to-your-database-remotely 나는 이것을 10 번하고 성공적으로 연결할 수있었습니다. 내 로컬 호스트 또는 모든 호스트에서 원격 collocated mysql 데이터베이스. mysql에 연결하려고하는 수신 IP 주소로 mysql의 모든 명령을 실행해야한다. 그것의 mysql 보안 기능이 방법은 누구도 db에 연결할 수 없습니다. – unixmiah

+0

물론 원래 게시물에 명시된 것처럼 Excel 매크로를 통해 원격으로 서버에 액세스했습니다. – lordterrin

+0

이것이 문제입니다 : 호스트 '4.3.2.1'은 연결이 허용되지 않습니다. mysql 데이터베이스 mysql에 들어가서 사용자와 db 테이블을 ip 주소로 업데이트해야합니다. 나중에 권한을 플러시하십시오. – unixmiah

관련 문제