我需要 Mysql IP 用于自定义 wordpress 安装,因为它不支持“localhost”mysql 主机地址。在 rhc 窗口客户端中,我使用端口转发命令 rhc port-forward -a appname 但它显示 HAPROXY 和 httpd 的 openshift IP 地址不适用于 Mysql.how为 port-forward rhc 命令结果 iamge 找到 openshift MYSQL IP.link
3 回答
<ip>:<port>
您可以使用以下命令打印 MySQL :
rhc ssh <app> 'echo $OPENSHIFT_MYSQL_DB_HOST:$OPENSHIFT_MYSQL_DB_PORT'
但是,建议使用 OpenShift 的环境变量而不是硬编码的数字,因为它们是通用的,因此在将应用程序从一个齿轮迁移到另一个齿轮时不需要更改任何内容:
/* Environment variables exposed by MySQL database cartridge */
define('DB_HOST', getenv('OPENSHIFT_MYSQL_DB_HOST')); // 127.0.250.1
define('DB_PORT', getenv('OPENSHIFT_MYSQL_DB_PORT')); // 3306
define('DB_USER', getenv('OPENSHIFT_MYSQL_DB_USERNAME')); // admin
define('DB_PASS', getenv('OPENSHIFT_MYSQL_DB_PASSWORD')); // 8ddTnst22X3Y
define('DB_NAME', getenv('OPENSHIFT_APP_NAME')); // myapp
define('DB_SOCKET', getenv('OPENSHIFT_MYSQL_DB_SOCKET')); // $OPENSHIFT_MYSQL_DIR/socket/mysql.sock
define('DB_STRING', getenv('OPENSHIFT_MYSQL_DB_URL')); // mysql://admin:8ddTnst22X3Y@127.0.250.1:3306/
您可以 ssh 进入您的应用程序并运行 env | grep MYSQL
在 ssh 进入您的应用程序之后使用命令rhc ssh <app>
SSH 进入您的应用程序,输入env | grep MYSQL
然后查找OPENSHIFT_MYSQL_DB_HOST
并复制它具有类似这样的值,OPENSHIFT_MYSQL_DB_HOST = 56********************43-<domain>.rhcloud.com
您需要第二部分,56********************43-<domain>.rhcloud.com
然后当您仍在应用程序的外壳 (ssh) 内时,ping你刚刚得到的地址,ping 56********************43-<domain>.rhcloud.com
. 生成的 IP 是 MYSQL 服务器 IP。我通常使用OPENSHIFT_MYSQL_DB_URL
附加到ip的端口。
这可能(不确定)在不同的应用程序中有所不同。
OPENSHIFT_MYSQL_DB_URL
您可以从env | grep MYSQL
我上面描述的命令中提取 的值。
该值类似于此OPENSHIFT_MYSQL_DB_URL=mysql://<MySQLusername>:<MySQLpassword>@56********************43-<domain>.rhcloud.com:61836
您也可以从这里提取所有必需的信息。
祝你好运!