程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle 數據庫中查看表空間的2種方法

Oracle 數據庫中查看表空間的2種方法

編輯:Oracle數據庫基礎

Oracle 數據庫中查看表空間使用狀況是我們在實際應用中經常涉及到的,以下的內容就就是對Oracle 數據庫中查看表空間使用狀況時所要用到的SQL的描述,希望你能從中獲得自己想要的東西。

Oracle表空間的事情狀況要經常查看,一般空閒比例過低的時候就應該考慮增大表看空間了。查看方法如下SQL:

方法一:

  1. select dbf.tablespace_name,  
  2. dbf.totalspace "總量(M)",  
  3. dbf.totalblocks as 總塊數,  
  4. dfs.freespace "剩余總量(M)",  
  5. dfs.freeblocks "剩余塊數",  
  6. (dfs.freespace / dbf.totalspace) * 100 "空閒比例"  
  7. from (select t.tablespace_name,  
  8. sum(t.bytes) / 1024 / 1024 totalspace,  
  9. sum(t.blocks) totalblocks  
  10. from dba_data_files t  
  11. group by t.tablespace_name) dbf,  
  12. (select tt.tablespace_name,  
  13. sum(tt.bytes) / 1024 / 1024 freespace,  
  14. sum(tt.blocks) freeblocks  
  15. from dba_free_space tt  
  16. group by tt.tablespace_name) dfs  
  17. where trim(dbf.tablespace_name) = trim(dfs.tablespace_name) 

方法二:

  1. SELECT Total.name "Tablespace Name",  
  2. Free_space, (total_space-Free_space) Used_space, total_space  
  3. FROM  
  4. (select tablespace_name, sum(bytes/1024/1024) Free_Space  
  5. from sys.dba_free_space  
  6. group by tablespace_name  
  7. ) Free,  
  8. (select b.name, sum(bytes/1024/1024) TOTAL_SPACE  
  9. from sys.v_$datafile a, sys.v_$tablespace B  
  10. where a.ts# = b.ts#  
  11. group by b.name  
  12. ) Total  
  13. WHERE Free.Tablespace_name = Total.name 

當發現有的Oracle 數據庫裡查看表空間不夠的錯誤時,處理如下:
1:找出該表空間對應的數據文件及路徑

  1. select * from dba_data_files t  
  2. where t.tablespace_name = 'ARD' 

2:增大數據文件

alter database datafile '全路徑的數據文件名稱' resize ***M

3:增加數據文件

alter tablespace 表空間名稱

add datafile '全路徑的數據文件名稱' ***M

注解:Oracle 數據庫裡查看的表空間盡量讓free百分比保持在10%以上,如果低於10%就增加datafile或者resizedatafile,一般數據文件不要超過2G
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved