将一个应用程序连接到另一个应用程序的数据库时出错

Error when connecting one app to a different app's database

我按照 post 中的说明进行操作:

https://blog.openshift.com/sharing-database-across-applications/

我有两个应用程序 运行 成功,数据在我的 production 应用程序中,我的 reports 应用程序正在尝试查询 production 数据库。从我的 production 应用程序中,我可以获取主机、端口、用户名和密码。

在我的 reports 应用程序上,我有一个简单的测试脚本来测试连接性:

$db = mysql_connect('127.7.171.129:3306', 'USER','PW');

if (!$db) {
  echo "Could not connect to database: " . mysql_error();
} else {
  echo "Connected to database.<br>";
}

我得到的错误是:

无法连接到数据库:与位于 'reading initial communication packet' 的 MySQL 服务器失去连接,系统错误:113

如有任何帮助,我们将不胜感激。

您需要将生产应用程序创建为缩放应用程序,以便您可以从其他应用程序访问它的数据库(因为数据库将在它自己的设备上)。由于您的数据库连接使用端口 3306,因此它可能不是扩展应用程序,因为端口号会有所不同,主机将是 FQDN 而不是 ip 地址。