Oracle数据库修改表空间

  
  
  
  
  1. 准备工作: 
  2.  
  3.    修改表空间大小有两种方法,一种是为表空间增加数据文件(适用于刚建立的表空间) 
  4.  
  5.   alter tablespace users add datafile 'E:\APP\ADMINISTRATOR\ORADATA\AMBTS\CIC2.DBF' size 100M; 
  6.  
  7.   另一种方法是增加表空间原有数据文件尺寸:(适用于表空间中已经有数据文件的情况) 
  8.  
  9.   alter database datafile 'E:\APP\ADMINISTRATOR\ORADATA\AMBTS\CIC.DBF' resize 200M; 



-------------------------------------------------------------------------------------------------------------------------

  
  
  
  
  1. 第一步:查看表空间使用情况 
  2. SELECT d.Status "Status"
  3.        d.Tablespace_Name "Name"
  4.        d.Contents "Type"
  5.        d.Extent_Management "Extent Management"
  6.        To_Char(Nvl(a.Bytes/1024/1024, 0), '99,999,990.900'"Size (M)"
  7.        To_Char(Nvl(a.Bytes - Nvl(f.Bytes, 0), 0)/1024/1024,'99999999.999') || '/' || 
  8.        To_Char(Nvl(a.Bytes/1024/1024, 0), '99999999.999'"Used (M)"
  9.        To_Char(Nvl((a.Bytes - Nvl(f.Bytes, 0))/a.Bytes * 100, 0),'990.00'"Used %" 
  10.   FROM Sys.Dba_Tablespaces d, 
  11.        (SELECT Tablespace_Name,SUM(Bytes) Bytes 
  12.           FROM Dba_Data_Files 
  13.          GROUP BY Tablespace_Name) a, 
  14.        (SELECT Tablespace_Name,SUM(Bytes) Bytes 
  15.           FROM Dba_Free_Space 
  16.          GROUP BY Tablespace_Name) f 
  17.  WHERE d.Tablespace_Name = a.Tablespace_Name(+) 
  18.    AND d.Tablespace_Name = f.Tablespace_Name(+) 
  19.    AND NOT (d.Extent_Management LIKE 'LOCAL' AND d.Contents LIKE 'TEMPORARY'
  20. UNION ALL 
  21. SELECT d.Status "Status"
  22.        d.Tablespace_Name "Name"
  23.        d.Contents "Type"
  24.        d.Extent_Management "Extent Management"
  25.        To_Char(Nvl(a.Bytes/1024/1024, 0), '99,999,990.900'"Size (M)"
  26.        To_Char(Nvl(t.Bytes, 0)/1024/1024, '99999999.999') || '/' || 
  27.        To_Char(Nvl(a.Bytes/1024/1024, 0), '99999999.999'"Used (M)"
  28.        To_Char(Nvl(t.Bytes/a.Bytes * 100, 0), '990.00'"Used %" 
  29.   FROM Sys.Dba_Tablespaces d, 
  30.        (SELECT Tablespace_Name,SUM(Bytes) Bytes 
  31.           FROM Dba_Temp_Files 
  32.          GROUP BY Tablespace_Name) a, 
  33.        (SELECT Tablespace_Name,SUM(Bytes_Cached) Bytes 
  34.           FROM V$temp_Extent_Pool 
  35.          GROUP BY Tablespace_Name) t 
  36.  WHERE d.Tablespace_Name = a.Tablespace_Name(+) 
  37.    AND d.Tablespace_Name = t.Tablespace_Name(+) 
  38.    AND d.Extent_Management LIKE 'LOCAL' 
  39.    AND d.Contents LIKE 'TEMPORARY' 
  40.  
  41.  
  42. 第二步:查看表空间所属文件(第三步中用到) 
  43. select tablespace_name, 
  44.        file_id, 
  45.        file_name, 
  46.        round(bytes / (1024 * 1024), 0) total_space 
  47. from dba_data_files 
  48. order by tablespace_name; 
  49.  
  50.  
  51. 第三步、增加表空间 
  52.    因为我们是属于表空间中已经有数据文件的情况,所以使用增加表空间原有数据文件尺寸的方法。 
  53.  
  54.    alter database datafile 'E:\APP\ADMINISTRATOR\ORADATA\AMBTS\CIC.DBF' resize 200M; 
  55.  
  56.    注意:路径'E:\APP\ADMINISTRATOR\ORADATA\AMBTS\CIC.DBF'是从第二步查询出来的路径。 

 

本文出自 “斯文狼” 博客,转载请与作者联系!

你可能感兴趣的:(oracle,表空间,Oracle修改表空间,修改表空间)