OpenShift:在两个应用程序之间共享MySQL数据库

OpenShift:在两个应用程序之间共享MySQL数据库,mysql,database,share,openshift,Mysql,Database,Share,Openshift,我有以下问题 我创建了两个应用程序app_1和app_2 在app_1上安装了MySQL,并具有以下参数: OPENSHIFT_MYSQL_DB_PORT = 3306 OPENSHIFT_MYSQL_DB_HOST = 127.9.101.2 OPENSHIFT_MYSQL_DB_PASSWORD = xxxx OPENSHIFT_MYSQL_DB_USERNAME = xxxx OPENSHIFT_MYSQL_DB_SOCKET = / var/lib/openshift/5252ca504

我有以下问题

我创建了两个应用程序app_1和app_2

在app_1上安装了MySQL,并具有以下参数:

OPENSHIFT_MYSQL_DB_PORT = 3306
OPENSHIFT_MYSQL_DB_HOST = 127.9.101.2
OPENSHIFT_MYSQL_DB_PASSWORD = xxxx
OPENSHIFT_MYSQL_DB_USERNAME = xxxx
OPENSHIFT_MYSQL_DB_SOCKET = / var/lib/openshift/5252ca504382ecccc30000ca/mysql / / socket / mysql.sock
OPENSHIFT_MYSQL_DB_URL = mysql :/ / admindWSK1aY: bnHt58Afw69I@127.9.101.2: 3306 /
OPENSHIFT\u MYSQL\u DB\u LOG\u DIR=/var/lib/OPENSHIFT/5252CA504382ECCC30000CA/MYSQL//LOG/

在app_1上,我可以通过本地数据库上的MySQL shell轻松连接

命令是这样的

mysql -h 127.9.101.2 -u xxx -pxxx db325771
但是,当我在app_2上运行相同的命令时,会收到以下错误消息

ERROR 2003 (HY000): Can not connect to MySQL server on '127 .9.101.2 '(113)
我做错了什么? 如何为两个应用共享一个DB

谢谢

1)您需要将应用程序1创建为可扩展数据库(rhc应用程序创建myapp pyton-2.6 mysql-5-s)

2) 您需要使用app_2中数据库的URL(而不是ip)


这应该适用于您的用例

方法如下:

  • 使用mysql制作一个可伸缩的应用程序。OpenShift目前没有将mysql的端口公开给internet,但可扩展应用除外
  • 在第二个应用程序中,当连接到第一个应用程序中的mysql实例时,必须使用mysql应用程序的DNS以及该应用程序中的OPENSHIFT_mysql_DB_PROXY_PORT环境变量的值

  • -1,谁让你使用OPENSHIFT\u MYSQL\u DB\u PROXY\u端口的?如果我在SSHing到我的应用程序时使用env | grep OPENSHIFT_MYSQL_DB_PROXY_端口,我不会得到结果