第一次使用 OpenShift,我了解到我能够连接到我帐户下的不同应用程序上的数据库。
我有一个应用程序 A,它是一个 Ruby/MySQL 项目。 我有应用程序 B,它是一个 PHP 项目。
我想从我的应用程序 B PHP 脚本连接到我的应用程序 A MySQL 数据库。在执行 rhc apps
命令时,我可以看到我的连接 URL 为:
连接 URL:mysql://$OPENSHIFT_MYSQLDB_HOST:$OPENSHIFT_MYSQLDB_PORT
当查看我的应用程序 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
}
最佳答案
以下知识库文章提供了一些建议:https://www.openshift.com/kb/kb-e1051-how-do-i-connect-multiple-applications-to-one-database
您可以看一下是否有帮助吗?
关于php - 从单独的应用程序连接到 mysql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18451494/