2012-07-11 164 views
2

我嘗試使用Phing將站點部署到服務器。如何通過ssh將mysql數據庫部署到服務器

命令,它應該創建數據庫或更改:

<pdosqlexec url="mysql:host=${db.host}; dbname=${db.name}" 
     userid="${db.user}" 
     password="${db.pass}" 
     src="${project.basedir}/deploy/mysqlbuiltscripts/create_database.sql"/> 

它可以在本地機器上很好。但我也需要在服務器上進行更改。 主要問題 - 我只能通過SSH訪問服務器數據庫。 問題 - 如何通過SSH隧道執行此命令?

P.S.我試圖使用<ssh username="${username}" password="${password}" host="${host}" command="${myMysqlCommand}">,但它不適合我,因爲它不會將更改寫入Phing「changelog」表中。

+0

你有沒有找到一種方法來遠程運行db查詢並寫入更改phing「changelog」表以及?從我目前閱讀的內容來看,是不是建議通過自動化工具運行db查詢,但它是否也不受支持?順便說一下,從基礎開始,任何優秀的dbdeploy視頻教程?步驟3中的 – 2016-03-16 15:00:30

回答

0

您使用dbdeployTask嗎?如果您爲遠程服務器生成增量,那麼您的文件應該具有更新日誌。

如果您無法訪問遠程服務器,則可能需要直接在遠程服務器上執行dbdeploy工作或通過ssh傳輸您的請求。

我dbdeploy步驟是:

  1. 運行phing - > dbdeploy任務
  2. 獲取增量SQL
  3. 與MySQL,運行在遠程服務器上的三角洲SQL腳本
  4. 享受
+0

,你的意思是手動運行腳本,即不通過phing? – 2016-03-16 14:23:42

相關問題