我的PHP应用程序能够与Heroku的ClearDB MySql资源一起使用吗?

6

我对php和Heroku都很陌生,现在遇到了一个问题。我的应用在xxamp测试服务器上使用mysql运行良好,但是当我尝试在Heroku上托管时,无法连接到MySql服务器。

    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (111)' in /app/www/pdo_testdb_connect.php:6 Stack trace: #0 /app/www/pdo_testdb_connect.php(6): PDO->__construct('mysql:host=127....', 'd2398h23d9d82j3', '8dj1292d3') #1 /app/www/all.php(6): testdb_connect() #2 {main} thrown in /app/www/pdo_testdb_connect.php on line 6 

ClearDB和PHP不兼容吗?非常感谢您的任何建议,因为我好像遇到了瓶颈。
2个回答

11

以下是 Cleardb 与 Heroku 的 PHP 集成:

define ('DB_USER','xxxxxxxxxxxxxxxx');
define ('DB_PASSWORD','yyyyyyyyyyyyyy');
define ('DB_HOST','us-cdbr-east.cleardb.com');
define ('DB_NAME','heroku_zzzzzzzzzzzzzzzzzz');

通过进入 Git 并键入 heroku config 来获取参数。

您将看到一个 CLEARDB_DATABASE_URL

以下是解码方法:

mysql://xxxxxxxxxxxxxx:yyyyyyyy@us-mm-auto-dca-01.cleardb.com/heroku_zzzzzzzzzzzzzzz

有趣的是,在官方文档中他们只提供了一个Ruby示例,但没有任何关于PHP的内容...

http://devcenter.heroku.com/articles/cleardb

你应该解释 DB_USER 等变量在哪里使用,因为仅仅定义变量是没有作用的。例如,仅使用 new PDO() 就有三种不同的语法用法。 - user2258887

3
heroku config | grep CLEARDB_DATABASE_URL

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接