2015-05-04 202 views
1

我有一個問題,當我嘗試與外部MySQL服務器的MySQL:訪問被拒絕

這裏連接錯誤消息:

ACCES被拒絕的用戶:"user"@"myip"

當我更改端口號時,出現不同的錯誤:

$connection =mysql_connect("192.96.206.145:8443","user","password")or die(mysql_error()); 
if(!$connection) 
{ 
    echo 'It\'s impossible to connect with the server ! check you connection or try later '; 
    //exit;  
} 
else 
{  
    if (!mysql_select_db($gamedatabase,$connection)) 
    { 
     echo'we have problem in our server plz try again later ! '; 
     //exit;  
    } 
    else 
    { 
     $etat=true; 
    } 
} 
+0

你的問題是什麼? –

+1

我強烈建議您不要使用'mysql_ *'函數,因爲它們已被棄用,並且不再用於將來版本的PHP – deeiip

回答

1

你有2個不同的服務器:

服務器A:阿帕奇+ PHP
服務器B:MySQL的

轉到服務器A
得到他的IP地址:您可以鍵入ipconfig命令 (我會假設IP地址是SO_IP

轉到服務器B
添加MySql\binPATH環境變量
執行以下命令:

mysql --user=root mysql 
CREATE USER 'SO_USER'@'SO_IP' IDENTIFIED BY 'SO_PASS'; 
GRANT ALL PRIVILEGES ON *.* TO 'SO_USER'@'SO_IP' WITH GRANT OPTION; 

返回到您的服務器A,改變PHP連接代碼

$connection =mysql_connect("SERVER_B_IP_ADDRESS:3306","SO_USER","SO_PASS")or die(mysql_error()); 
2

是你確定你的MySQL服務器在端口8443上運行?通常,這是3306.

您的MySQL服務器和用戶是否啓用了外部訪問?我的意思是bind_address和MySQL用戶表中的設置。 (是否有防火牆阻止訪問?)

此外,您應該MySQLi擴展作爲MySQL已被棄用。

1

此錯誤是數據庫密碼不正確的特徵。如果它給你一個訪問被拒絕的錯誤,這意味着它可以找到數據庫,它只是不能用提供的信息登錄到它。

也可以建議使用mysqli而不是mysql,因爲改進後的版本更安全。

仔細檢查您的密碼。你可以通過任何其他方式訪問數據庫,如phpmyadmin /數據庫編輯器,如navicat?