php - 通过 PHP 无需主机名即可访问 MySQL 数据库

标签 php mysql database proxy

我这样做已经有几年了,但我还没有遇到过这样的事情。我正在租用一个带有 MySQL 存储的网络服务器。出于安全原因,托管公司拒绝为我提供主机名以从 php 脚本连接到 MySQL 服务器。原因是服务器上有IP过滤器,只能使用白名单IP连接到它。对于这种情况有什么解决方案,例如服务器端代理吗?我也可以通过 phpMyadmin 访问 MySQL 服务器。 我做了一些研究,发现 Navicat 有代理支持。虽然它不是免费的。

最佳答案

根据您的描述,听起来您有一台服务器,MySQL、PHP 和 phpMyAdmin 都在同一服务器上运行。如果是这种情况,那么通常 MySQL 的主机名将是“localhost”,可能会添加端口或其他代码。对于网络托管公司来说,不允许远程 MySQL 访问是很常见的,尽管好的公司会默认关闭它,并允许您为特定 IP(最好)或“任何地方”打开它。

当您登录 phpMyAdmin 时,请查看主窗口的最顶部,您应该会看到类似 Server: localhostServer: www.example.com:3306 的内容 - 这是任何 MySQL 访问的主机名,前提是 PHP 代码与 phpMyAdmin 在同一服务器上运行。

如果您确实需要在不同的服务器上运行程序并访问该 MySQL 数据库,那么您可能不走运。

关于php - 通过 PHP 无需主机名即可访问 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45163139/

相关文章:

php - 为什么一个对象中的私有(private)变量是 "visible"来自外界?

mysql - Linux Mandriva : Tomcat can not get MySQL database connection, 为什么?

mysql - 在 mysql 表中存储大自定义订单 ID 的方法

python - 尝试运行 Django-admin dbshel​​l 时出错,没有名为 'myprojectname' 的模块

php - Doctrine,symfony2 正确的列类型用于计算小时数

php - 服务器端应用程序的 Google+ 登录验证无法正常工作

php - 非常简单的 PHP 代码使 Apache 崩溃

java无法连接名称中带有下划线的数据库?

php - 在 php 中使用 ffmpeg exe

ruby-on-rails - Rails 使用动态选项枚举