Oracle數(shù)據(jù)庫以其高可靠性、安全性、可兼容性,得到越來越多的企業(yè)的青睞。如何使Oracle數(shù)據(jù)庫保持優(yōu)良性能,這是許多數(shù)據(jù)庫管理員關(guān)心的問題,根據(jù)筆者經(jīng)驗建議不妨針對以下幾個方面加以考慮。
一、分區(qū)
根據(jù)實際經(jīng)驗,在一個大數(shù)據(jù)庫中,數(shù)據(jù)空間的絕大多數(shù)是被少量的表所占有。為了簡化大型數(shù)據(jù)庫的管理,改善應(yīng)用的查詢性能,一般可以使用分區(qū)這種手段。所謂分區(qū)就是動態(tài)表中的記錄分離到若干不同的表空間上,使數(shù)據(jù)在物理上被分割開來,便于維護、備份、恢復(fù)、事務(wù)及查詢性能。當(dāng)使用的時候可建立一個連接所有分區(qū)的視圖,使其在邏輯上仍以一個整體出現(xiàn)。
1.建立分區(qū)表
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> Create table Employee( EmpNo varchar2 ( 10 ) primary key , Name varchar2 ( 30 ), DeptNo Number ( 2 ) ) Partition by range(DeptNo) (partition PART1 values less than ( 11 ) tablespace PART1_TS, partition PART2 values less than( 21 ) tablespace PART2_TS, partition PART3 valuse less than( 31 ) tablespace PART3_TS partition PART4 values less than(MAXVALUE) tablespace PART4_TS );
表Employee依據(jù)DeptNo列進行分區(qū)。
2.分區(qū)索引
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> Create index Employee_DeptNo on Employee (DeptNo)local( partition PART1 tablespace PART1_NDX_TS, partition PART2 tablespace PART2_NDX_TS, partition PART3 tablespace PART3_NDX_TS, partition PART4 tablespace PART4_NDX_TS, );
當(dāng)分區(qū)中出現(xiàn)許多事務(wù)并且要保證所有分區(qū)中的數(shù)據(jù)記錄的惟一性時采用全局索引,在建立全局索引時,Global子句允許指定索引的范圍值,這個范圍值可以不同于表分區(qū)的范圍值。只有建立局部索引才會使索引分區(qū)與表分區(qū)間建立起一一對應(yīng)關(guān)系。因此,在大多數(shù)情況下,應(yīng)該使用局部索引分區(qū)。若使用了此索引,分區(qū)就能夠很容易地將索引分區(qū)與表分區(qū)建立關(guān)聯(lián),局部索引比全局索引更易于管理。
3.分區(qū)管理
根據(jù)實際需要,還可以使用Alter table命令來增加、刪除、交換、移動、修改、重命名、劃分、截短一個已存在分區(qū)的結(jié)構(gòu)。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
