以前做過的各個項目中,都存在資料庫管理不好的問題,想能不能也象編碼規範一樣,做一個資料庫管理規範?
原則:整個開發過程中的資料庫管理維護由項目組中專人進行。
下面描述會分為兩種角色:
1)專門負責項目中資料庫管理維護人員,簡稱DBA;
2)項目群組成員(項目組所有成員,包括專門負責資料庫維護的人員DBA),簡稱PM;
涉及到三個資料庫執行個體:
項目標準庫:<PROJECT>_STD:只有DBA可以管理操作
項目開發測試庫:<PROJECT>_TEST:PM都可以管理操作
測試組測試發布庫:<PROJECT>_RELEASE:PM、測試組都可以管理操作。
1.資料庫建立
1)PM按照設計文檔,建立標準資料庫:
<PROJECT>_STD ;
2)PM整理資料庫建立SQL語句:CreateDB.sql;
3)PM整理資料庫統跏薊疭QL語句:InitDB.sql(不包含任何測試資料的架構用SQL語句) ;
4)DBA根據整理出的建庫SQL和初始化SQL建立測試用資料庫:<PROJECT>_TEST;
5)PM測試資料庫中插入測試用的資料記錄;
6) PM使用測試庫
<PROJECT>_TEST ,進行所有的開發測試、調試;
2.資料庫更新
1)PM在測試庫 <PROJECT>_TEST 中測試更新;
2)PM測試成功後,由 <PROJECT>_TEST 整理出資料庫更新的SQL語句,發送給DBA;
3)DBA每日收集所有PM發送過來的更新SQL語句,整理成為以日期命名的更新SQL指令碼:****-**-**.sql;
4)DBA在測試庫 <PROJECT>_TEST 中執行****-**-**.sql更新測試庫,通知所有PM在 <PROJECT>_TEST 中驗證更新;
5)如果驗證有問題,重複前述1)、2)、3)、4)步驟;直至驗證通過;
6)DBA在標準庫 <PROJECT>_STD 中執行****-**-**.sql,並把該指令碼放入cc管理,在項目組內部版本修改日誌(最好是在方便大家看到並能查詢所有曆史更改的專案管理平台上);
3.資料庫測試發布
1)DBA使用標準庫 <PROJECT>_STD ,匯出資料庫檔案(整庫檔案),如PRJNAME_STD1.0_DB.dmp,建立測試組測試用庫 <PROJECT>_RELEASE ;
2)PM在發布庫<PROJECT>_RELEASE中添加測試發布用的業務資料,PM進行功能測試和驗證;
3)如果驗證通過,PRJNAME_STD1.0_DB.dmp即成為正式的資料庫發布版本檔案。