公司開發項目過程當中,後臺會分爲不少種服務,好比web服務,採集服務,都須要去操做數據庫,有的時候甚至前端也會去操做數據庫,修改字段,增長字段,刪除字段,修改初始化數據等。怎麼在各方之間進行同步?本文介紹了一種基於Git(騰訊雲(原Coding))的數據庫sql文件管理方式。html
採集端C因爲1個月沒更新,可是數據庫版本已經發布了多個,採集端編碼好,統一發布以後,採集端不能運行成功,由於數據庫在服務端B增長修改了字段,而採集端沒有同步形成。前端
怎麼把各方的數據庫版本同步,根據代碼管理規範,我想到了Git,用Git來管理Sql文件。Sql分紅兩份文件,一份是IBMS_Structure.sql,數據庫結構文件;另外一份是IBMS_InitData.sql初始化數據文件以下
mysql
其餘定製項目能夠用同一個結構sql,可是不一樣的初始化數據文件,如南通項目IBMS_InitDataNT.sql;銀川項目用IBMS_InitDataYC.sqlgit
原則:全部人都須要本身創建獨立的數據庫來調試web
IBMS_Structure.sqlsql
導入步驟數據庫
打開數據庫管理工具navicat.exe,工具
IBMS_InitData.sql編碼
導入步驟3d
同上。
具體可參照Git管理代碼類文章
不管是A或者B或者C修改了數據庫的結構或初始化,導出兩份文件,一份結構,一份初始化數據(須要刪除其餘非初始化的垃圾髒數據)
右鍵要導出的表,單擊數據傳輸
git add . git commit -m "B修改了xxx字段" git push origin master
具體可參照Git管理代碼類文章
修改者以郵件形式發送你們修改了哪些字段,其餘項目成員能夠去看Git,上面會有對比不一樣的記錄
其餘被同步者把結構跟初始化數據兩份sql pull到本地,從新導入本身獨立的數據庫以達到同步。