2014-01-23 61 views
0

我已經在heroku上託管了我的PHP應用程序,並在Amazon RDS上設置了數據庫。託管在heroku和Amazon RDS上的PHP應用程序數據庫連接

我已經使用下面的命令到DATABASE_URL添加的Heroku:

$ heroku config:add DATABASE_URL=mysql://username:[email protected]_rds_endpoint:3306/databasename 
$ heroku config:add SHARED_DATABASE_URL=mysql://username:[email protected]:3306/databasename 

我添加的Heroku的安全組RDS具有以下憑證安全:

AWS Account ID:098166147350 
EC2 Security Group:default 

直到上述步驟我正在使用

mysql_connect("amazon_rds_endpoint","username","password"); 

連接到數據庫,它工作在本地主機上很好,但是當我將代碼推到Heroku上時,它給了我一個應用程序錯誤。

因此,我認爲以下列方式使用的mysqli函數:

$db = new mysqli('amazon_rds_endpoint', 'username', 'password', 'db_name'); 

if($db->connect_errno > 0){ 
     die('Unable to connect to database [' . $db->connect_error . ']'); 
} 

使用上述代碼加載應用程序註冊後但既沒有任何錯誤,也不連接碼顯示任何行。

我已經在過去的幾天裏開始使用Heroku,任何幫助都會很棒!

更新:

當我使我的網頁上的PHP錯誤,我有以下錯誤:

Fatal error: Call to undefined function mysqli_connect() 

但是Heroku的推送告訴我使用PHP 5.3 *這應該是足以運行mysqli函數。

+0

雖然Heroku的具有PHP 5.3一些奇怪的原因,他們不包括mysqli – chromedude

回答

0

它看起來像他們有5.5和5.6版本的mysqli支持。您可以加入這個給你composer.json文件:

{ 「要求」:{ 「PHP」: 「〜5.5.12」 }}

相關問題