溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Grails自動數(shù)據(jù)庫移植

發(fā)布時間:2020-06-26 16:05:00 來源:網(wǎng)絡(luò) 閱讀:415 作者:IT達仁 欄目:軟件技術(shù)

DataSource.groovy文件中的dbCreate屬性十分重要,因為它可以用來指定是否自動根據(jù)GORM類來創(chuàng)建數(shù)據(jù)庫表。其可選值為:

  • create-drop?- 當Grails運行時刪除并重新建立數(shù)據(jù)庫

  • create?- 如果數(shù)據(jù)庫不存在則創(chuàng)建數(shù)據(jù)庫,存在則不作任何修改

  • update?- 如果數(shù)據(jù)庫不存在則創(chuàng)建數(shù)據(jù)庫,存在則進行修改

開發(fā)環(huán)境(development)下dbCreate屬性默認設(shè)置為create-drop:

dataSource?{
	dbCreate?=?"create-drop"?//?one?of?'create',?'create-drop','update'
}

這樣在Grails應(yīng)用程序啟動的時候會刪除掉原來的數(shù)據(jù)庫并重新建立,在production環(huán)境中通常需要修改該值。


今天生產(chǎn)出現(xiàn)了問題,問題原因竟是生產(chǎn)數(shù)據(jù)加了一個新的字段,理由是我們最近有些需求變更,新加了一個字段,在前臺部署到QA 系統(tǒng)的時候,數(shù)據(jù)庫連接到生產(chǎn)了,登錄發(fā)現(xiàn)有問題,立馬shutdow,后來在第二天的時候,客戶用的時候,發(fā)現(xiàn)有些功用不了報錯,今天下午投訴來的,找到原因是QA 系統(tǒng)有個新增的字段update 到生產(chǎn)了,導(dǎo)致不能用,后來刪除了這個字段,系統(tǒng)終于可以用了,嚇了一條。歸根到底還是自己不小心,后來想想在數(shù)據(jù)源配置的時候dbCreate=update 了,今天對于這個字段的理解深刻透了。挺危險的,所以對于發(fā)布的時候要特別小心修改數(shù)據(jù)庫的配置,否則很容易出現(xiàn)問題,今天血的教訓(xùn),幸好解決了。


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI