2015-04-05 152 views
0

我被给了一个用户名,密码,数据库名称和一个用于访问特定应用程序的phpmyadmin控制台的URL。现在我想连接到数据库,我也知道哪个ip地址。MySql和PHPMyAdmin密码

我想(从我的本地安装的XAMPP),这给了我一个错误,说运行下面的PHP代码片段:

“警告:mysql_connect()函数:拒绝访问用户 'XXXXXXX' @ 'localhost' 的“

<html> 
 
<head> 
 
</head> 
 
<body> 
 

 
<?php 
 
$username = "given_username"; 
 
$password = "given_password"; 
 
$db_name = "given_database_name"; 
 
$hostname = "xxxxx:3306"; //remote address 
 

 
//connection to the database 
 
$dbhandle = mysql_connect($hostname, $username, $password) 
 
    or die("Unable to connect to MySQL"); 
 
echo "Connected to MySQL<br>"; 
 

 
?> 
 

 
</body> 
 
</html>

我的问题是:MySQL的用户名和密码,并phpMyAdmin的相同,并且,我在正常运行呢?

+0

您被授予的mysql用户最有可能只能访问本地主机,即 - 运行mysql服务器本身的系统,并且不具有远程访问权限。 – dbinns66 2015-04-05 15:00:32

+0

您可以使用telnet轻松测试:telnet 3006 ...如果超时,那么您无法像这样远程连接。 – arkascha 2015-04-05 15:02:18

回答

0

看着你的问题,我假设php代码和MySQL服务器运行在不同的机器上。在这种情况下,你必须在MySQL服务器中创建一个远程用户。

  1. 登录到MySQL服务器上你的MySQL控制台:

    的mysql -u根-p

  2. 授予访问远程用户

    的mysql> GRANT ALL ON given_database_name * TO given_username @'< php服务器的ip地址 >'IDENTIFIED BY'given_password';

现在你应该能够从远程机器连接MySQL。如果您的MySQL服务器位于防火墙之后,请确保您打开MySQL的传入端口(默认为3306)。