2015-05-04 162 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?