Php 如何将信息从SQL数据库访问到另一台服务器?
我有两台服务器,为了回答我的问题,让我们把第一台服务器命名为A,第二台服务器命名为B。服务器A是一台magento服务器,有很多用户数据,服务器B是一个基本网页 我想在服务器B中创建一个分析仪表板,它使用服务器A的SQL数据库 现在的问题是从服务器B到服务器a的远程连接。 我尝试连接到服务器A,在服务器B中使用以下代码:Php 如何将信息从SQL数据库访问到另一台服务器?,php,mysql,connection,database-connection,Php,Mysql,Connection,Database Connection,我有两台服务器,为了回答我的问题,让我们把第一台服务器命名为A,第二台服务器命名为B。服务器A是一台magento服务器,有很多用户数据,服务器B是一个基本网页 我想在服务器B中创建一个分析仪表板,它使用服务器A的SQL数据库 现在的问题是从服务器B到服务器a的远程连接。 我尝试连接到服务器A,在服务器B中使用以下代码: $servername = "104.2*****"; // Server A $username = "root"; $password = "******"; $dbn
$servername = "104.2*****"; // Server A
$username = "root";
$password = "******";
$dbname = "magento";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
我得到这个错误:
连接失败:无法连接到“104.2******”上的MySQL服务器
有人能告诉我我做错了什么吗 如果数据库服务器上的设置现在允许不安全的连接,那么您可能需要创建ssh隧道来连接到远程服务器托管的数据库,这可能就是您出现该错误的原因
可能是您要连接的服务器上存在防火墙限制。MySQL端口连接可能受到限制。 尝试从运行此脚本的服务器(或其他服务器)连接到要连接到的服务器的ip/端口。 如果您可以访问linux/windows控制台,请尝试运行:
telnet 104.2***** 3306
3306是MySQL的默认端口,telnet应该可以正常工作。这不是PHP的问题,而是MySQL的配置问题。您需要在服务器上配置MySQL,以允许从服务器的IP地址进行远程连接。您知道有任何教程可以这样做吗?我现在遇到一个新错误:未知的MySQL服务器主机“104.236”。***'我现在遇到这个错误:未知的MySQL服务器主机“104.236”。***'您可能需要调整shell脚本来隧道脚本将本地服务器转换为远程ip。当它运行时,它将允许连接到远程ip。