2011-10-04 121 views

回答

1

我不能給出明確的測試答案,但我可能能指出你在正確的方向。

在CakePHP中,您可以設置多個數據庫連接。

在/app/config/database.php中,添加一個額外的數據庫配置變量。例如:在地方,所有的用戶模式的數據庫操作的

<?php 
var $useDbConfig = 'userDb'; 
?> 

有了這應該使用$ userDB的配置細節:

<?php 
var $userDb = array(
    'driver'  => 'mysql', 
    'persistent' => false, 
    'host'  => 'example.com', // Put the hostname of the other database here 
    'login'  => 'username', 
    'password' => 'password', 
    'database' => 'other_db_name' 
); 
?> 

然後,在你的用戶模型中,添加以下屬性。

更多信息可在CakePHP docs找到。

+0

我試過這個,但它給出的錯誤像Host'comp.local.lan'不允許連接到這個MySQL服務器,或者連接嘗試失敗,因爲連接方在一段時間後沒有正確響應,或者建立的連接失敗,因爲連接的主機未能響應。即使我已將max_execution_time設置爲300 .....請幫助 – vibha

+0

這不是您的PHP代碼的問題。這是因爲你試圖連接的MySQL服務器阻塞了連接。您必須更改MySQL服務器上的設置才能允許CakePHP應用程序所在的主機進行連接。如果您不知道如何執行此操作,則必須與服務器的管理員聯繫。或者,如果您是MySQL服務器的管理員,並且不知道如何執行此操作,請在Google上搜索或嘗試在serverfault.com上詢問。 – mtnorthrop

+0

Thanx,我在主機上進行了這些設置,授予數據庫名稱上的所有特權。* TO usern ... @ 192.168.1.3 IDENTIFIED BY'password'。 Thanx爲您的解決方案。 – vibha

相關問題