如何在openshift应用程序中连接到数据库 [英] how to connect to the database in openshift application

查看:378
本文介绍了如何在openshift应用程序中连接到数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我做了如下

添加了MySQL 5.1数据库。请记下这些凭证:

MySQL 5.1 database added. Please make note of these credentials:

    Root User: xxxxxxx
    Root Password: xxxxxxx
    Database Name: php


 Connection URL: mysql://$OPENSHIFT_MYSQL_DB_HOST:$OPENSHIFT_MYSQL_DB_PORT/

您可以通过嵌入phpmyadmin-3.4来管理新的MySQL数据库。
phpmyadmin用户名和密码将与上面的MySQL凭证相同。

You can manage your new MySQL database by also embedding phpmyadmin-3.4. The phpmyadmin username and password will be the same as the MySQL credentials above.

phpMyAdmin 3.4已添加。请再次记下这些MySQL凭据:

phpMyAdmin 3.4 added. Please make note of these MySQL credentials again:

    Root User: xxxxxxx
    Root Password: xxxxxxx

    URL: https://php-doers.rhcloud.com/phpmyadmin/

和i尝试使用dblow PDO代码连接db,但它不工作

and i try to connect db using bellow PDO code .but it does not work

$dbh = new PDO('mysql:host=mysql://$OPENSHIFT_MYSQL_DB_HOST:$OPENSHIFT_MYSQL_DB_PORT/;dbname=php', "xxxxxx, "xxxxxx");

我不知道连接URL是什么意思?

I don't know what is the connection URL mean ?

推荐答案

连接字符串中有一个错误加$ OPENSHIFT_MYSQL_DB_ *是env变量,需要通过getenv php函数获取。

There is an error in your connection string plus $OPENSHIFT_MYSQL_DB_* are env variables and need to be fetched via getenv php function.

请尝试以下操作:

define('DB_HOST', getenv('OPENSHIFT_MYSQL_DB_HOST'));
define('DB_PORT',getenv('OPENSHIFT_MYSQL_DB_PORT')); 
define('DB_USER',getenv('OPENSHIFT_MYSQL_DB_USERNAME'));
define('DB_PASS',getenv('OPENSHIFT_MYSQL_DB_PASSWORD'));
define('DB_NAME',getenv('OPENSHIFT_GEAR_NAME'));

$dsn = 'mysql:dbname='.DB_NAME.';host='.DB_HOST.';port='.DB_PORT;
$dbh = new PDO($dsn, DB_USER, DB_PASS);

这篇关于如何在openshift应用程序中连接到数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆