如何将信息从 SQL 数据库访问到另一台服务器


How to access information from a SQL database to another server?

我有两个服务器,为了我的问题,让我们命名第一个服务器A,第二个服务器B.服务器A是一个拥有大量用户数据的magento服务器,服务器B是一个基本的网页。

我想在服务器 B 中创建一个使用服务器 A 的 SQL 数据库的分析仪表板。

现在的问题是从服务器 B 到服务器 A 的远程连接。我尝试连接到服务器 A,在服务器 B 中使用以下代码:

$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 隧道以连接到远程服务器托管的数据库,这可能是您收到该错误的原因。

http://kb.mediatemple.net/questions/133/Tunnel+local+MySQL+server+through+SSH#gs

可能是

您要连接的服务器上存在防火墙限制。MySQL 端口连接可能会受到限制。尝试从运行此脚本的服务器(或其他服务器)连接到要连接到的服务器的 ip/端口。如果您有权访问 linux/windows 控制台,请尝试运行:

telnet 104.2***** 3306

3306是MySQL的默认端口,telnet应该可以工作。