【问题标题】:Php mysql connection to the Cpanel dbphp mysql 连接到 Cpanel 数据库
【发布时间】:2013-08-08 05:23:14
【问题描述】:

如何从 Localhost 连接 cpanel db。 我知道从 localhost 连接。但我需要从服务器连接。 我正在尝试这样

<?php
mysql_connect("208.91.199.141","username","password") or die(mysql_error());
mysql_select_db("db");
?>

我得到一个错误

警告: mysql_connect() [function.mysql-connect]:C:\xampp\htdocs\ 中用户 'glansade'@'49.206.54.187' 的访问被拒绝(使用密码:YES)第 2 行的 calendar\db_server.php 用户 'glansade'@'49.206.54.187' 的访问被拒绝(使用密码:YES)。

如何解决这个....?请帮我。谢谢

【问题讨论】:

  • 您确定...您使用的是正确的凭据,并为用户设置了正确的权限??
  • 是的。我给了正确的用户名和密码。但我不知道是什么问题..?
  • 您是否创建了一个有权访问您的 php 服务器的用户?可能是您的 ip 地址没有为 mysql 用户添加
  • 如果您只是学习 PHP,请不要学习过时的mysql_query 接口。这很糟糕,并且在 PHP 的未来版本中被删除。像PDO is not hard to learn 这样的现代替代品。像PHP The Right Way 这样的指南可以帮助解释最佳实践。始终绝对确定您的用户参数是properly escaped,否则您将遇到严重的SQL injection bugs

标签: php mysql cpanel


【解决方案1】:

从 cpanel 转到 RemoteMysql

您必须添加%.%

然后你就可以从远程数据库连接了。

【讨论】:

  • 这听起来超级危险。这样,您就允许任何 IP 地址远程连接到您的数据库,前提是它们具有用户名和密码。我会不惜一切代价避免这种情况。
【解决方案2】:

您不希望将 %.% 添加到远程数据库访问主机,因为这是一个安全问题。 %.% 是一个通配符,在这样的访问主机中使用该通配符会将 mysql 暴露在互联网上,并且大大增加了未经授权的数据库访问的可能性。

根据您的错误,您连接的 IP 是 49.206.54.187。您将希望在远程数据库访问主机中使用此 IP 地址。如果您不知道要使用的 IP 地址,您可以通过http://cpanel.net/myip查看您的 IP

我还看到您正在使用您的 cPanel 帐户用户名进行连接。虽然这应该可行,但许多人倾向于为每个数据库设置一个单独的帐户。为此,请按照这些说明进行操作。

  • 在 cPanel 中,选择 MySQL 数据库
  • 在“数据库”部分的“MySQL 用户”下,创建一个新的 MySQL 用户。
  • 创建该用户后,在“将用户添加到数据库”部分中将该用户添加到数据库中
  • 确保选择所有权限。

谢谢!

【讨论】:

    【解决方案3】:

    我不是专家,但我认为你应该试试:

    mysql_connect("localhost","username","password") or die(mysql_error());
    

    而不是:

    mysql_connect("208.91.199.141","username","password") or die(mysql_error());
    

    【讨论】:

      猜你喜欢
      • 2017-06-30
      • 2012-01-01
      • 2012-12-20
      • 1970-01-01
      • 2018-10-15
      • 2019-02-23
      • 1970-01-01
      • 1970-01-01
      • 2020-03-01
      相关资源
      最近更新 更多