我们有托管网络服务的Web服务器。数据库(MySQL)数据库服务器。两者都不在LAN.Can我们可以连接没有局域网的网络服务器的数据库吗?如何在.net中从网络服务器连接数据库?
如果可能的话,过程是什么?
我们有托管网络服务的Web服务器。数据库(MySQL)数据库服务器。两者都不在LAN.Can我们可以连接没有局域网的网络服务器的数据库吗?如何在.net中从网络服务器连接数据库?
如果可能的话,过程是什么?
Both are not in LAN
如果Web服务器和数据库服务器不在同一个局域网内,那么你必须跟你的IT部门,并要求他们,使他们之间的适当routing,并配置firewalls通过让您的数据库流量。如果这不是一个选项,但第三个LAN中有一台服务器可以从两台服务器访问,则可以在第三台机器上安装port forwarder。
您可以通过IP地址访问该服务器:
MySqlConnection cnn = new MySqlConnection("server=192.168.100.15;database=databasename;uid=xxxx;pwd=xxxx");
有两件事情来检查。
[编辑] PHP代码如下,没有意识到你使用的是.NET。
首先,连接到数据库时使用了哪个db主机字符串?如果您使用'localhost'
作为数据库主机,则它不起作用,因为在Web服务器的同一台计算机上没有数据库。您的主机设置需要包含正确的IP地址/端口:
define('myDbHost', '192.168.5.1:5000'); // something like that
// or, when creating the connection (I am presuming you're using PHP)
$mysqli = new mysqli("192.168.5.1:5000", "user", "password", "database");
第二个问题是确保该地址/端口组合到Web服务器可见。您必须能够从您的Web服务器创建一个套接字到数据库服务器上的该端口号。这更像是一个系统管理问题。
问题的哪个部分正好困扰着你?连接字符串?防火墙和网络?例如,你将如何连接到本地数据库? – Groo
两个系统不在局域网内,因此无法连接数据库(“错误:无法连接任何本地主机)。如果同一局域网中的数据库正在连接,则可以将数据库系统从网络服务器连接到局域网。有什么步骤? – user1727822
非常不清楚的问题没有上下文。 – Olaf