偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Oracle數(shù)據(jù)庫如何保持優(yōu)其良性能

數(shù)據(jù)庫 Oracle
以下的文章主要涉及到使Oracle數(shù)據(jù)庫保持其優(yōu)良性能的方案的介紹,以下的文章就是對(duì)其方案的具體介紹,望你會(huì)有所收獲。

你知道Oracle數(shù)據(jù)庫如何保持優(yōu)其良性能?其實(shí)方法很簡單你可以從下面的幾個(gè)方面來入手,如果你對(duì)其相關(guān)的實(shí)際操作很感興趣的話,你就可以瀏覽以下的文章,在Oracle數(shù)據(jù)庫如何保持優(yōu)其良性能方面有個(gè)更好的了解。

分區(qū)

根據(jù)實(shí)際經(jīng)驗(yàn),在一個(gè)大數(shù)據(jù)庫中,數(shù)據(jù)庫空間的絕大多數(shù)是被少量的表所占有。為了簡化大型Oracle數(shù)據(jù)庫的管理,改善應(yīng)用的查詢性能,一般可以使用分區(qū)這種手段。

所謂分區(qū)就是動(dòng)態(tài)地將表中的記錄分離到若干不同的表空間上,使數(shù)據(jù)在物理上被分割開來,便于維護(hù)、備份、恢復(fù)、事務(wù)及查詢性能。當(dāng)使用的時(shí)候可建立一個(gè)連接所有分區(qū)的視圖,使其在邏輯上仍以一個(gè)整體出現(xiàn)。

 

1. 建立分區(qū)表

 

 

 

  1. Create table Employee (   
  2. EmpNo varchar2(10) primary key,   
  3. Name varchar2(30),   
  4. DeptNo Number(2)   
  5. )   
  6. Partition by range(DeptNo)   
  7. ( partition PART1 values less than (11)   
  8. tablespace PART1_TS,   
  9. partition PART2 values less than (21)   
  10. tablespace PART2_TS,   
  11. partition PART3 values less than (31)   
  12. tablespace PART3_TS   
  13. partition PART4 values less than (MAXvalue)   
  14. tablespace PART4_TS   
  15. ); 

 

 

 

表Employee依據(jù)DeptNo列進(jìn)行分區(qū)。

 

 

2. 分區(qū)索引

 

 

 

  1. Create index Employee_DeptNo on Employee(DeptNo) local (   
  2. partition PART1 tablespace PART1_NDX_TS,   
  3. partition PART2 tablespace PART2_NDX_TS,   
  4. partition PART3 tablespace PART3_NDX_TS,   
  5. partition PART4 tablespace PART4_NDX_TS,   
  6. ); 

 

 

 

當(dāng)分區(qū)中出現(xiàn)許多事務(wù)并且要保證所有分區(qū)中的數(shù)據(jù)記錄的惟一性時(shí)采用全局索引,在建立全局索引時(shí),Global子句允許指定索引的范圍值,這個(gè)范圍值可以不同于表分區(qū)的范圍值。只有建立局部索引才會(huì)使索引分區(qū)與表分區(qū)間建立起一一對(duì)應(yīng)關(guān)系。

因此,在大多數(shù)情況下,應(yīng)該使用局部索引分區(qū)。若使用了此索引,分區(qū)就能夠很容易地將索引分區(qū)與表分區(qū)建立關(guān)聯(lián),局部索引比全局索引更易于管理。

 

 

3. 分區(qū)管理

 

 

根據(jù)實(shí)際需要,還可以使用Alter table 命令來增加、刪除、交換、移動(dòng)、修改、重命名、劃分、截短一個(gè)已存在分區(qū)的結(jié)構(gòu)。

 

 

重建索引

 

 

如果表中記錄頻繁地被刪除或插入,盡管表中的記錄總量保持不變,索引空間的使用量會(huì)不斷增加。雖然記錄從索引中被刪除,但是該記錄索引項(xiàng)的使用空間不能被重新使用。因此,如果表變化不定,索引空間量會(huì)不斷增加,不論表中記錄數(shù)量是否增加,只是因?yàn)樗饕袩o效空間會(huì)增加。

 

 

要回收那些曾被刪除記錄使用的空間,需要使用Alter index rebuild 命令。可以做一個(gè)定期運(yùn)行的批處理程序,來重建最活動(dòng)表的索引。這個(gè)批處理程序可以在空閑時(shí)運(yùn)行,以避免該程序與其他應(yīng)用程序沖突。若能堅(jiān)持索引的這一程序規(guī)劃,便可以及時(shí)回收那些未使用空間,提高空間利用率。

 

段的碎片整理

 

 

當(dāng)生成一個(gè)Oracle數(shù)據(jù)庫對(duì)象時(shí)(一個(gè)表或一個(gè)索引),通過用戶缺省值或指定值來為它指定表空間。一個(gè)在表空間中生成的段,用于存儲(chǔ)對(duì)象的相關(guān)數(shù)據(jù)。在段被關(guān)閉、收縮、截?cái)嘀埃嗡峙涞目臻g將不被釋放。

 

 

一個(gè)段是由范圍組成,而范圍是由相鄰的Oracle塊組成。一旦存在的范圍不能再存儲(chǔ)新的數(shù)據(jù),這個(gè)段就會(huì)去獲得新的范圍,但并不要求這些范圍是彼此相鄰的。這樣的擴(kuò)展會(huì)一直繼續(xù)下去,直到表空間中的數(shù)據(jù)文件不能提供更多的自由空間,或者范圍數(shù)量已達(dá)到極限。

 

 

因此,一個(gè)碎片太多的數(shù)據(jù)段,不僅會(huì)影響運(yùn)行,也會(huì)引發(fā)表空間中的空間管理問題。所以,每個(gè)數(shù)據(jù)段只含有一個(gè)范圍是十分有益的。借助監(jiān)控系統(tǒng),可以通過檢查DBA_SEGMENTS數(shù)據(jù)字典視圖來了解哪些數(shù)據(jù)庫對(duì)象含有10個(gè)或更多范圍的段,確定其數(shù)據(jù)段碎片。

 

 

若一個(gè)段的碎片過多,可用兩種方法解決:

 

 

(1) 用正確的存儲(chǔ)參數(shù)建立一個(gè)新表,將舊表中的數(shù)據(jù)插入到新表中,再刪除舊表;

 

 

(2) 利用Export/Import工具。

 

如:

 

 

  1. exp system/manager file=exp.dmp  
  2. compress=Y grants=Y indexes=Y   
  3. tables=(T1,T2) 

 

 

若輸出成功,進(jìn)入Oracle,刪除上述表。

 

注:compress=Y表示將在輸出過程中修改它們的存儲(chǔ)參數(shù)。

 

 

 

  1. imp system/manager file=exp.dmp commit=Y buffer=64000 full=Y 

 

注:在輸入時(shí)重新配置新的存儲(chǔ)參數(shù)。

 

自由范圍的碎片整理

 

 

表空間中的一個(gè)自由范圍是表空間中相連的自由(空間)塊的集合。當(dāng)一個(gè)段關(guān)閉時(shí),它的范圍將被釋放,并被標(biāo)記為自由范圍。然而,這些自由范圍再也不能與相鄰的自由范圍合并,它們之間的界線始終存在。但是當(dāng)表空間的缺省值pctincrease設(shè)置不是0時(shí),SMON后臺(tái)進(jìn)程會(huì)定期將這些相鄰的自由范圍合并。

 

若pctincrease設(shè)置為0,那么相鄰自由范圍不會(huì)被數(shù)據(jù)庫自動(dòng)合并。但可以使用Alter table命令“coalesce”選項(xiàng),來強(qiáng)迫進(jìn)行相鄰自由范圍的合并。

不進(jìn)行自由范圍合并,在日后的空間請(qǐng)求中,會(huì)影響到表空間中的空間分配。當(dāng)需要一個(gè)足夠大的范圍時(shí),Oracle數(shù)據(jù)庫并不會(huì)合并相鄰的自由范圍,除非沒有其他選擇。這樣,當(dāng)表空間中前面較小的自由范圍已被使用時(shí),將使用表空間中后面部分最大的一個(gè)自由范圍。

結(jié)果,會(huì)因?yàn)闆]有足夠多的使用空間,從而導(dǎo)致表空間需求的矛盾。由于這樣的情況出現(xiàn),使數(shù)據(jù)庫的空間分配距理想越來越遠(yuǎn)。自由空間碎片常會(huì)出現(xiàn)在那些經(jīng)常關(guān)閉又重新生成的數(shù)據(jù)庫表和索引中。

在理想的Oracle表空間中,每一個(gè)Oracle數(shù)據(jù)庫對(duì)象存儲(chǔ)在一個(gè)單獨(dú)的范圍中,并且所有有效自由空間集中在一個(gè)巨大而連續(xù)的范圍中。這樣,在一個(gè)對(duì)象需要附加存儲(chǔ)空間時(shí),可以在增加獲取足夠大自由空間的可能性的同時(shí),最小化空間中的循環(huán)調(diào)用,提高自由空間使用率。

文章出自:http://database.csdn.net/page/3e890491-bf4d-40db-a965-4c2e61d318fd 

【編輯推薦】

  1. 淺析:Oracle jdbc分頁效率的測(cè)試
  2. Oracle數(shù)據(jù)庫的異構(gòu)服務(wù)原理描述
  3. Oracle數(shù)據(jù)庫中程序設(shè)計(jì)的語言有哪些
  4. 常見的ORACLE鎖模式匯總
  5. Oracle Spatial數(shù)據(jù)加密問題的探討

 

責(zé)任編輯:佚名 來源: csdn
相關(guān)推薦

2011-05-19 15:28:44

Oracle數(shù)據(jù)庫性能

2010-04-22 17:27:04

Oracle數(shù)據(jù)庫

2011-03-23 14:09:50

Oracle數(shù)據(jù)

2010-05-04 17:08:24

Oracle數(shù)據(jù)庫

2010-04-07 13:32:39

Oracle調(diào)優(yōu)

2011-07-08 16:02:54

HBase

2010-06-17 12:59:07

Oracle

2019-08-13 08:32:14

MySQL數(shù)據(jù)庫性能調(diào)優(yōu)

2010-04-27 16:41:07

Oracle性能

2011-05-18 09:39:19

Oracle數(shù)據(jù)庫性能優(yōu)化

2011-05-20 10:30:20

ORACLE數(shù)據(jù)庫性能優(yōu)化

2011-05-24 09:45:41

Oracle數(shù)據(jù)庫系統(tǒng)調(diào)優(yōu)

2010-04-16 10:18:10

Import性能

2023-04-03 10:25:00

數(shù)據(jù)庫性能調(diào)優(yōu)

2010-05-10 15:50:39

Oracle數(shù)據(jù)庫性能

2011-03-28 15:44:45

惠普數(shù)據(jù)庫Oracle數(shù)據(jù)庫

2010-04-09 15:08:17

Oracle 數(shù)據(jù)庫性

2010-04-19 16:01:54

2023-09-11 08:38:38

Oracle數(shù)據(jù)庫

2010-04-12 17:19:16

Oracle數(shù)據(jù)庫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)