2011-05-13 5 views
4

データベースがホストされている別のサーバからmysqlデータベースに接続しようとしていますが、エラーが発生しています。PHP - 別のサーバからmysqlデータベースに接続する

私はそれがリモートのアクセス許可と関係があると推測しています。これは私が変えることができますか、私はホスティング会社にこれをさせる必要がありますか?

<?php 
$con = mysql_connect("mysql4-remote.hosting.net","myadmin","password123"); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 
?> 

Can't connect to MySQL server on 'mysql4-remote.hosting.net' (10060)PHP Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'mysql4-remote.hosting.net' (10060) in D:\websites\abc123\www\test.php on line 2

+1

は、他のサーバーで許可されているポート3306ですか? – radosch

+0

私は正直であるか分からない。私は技術的なサポートに連絡しました。なぜなら、彼らは遠隔のユーザを要求によって許可する必要があると思うからです。 – Tom

+0

確かにトンネルでも可能ですが、下記の回答を参照してください – radosch

答えて

6

私はあなたのログイン資格情報やネットワークの設定が間違っていることを、言う: さらにヘルプはこの記事を参照してください。 http://wiki.answers.com/Q/What_does_MySQL_error_number_10060_mean

あなたが外使用からのアクセスを持っていない場合トンネリングの例は次のとおりです。

$connection = ssh2_connect('SERVER IP', 22); 
ssh2_auth_password($connection, 'username', 'password'); 
$tunnel = ssh2_tunnel($connection, 'DESTINATION IP', 3307); 
$db = new mysqli_connect('127.0.0.1', 'DB_USERNAME', 'DB_PASSWORD', 
         'dbname', 3307, $tunnel) 
    or die ('Fail: '.mysql_error()); 
1

パーミス特定のリモートマシンのIPアドレスまたはワイルドカードをUSERテーブルに挿入することで、リモートユーザにリモートからリモートユーザへのアクセスを可能にします。

このリンクはあなたを助けます。 Click Here