从单独的应用程序连接到mysql数据库


Connecting to a mysql database from a separate Application

第一次使用OpenShift,我读到我可以连接到我帐户下不同应用程序上的数据库。

我有一个应用程序A,它是一个Ruby/MySQL项目。我有一个PHP项目APPLICATION B。

我想从APPLICATION B PHP脚本连接到我的APPLICATION A MySQL数据库。当执行rhc apps命令时,我可以看到我的连接URL为:

Connection URL: mysql://$OPENSHIFT_MYSQLDB_HOST:$OPENSHIFT_MYSQLDB_PORT

当我在APPLICATION A服务器上查看我的环境变量时,我发现它们是:

OPENSHIFT_MYSQLDB_PORT=3306
OPENSHIFT_MYSQL_HOST=127.7.171.129

但当我尝试连接时:

$db = new mysqli('127.7.171.129', 'adminuser', 'adminpw', 'productiondb',3306);

我扔掉了这个:

object(mysqli)#1 (17) {
  ["affected_rows"]=>
  NULL
  ["client_info"]=>
  NULL
  ["client_version"]=>
  int(50169)
  ["connect_errno"]=>
  int(2005)
  ["connect_error"]=>
  string(57) "Unknown MySQL server host 'http://127.7.171.129' (1)"
  ["errno"]=>
  NULL
  ["error"]=>
  NULL
  ["field_count"]=>
  NULL
  ["host_info"]=>
  NULL
  ["info"]=>
  NULL
  ["insert_id"]=>
  NULL
  ["server_info"]=>
  NULL
  ["server_version"]=>
  NULL
  ["sqlstate"]=>
  NULL
  ["protocol_version"]=>
  NULL
  ["thread_id"]=>
  NULL
  ["warning_count"]=>
  NULL
}

下面是一篇KB文章,其中有几个建议:https://www.openshift.com/kb/kb-e1051-how-do-i-connect-multiple-applications-to-one-database

你能看看是否有用吗?