我有一個.sql文件(最初的sql腳本)。我最近在cloudfoundry中部署了應用程序,所以我想運行這些腳本來使應用程序工作,腳本將更新超過5個數據庫表。如何在cloudfoundry中執行mysql腳本
有什麼其他的方法可以在啓動時從grails應用程序運行mysql腳本還是有任何規定可以在cloudfoundry中運行腳本。
我有一個.sql文件(最初的sql腳本)。我最近在cloudfoundry中部署了應用程序,所以我想運行這些腳本來使應用程序工作,腳本將更新超過5個數據庫表。如何在cloudfoundry中執行mysql腳本
有什麼其他的方法可以在啓動時從grails應用程序運行mysql腳本還是有任何規定可以在cloudfoundry中運行腳本。
你有幾個選擇在這裏。
第一個(我建議),是使用類似http://liquibase.org/(有一個Grails插件吧:http://grails.org/plugin/liquibase)。此工具將確保您提供的任何腳本將在應用程序啓動之前運行,而不會同時運行相同的腳本兩次等。這對於跟蹤數據庫更改非常有用。 這可以獨立於CloudFoundry工作,並且可以幫助任何人安裝具有最新模式的應用程序
第二種選擇是隧道連接到CloudFoundry數據庫並將腳本運行到數據庫。看看http://docs.cloudfoundry.com/tools/vmc/caldecott.html或更容易與STS:http://blog.cloudfoundry.com/2012/07/31/cloud-foundry-integration-for-eclipse-now-supports-tunneling-to-services/
是啊,有什麼ebottard說! :-)雖然,我個人會選擇使用VMC上的隧道功能,但是那說,我是一個Ruby傢伙!
如果用大數據集引導您的數據庫,那麼對MySQL中的查詢有超時的情況感到厭倦!