Oracle學習筆記:管理資料檔案 —-摘自《Oracle10g 寶典》

來源:互聯網
上載者:User

■建立資料檔案的SQL語句及說明

  CREATE TABLESPACE  建立一個資料表空間和組成它的資料檔案

  CREATE TEMPORARY TABLESPACE 建立一個暫存資料表空間和組成它的臨時資料檔案(臨時資料檔案

                                是一種特殊類型的資料檔案)

  ALTER TABLESPACE ... ADD DATAFILE 建立並添加一個資料檔案到資料表空間

  ALTER TABLESPACE ... ADD TEMPFILE  建立並添加一個臨時資料檔案到暫存資料表空間

  CREATE DATABASE  建立一個資料庫和關聯的資料檔案

■建立資料表空間

  SQL> create tablespace myts04

  2  datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04_1.dbf' size 2m

  3  autoextend on

  4  next 1m

  5  maxsize 5m

■向空間裡添加資料檔案並指定自動成長方式

  SQL> alter tablespace myts02          

  2  add datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_2.dbf' size 4m  

  3  AUTOEXTEND ON 

  4  NEXT 4K    

  5  MAXSIZE 5M;

■更改原有資料檔案為自動成長方式

  SQL> ALTER DATABASE          

  2  DATAFILE '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts01_3.dbf'                 

  3  AUTOEXTEND ON                       

  4  NEXT 2K           

  5  MAXSIZE 5M;

■取消自動成長方式

  SQL> alter database                                

  2  datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts01_3.dbf'  

  3  autoextend off;

■改變原資料檔案大小

  SQL> alter database                             

  2  DATAFILE '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_2.dbf' resize 5m;

  也可以利用RESIZE子句來縮小資料檔案,不過必須保證縮小後的資料檔案足夠容納其中已有的資料

■在ARCHIVELOG模式下使資料檔案脫胎機

  SQL> alter database             

  2  datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_2.dbf' offline;

■在NOARCHIVELOG模式中使資料檔案離線

  要注意,這會使資料檔案離線並立即刪除它,所以,很可能導致遺失資料檔案,這種方法一般只用於暫存資料表空間

  的臨時資料檔案.

  SQL> alter database            

  2  datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_2.dbf' offline drop;

  

  在這之後,如果要使資料檔案聯機,必須進行介質恢複,否則會有錯誤提示. 

  

■修改資料表空間中所有資料檔案的可用性

  ALTER TABLESPACE ... DATAFILE { ONLINE | OFFLINE }

  ALTER TABLESPACE ... TEMPFILE { ONLINE | OFFLINE }

 

  資料表空間本身的聯機或離線狀態不改變()

 

■修改整個資料表空間的可用性

  ALTER TABLESPACE ...  { ONLINE | OFFLINE }

■同一個資料表空間的資料檔案的重新命名

  當改變資料檔案的位置和名稱時,Oracle只是在控制檔案和資料字典中改變了資料檔案的指標,並沒有物理

  地建立新的資料檔案,也沒有重定位和重新命名任何作業系統檔案.DBA必須自己在作業系統層複製檔案,並重

  定位或重新命名資料檔案.

   

  SETUP1 SQL> alter tablespace myts04 offline normal;

         將資料表空間設定為離線狀態是為了關閉該資料表空間中所有的資料檔案,以便在停止資料庫服務時不會造成

         資料出現問題

  SETUP2 SQL> shutdown immediate

         如果不停止資料庫服務就重新命名資料檔案,會出現錯誤提示.   

  SETUP3 將資料檔案myts04_1.dbf重新命名為myts04_01.dbf、myts04_2.dbf重新命名為myts04_02.dbf   

  SETUP4 SQL> startup

  SETUP5 SQL> alter tablespace myts02

              rename datafile

              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04_1.dbf',

              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04_2.dbf'

              to

              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04_01.dbf',

              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04_02.dbf';

  SETUP6 SQL> alter tablespace myts04 online;

■多個資料表空間的資料檔案的重定位和重新命名

  SETUP1 SQL> alter tablespace myts01 offline normal;

         SQL> alter tablespace myts02 offline normal;

  SETUP2 SQL> shutdown immediate

  SETUP3 將myts01資料表空間的資料檔案myts01_1.dbf重新命名為myts01_01.dbf、

         將myts02資料表空間的資料檔案myts02_1.dbf重新命名為myts02_01.dbf、

  SETUP4 SQL> startup

  SETUP5 SQL> alter database

              rename file

              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts01_1.dbf',

              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_1.dbf'

              to

              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts01_01.dbf',

              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_01.dbf';

  SETUP6 SQL> alter tablespace myts01 online;  

              alter tablespace myts02 online;  

■查詢資料檔案資訊

  DBA_DATA_FILES

  DBA_TEMP_FILES

  DBA_EXTENTS

  USER_EXTENTS

  DBA_FREE_SPACE

  USER_FREE_SPACE

  V$DATAFILE

  V$DATAFILE_HEADER

■查看資料檔案與資料表空間

SELECT f.tablespace_name "資料表空間", 

Decode(d.EXTENT_MANAGEMENT,'DICTIONARY','字典','本地')  "資料表空間類型",

TRUNC(SUM(f.bytes/1024000),2 ) || 'MB' "自由空間",

MIN(f.bytes) "最小位元組", MAX(f.bytes) "最大位元組",

AVG(f.bytes) "平均位元組",COUNT(f.tablespace_name) "分布在"

FROM dba_free_space f, dba_tablespaces d 

Where f.tablespace_name = d.tablespace_name 

GROUP BY f.tablespace_name ,d.EXTENT_MANAGEMENT

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.