2017-03-23 113 views
1

我想連接到我的客戶遠程數據庫。Zend Framework 1 - 通過ssh隧道進行遠程數據庫連接

我能夠建立SSH隧道命令:

ssh -vvv -i path_to_private_key -L 3308:127.0.0.1:3307 [email protected]_host 

,並連接到他的數據庫:

mysql -u database_user -p -h 127.0.0.1 -P 3308 

但是,當我想配置我的Zend框架項目從文件讀取數據這個數據庫沒有任何事情發生(即使apache2錯誤日誌中沒有日誌)

下面我從application.ini文件中配置:

resources.db.adapter = "mysqli" 
resources.db.params.host = 127.0.0.1 
resources.db.params.port = 3308 

resources.db.params.dbname = database_name 
resources.db.params.username = database_user 
resources.db.params.password = database_password 
resources.db.params.profiler = false 

我不知道什麼可能是錯的。有任何想法嗎?

回答

0

試試這個,稍加改動你的ssh命令。

ssh -N -L -i path_to_private_key 3307:mysqlhost:3306 [email protected] 

其中3307是你的本地端口和mysqlhost是要連接到MySQL主機,不是localhost。現在,你的配置應該是這樣的:

resources.db.adapter = "mysqli" 
resources.db.params.host = 127.0.0.1 
resources.db.params.port = 3307 

resources.db.params.dbname = database_name 
resources.db.params.username = database_user 
resources.db.params.password = database_password 

對於從手動參考:

-N  Do not execute a remote command. This is useful for just forwarding ports (pro- 
     tocol version 2 only). 

希望有所幫助。

+0

謝謝你的回答。不幸的是,這不是我的問題的解決方案。過去的日子證明,這是我的客戶方面的問題,我的命令一切都很好。但當然感謝有趣的。 – Leszek

0

不幸的是,這不是我的問題的解決方案。過去的日子證明,這是我的客戶方面的問題,我的命令一切都很好。

相關問題