MySQL(ClearDB)不适用于Heroku

时间:2013-08-25 01:05:40

标签: mysql heroku cleardb

我在Heroku上有多个(免费)应用程序,所有这些应用程序都使用PHP和MySQL。然而,在其中一个上我经常遇到ClearDB(MySQL)的问题。我收到以下错误

  

SQLSTATE [HY000] [2002]无法通过socket'/var/run/mysqld/mysqld.sock'连接到本地MySQL服务器(2)

当我尝试从本地计算机连接到它时,它工作正常。我已经尝试删除ClearDB插件并多次添加它,但这还没有解决问题。这已经持续了大约3个星期了。

这是我的代码:

    public $production = array(
    'datasource' => 'Database/Mysql',
    'persistent' => false,
    'host' => 'us-cdbr-east-04.cleardb.com',
    'login' => 'username',
    'password' => 'password',
    'database' => 'heroku_9565d18e1870f97',
    'prefix' => '',
    //'encoding' => 'utf8',
);

这是我从Heroku / ClearDB获得的URL

mysql://username:password@us-cdbr-east-04.cleardb.com/heroku_9565d18e1870f97?reconnect=true

任何想法现在该做什么?我的代码看起来不错吗?我可能会问Heorku的支持,但我宁愿首先询问社区,因为我现在不支付Heroku的费用。

1 个答案:

答案 0 :(得分:2)

看起来您的连接字符串可能丢失或错误。

ClearDB插件设置一个名为CLEARDB_DATABASE_URL的环境变量。它包含您尝试连接时需要使用的mysql连接字符串。