远程数据库连接字符串

时间:2012-11-29 17:07:38

标签: php mysql database-connection

您好我是PHP和MySQL的新手我在LAMP上创建了一个应用程序,并在net4.com上传了一个网站托管公司。他们使用phpMyAdmin连接数据库,当我尝试使用php连接到数据库并查询数据库时,我能够成功解决问题。我正在使用mysql_connect()函数,我已经在我的本地机器上成功使用它连接到远程数据库,即

$link = mysql_connect("118.67.248.12",  "username", "password");

其中“118.67.248.12”是我的数据库所在服务器的IP地址,它会引发以下错误:

  

“1045访问被拒绝用户'Technosaar'@'118.67.248.190'(使用   密码:是)“

如果我使用localhost“代替”118.67.248.12“,则会抛出以下错误:

  

“2002无法建立连接,因为目标机器是主动的   拒绝了。“

我已经被警告称为“net4”支持guyz,但问题仍然存在有人请帮助我,五一劳动节!

2 个答案:

答案 0 :(得分:0)

后者(localhost)无效我假设因为Web服务器和数据库服务器没有在同一台机器上运行。

您确定在服务器上正确设置了密码吗?这看起来像是我的身份验证错误。

答案 1 :(得分:0)

" 1045拒绝访问用户' Technosaar' 118.67.248.190' (使用密码:是)"从Web服务器提示缺少用户Technosaar的访问权限。 登录phpmyadmin并输入命令

show grants;

show grants for '<myuser'@'<host>';

应该有一行像

  

grant&lt; privilege&gt; on&lt; mydatabase&gt;到&#39;&lt; myuser&gt;&#39; @&#39;&lt; host&gt;&#39;

您将看到为您的用户配置了哪些访问权限。如果您的网络服务器未列出,则必须

grant all privileges on <mydatabase>.* to '<myuser>'@'<host>';

或您的数据库所需的任何权限。

当然,插入适当的数据库名称,用户名和网络服务器主机。