我正在使用 php 向现有数据库发送查询,以将现有登录凭据用于基于 Web 的程序,以允许访问成员部分页面。我的网络服务器是公共的,有一个公共 ip 和一个私人 ip。但是,我的 sql server 坐在本地局域网上,没有公共 ip。我对php很陌生,但我觉得我写得很好。当我在我的电脑上使用虚拟数据库托管网站供内部使用时,该代码的效果非常好。我在我的电脑上设置了 Apache 来运行 php 代码并设置了一个 sql 数据库用于测试目的。通过在网络浏览器中输入我的 192.168.xx,我可以访问该站点并从办公室的任何其他计算机上登录和退出。
现在该站点已移至 Web 服务器,并且我正在链接到它不想工作的另一台服务器上的活动数据库。我很确定我没有任何编码错误导致这是一个配置问题。我想知道应该在哪里打开哪些端口?现有的数据库用户是否能够从远程私有 IP 查询数据库?我意识到这可能是一个初学者的问题,但我已经四处寻找了好几天,我的大脑被炸了。在建立这种类型的连接时,我需要一份基本清单,列出要查找或设置的主要事项。
网站在 192.168.1.1 上运行,公共 IP 为 173.72.173.x
SQL DB 在 192.168.1.2 上运行
我使用“用户”和“密码”登录到 sql 服务器上的 sql 引擎,所以我使用的配置文件:
$server = "192.168.1.2:3306"; // server to connect to.
$database = "myusers"; // the name of the database.
$db_user = "user"; // mysql username to access the database with.
$db_pass = "password"; // mysql password to access the database with.
$table = "dbo.users"; // the table that this script will set up and use.
我将它调用到需要查询任何内容的每个文件中。
那么这些设置正确吗?或者我是否需要在我的 sql 引擎上创建另一个用户才能从远程主机访问数据库?端口呢?sql server开了3306,就这样?