我能把我的PHP脚本放在A服务器上,并连接到B服务器上的MySQL数据库吗?
如果可以,应该如何操作呢?谢谢!
我能把我的PHP脚本放在A服务器上,并连接到B服务器上的MySQL数据库吗?
如果可以,应该如何操作呢?谢谢!
很简单,以上所有技术都相当复杂。
假设您在B服务器上有数据库,在A服务器上有网站(假设其IP为192.234.12.1)。
在cpanel中将B服务器的IP列入白名单,并在数据库中创建一个具有足够权限的新用户(假设此用户为test)。
然后将此用户创建为test@192.234.12.1。
可以。
访问同一服务器上的本地主机的方式相同,您需要将数据库主机更改为外部主机。这更多是一个配置问题,您需要授予您的数据库用户远程访问MySQL的权限,还需要确保防火墙允许在MySQL端口上进行连接。
以下是Debian示例:http://www.debianhelp.co.uk/remotemysql.htm
可以做到。
找到将上传脚本的服务器A的IP地址。请不要忘记在mysql_connect()或mysqli_connect()方法中将localhost更改为服务器B的IP地址。
现在进入存储数据库的服务器B的控制面板。
在控制面板的主页上,转到数据库部分,并单击Remote MYSQL选项。
然后添加服务器A的IP地址,单击添加主机。
现在您可以在运行在服务器A上的脚本中访问服务器B中的数据库。
请注意,获取的结果将会很慢,因为它正在从位于另一台服务器上的数据库中获取数据。
不用谢。
只需不使用另一台计算机的主机名进行连接即可。具体细节取决于您正在使用的扩展:
$mysql = mysql_connect($host, $user, $pass);
$mysqli = new mysqli($host, $user, $password, $schema);
$pdo = new PDO("mysql:host=$host", $user, $pass);
确保用户被MySQL服务器(创建用户)允许访问,并检查是否存在防火墙的限制。
$db_connect = mysqli_connect("serverB.com", "dbuser", "dbpassword", "dbname");
// Evaluate the connection
if (mysqli_connect_errno()) {
echo mysqli_connect_error();
exit();
}else{
//successful connection
echo "Yes, successful";
}
这是连接其他服务器上的另一个数据库的完美解决方案。
$dbserverName = "191.238.0.2";
$dbUsername = "lauranco_L2L";
$dbPassword = "SL92TIW5T96L";
$dbName = "lauranco_siteBits";
好老的帖子。
然而,在这里出现的所有答案中,没有一个涉及到安全问题。
将mysql端口开放到服务器外部是非常不安全的。
最安全的选择是在所有服务器上仅将mysql端口开放给localhost,并在第二个服务器内运行另一个php,使其创建所需的输出并将其传递给您在第一个服务器上运行的php。