成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Oracle數據庫的空間管理的技巧剖析

數據庫 Oracle
以下的文章是對Oracle數據庫的空間管理相關技巧的介紹,其中包括表空間的相關自由空間,以及相關表以及索引的擴展等相關內容的介紹。

以下的文章主要是對Oracle數據庫的空間管理相關技巧的介紹,我們都知道在Oracle數據庫中,DBA一般都是通過相關的觀測,表或是視圖了解當前空間的使用狀況,進而作出可能的調整決定。

表空間的自由空間

通過對表空間的自由空間的觀察,可用來判斷分配給某個表空間的空間是太多還是不夠。請看下列的語句

 

 

  1. SQL > select a.file_id "FileNo",a.tablespace_name   
  2. "Tablespace_name",   
  3. 2 a.bytes "Bytes",a.bytes-sum(nvl(b.bytes,0)) "Used",   
  4. 3 sum(nvl(b.bytes,0)) "Free",   
  5. 4 sum(nvl(b.bytes,0))/a.bytes*100 "%free"   
  6. 5 from dba_data_files a, dba_free_space b   
  7. 6 where a.file_id=b.file_id(+)   
  8. 7 group by a.tablespace_name ,   
  9. 8 a.file_id,a.bytes order by a.tablespace_name;   
  10. File Tablespace   
  11. No _nameBytes Used Free %free   
  12. 11IDX_JF .146E+09 849305600 1.297E+09 60.431806   
  13. 9 JFSJTS 2.146E+09 1.803E+09 343793664 16.016961   
  14. 10JFSJTS 2.146E+09 1.359E+09 787431424 36.685546   
  15. 2 RBS523239424 359800832 163438592 31.235909   
  16. 12RBS1.610E+09 1.606E+09 3104768 .19289495   
  17. 8 RBSJF 3.220E+09 2.716E+09 504356864 15.662396   
  18. 7 SFGLTS 2.146E+09 1.228E+09 918159360 42.776014   
  19. 6 SFSJTS 2.146E+09 1.526E+09 620093440 28.889457   
  20. 1 SYSTEM 523239424 59924480 463314944 88.547407   
  21. 3 TEMP 523239424294912 522944512 99.943637   
  22. 4 TOOLS 15728640 12582912 314572820   
  23. 5 USERS 7340032 81927331840 99.888393   
  24. 12 rows selected.   

 

可以看出,在FileNo為12的表空間RBS中,只有0.19%的分配空間未被使用,這個比例太小了,而在SYSTEM及TEMP等表空間中,高達80%以上的空間未被利用,對于生產型Oracle數據庫,這個表空間的設置有些偏高。

關于自由空間的管理,有下面的一些建議:

利用Export及Import命令卸出和裝入表空間可以釋放大量的空間,從而緩解增加另外的數據文件的要求。

如果包含具有高插入(insert)和更新(update)活動的表的表空間中自由空間的比重下降到了15%以下,要為此表空間增加更多的空間。

對于一個基本是靜態表數據的表空間,如果有多于20%的自由空間,則可以考慮減少分配給它的文件空間量。

減少SYSTEM表空間的空間量比較困難,因為那要重建數據庫。

表及索引的擴展

A.為了防止表或索引被過分擴展,及時實現對Oracle數據庫的調整,用戶應當經常對有關對象進行觀察。

我們可以認為,擴展區域大于5個的表或索引為過分擴展(overextended)。請看下面的語句:

 

 

  1. SQL > select substr(segment_name,1,15)   
  2. Segment_name,segment_type,   
  3. 2 substr(tablespace_name,1,10)   
  4. Tablepace_name,extents,Max_extents   
  5. 3from dba_segments   
  6. 4where extents >5 and owner='JFCL'   
  7. 5order by segment_name;   
  8. SEGMENT_NAMESEGMENT TABLEPACE_   
  9. EXTENTS MAX_EXTENTS   
  10. _TYPE   
  11. CHHDFYB TABLE JFSJTS 11121   
  12. CHHDFYB_DHHMINDEX JFSJTS9121   
  13. DJHZFYB_BF TABLE JFSJTS 17500   
  14. DJHZFYB_DJHMINDEX IDX_JF6500   
  15. DJHZFYB_JZHMINDEX IDX_JF7500   
  16. GSMFYB TABLE JFSJTS 11121   
  17. JFDHTABLE JFSJTS 14500   
  18. JFDH_DHHM INDEX IDX_JF 61500   
  19. JFDH_JZHM INDEX IDX_JF 64500   
  20. XYKFYB TABLE JFSJTS7121   
  21. YHDATABLE JFSJTS6500   
  22. YHDA_BAKTABLE JFSJTS6500   
  23. YHHZFYB_12 TABLE JFSJTS 10500   
  24. 13 rows selected.   

 

通過觀察, DBA可以及時發現問題并進行相應的處理。
我們可以利用export卸出表,然后刪除表,再利用import命令將表裝入,這樣,可以將不連續的區域合并成一個連續的空間。

B.如果用戶希望對表的空間設置進行優化,例如,需要改變表EMP的initial參數,可以采用下面的方法:

1.在將EMP表卸出并刪除后執行imp命令時使用indexfile參數:

imp userid=scott/tiger file=emp.dmp indexfile=emp.sql Oracle數據庫把表和索引的創建信息寫到指定的文件,而不是把數據寫回。

2.打開emp.sql文件:

 

 

  1. REM CREATE TABLE "SCOTT"."EMP" ("EMPNO"   
  2. NUMBER(4, 0), "ENAME"   
  3. REM VARCHAR2(10), "JOB" VARCHAR2(9),   
  4. "MGR" NUMBER(4, 0), "HIREDATE" DATE,   
  5. REM "SAL" NUMBER(7, 2), "COMM" NUMBER   
  6. (7, 2), "DEPTNO" NUMBER(2, 0))   
  7. REM PCTFREE 10 PCTUSED 40 INITRANS 1   
  8. MAXTRANS 255 LOGGING STORAGE(INITIAL   
  9. REM 10240 NEXT 10240 MINEXTENTS 1 MAXEXTENTS   
  10. 121 PCTINCREASE 50 FREELISTS   
  11. REM 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)   
  12. TABLESPACE "USER_DATA" ;   
  13. REM ... 14 rows  

對它進行編輯,去除"REM"等信息,找到Initial參數,根據需要改變它。

3.在SQL*plus中執行emp.sql。

4.裝入數據:

 

 

  1. mp userid=scott/tiger ignore=y file=emp.dmp  

需要注意的是,ignore參數必須設為Y.

C.可以用下面的語句來觀察表或索引距離達到最大擴展的狀況,“UNUSE”為距離達到最大擴展的值,在User_extents表中,extent_id是從0開始記述數的。

 

 

  1. SQL >select a.table_name "TABLE_NAME",max   
  2. (a.max_extents) "MAXEXTENTS" ,   
  3. 2 max(b.extent_id)+1 "IN USE", MAX   
  4. (a.max_extents)-(max(b.extent_id)+1) "UNUSE"   
  5. 3 from user_tables a, user_extents b   
  6. 4where a.table_name=b.segment_name   
  7. 5 group by a.table_name ORDER BY 4;   
  8. ABLE_NAME MAXEXTENTS IN USEUNUSE   
  9. YZPHB 98 1 97   
  10. SHJYB 121 1 120   
  11. SHFYB 121 1 120   
  12. RCHDB 121 1 120   
  13. SJTXDZB121 1 120   
  14. SJTXDAB121 1 120   
  15. CHYHB 121 1 120   
  16. JFDH 50014 486   
  17. 8 rows selected.   

 

如果“UNUSE"小到一定的程度,我們就應該加以關注,進行適當的調整處理。 以上的相關內容就是對Oracle數據庫的空間管理技巧的介紹,望你能有所收獲。
 

文章出自:http://www.programbbs.com/doc/class10-3.htm

【編輯推薦】

  1. 對Oracle SQL相同語句的解析
  2. Oracle sql 性能的優化調整的2大步驟
  3. Oracle sql 性能如何進行調整
  4. Oracle 語句的優化規則中的相關項目
  5. Oracle管理員用戶是什么?
責任編輯:佚名 來源: programbbs
相關推薦

2010-04-23 12:24:06

Oracle數據庫

2010-05-04 16:57:45

Oracle空間管理

2009-03-03 11:41:14

數據庫表表分區

2010-04-06 11:19:28

Oracle數據庫

2011-03-17 16:35:20

Oracle數據庫段管理

2011-03-17 16:19:42

Oracle數據庫管理

2010-04-12 15:17:40

dump Oracle

2009-05-18 13:18:54

字符Oracle字符串

2010-03-24 09:42:12

Oracle數據庫

2017-10-18 19:12:24

數據庫Oracle安全管理

2010-04-21 11:53:03

Oracle數據庫

2010-04-26 09:10:09

Oracle數據庫

2011-03-25 10:26:34

Oracle數據庫管理表空間

2011-03-01 16:30:55

Oracle

2011-03-11 16:25:53

Oracle數據庫

2011-03-17 14:09:25

Oracle數據庫字符

2011-04-11 16:50:13

Oracle數據庫索引

2011-08-05 12:44:57

Oracle數據庫表空間

2010-05-06 12:44:47

Oracle數據庫

2010-04-19 14:07:02

Oracle數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久久久久一区 | 免费永久av | 国产成人小视频 | 天天操天天射天天舔 | 一区二区三区免费 | 99久久久无码国产精品 | av男人的天堂av | 国产欧美三区 | 免费h在线 | 亚洲精品久久久一区二区三区 | 国产高清视频在线 | 91观看 | 亚洲欧美日韩一区二区 | 一区在线观看视频 | 一区二区三区av | 在线观看成人精品 | 午夜影院网站 | 久久国产精品-国产精品 | 欧美精品久久久久久久久久 | 亚洲国产一区二区三区 | 久久国产精品偷 | 欧美日本在线 | 亚洲一区在线播放 | 91视频在线| 久久亚洲一区二区三区四区 | 色啪网| 91精品国产综合久久久久久蜜臀 | 最新av片| h视频免费观看 | 亚洲精品久久久久中文字幕欢迎你 | 久久9久 | 日本在线视频一区二区 | 特级做a爰片毛片免费看108 | 中文字幕在线观看一区 | 色综合99 | 亚洲欧美在线观看 | 黄网站在线观看 | 午夜视频一区 | 全免费a级毛片免费看视频免费下 | 综合欧美亚洲 | 久久精品免费一区二区 |