ASM表空間管理

chenoracle發表於2015-07-22

ASM 表空間管理

 

一 ASM 建立表空間

SQL> create tablespace chen datafile '+SYSTEDG' size 10M;

 

SQL> col tablespace_name for a15

SQL> col file_name for a50

SQL> select tablespace_name,file_name from dba_data_files;

TABLESPACE_NAME FILE_NAME

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

EXAMPLE    +SYSTEDG/prod1/datafile/example.265.885576627

USERS      +SYSTEDG/prod1/datafile/users.259.885576451

UNDOTBS1   +SYSTEDG/prod1/datafile/undotbs1.258.885576451

SYSAUX     +SYSTEDG/prod1/datafile/sysaux.257.885576451

SYSTEM     +SYSTEDG/prod1/datafile/system.256.885576449

CHEN       +SYSTEDG/prod1/datafile/chen.269.885721811

 

6 rows selected.

 

增加資料檔案

名字可以自動生成,也可以自己設定

SQL> alter tablespace chen add datafile '+SYSTEDG' size 5M;

SQL> alter tablespace chen add datafile '+SYSTEDG/chen03.dbf' size 5M;

SQL> alter tablespace chen add datafile '/home/oracle/chen04.dbf' size 5M;

 

檢視資料檔案

SQL> select tablespace_name,file_name from dba_data_files;

TABLESPACE_NAME FILE_NAME

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

EXAMPLE    +SYSTEDG/prod1/datafile/example.265.885576627

USERS      +SYSTEDG/prod1/datafile/users.259.885576451

UNDOTBS1   +SYSTEDG/prod1/datafile/undotbs1.258.885576451

SYSAUX     +SYSTEDG/prod1/datafile/sysaux.257.885576451

SYSTEM     +SYSTEDG/prod1/datafile/system.256.885576449

CHEN       +SYSTEDG/prod1/datafile/chen.269.885721811

CHEN       +SYSTEDG/prod1/datafile/chen.270.885722527

CHEN       +SYSTEDG/chen03.dbf

CHEN       /home/oracle/chen04.dbf

 

9 rows selected.

 

建立使用者,建立表

( 測試一下資料是否平均分配在不同的資料檔案中)

SQL> create user chen identified by chen default tablespace chen;

 

SQL> grant dba,connect,resource to chen;

 

SQL>

select a.tablespace_name,

       a.file_name,

       a.bytes / 1024 / 1024 || 'M' as z_s,

       b.bytes / 1024 / 1024 || 'M' as fr_z

  from dba_data_files a, dba_free_space b

 where a.tablespace_name = 'CHEN'

   and a.file_id = b.file_id(+);

 

---- 為什麼要用左連線?

因為 當資料檔案滿了,剩餘空間為零時,dba_free_space 將不會出現此資料檔案;

 

TABLESPACE_NAME         FILE_NAME      Z_S   FR_Z

1       CHEN        /home/oracle/chen04.dbf        5M   4M

2       CHEN        +SYSTEDG/prod1/datafile/chen.269.885721811    10M 9M

3       CHEN        +SYSTEDG/prod1/datafile/chen.270.885722527    5M   4M

4       CHEN        +SYSTEDG/chen03.dbf     5M   4M

 

SQL> conn chen/chen

 

SQL> create table t1 as select level as id,sysdate as d from dual connect by level<=100000;

 

SQL>

select a.tablespace_name,

       a.file_name,

       a.bytes / 1024 / 1024 || 'M' as z_s,

       b.bytes / 1024 / 1024 || 'M' as fr_z

  from dba_data_files a, dba_free_space b

 where a.tablespace_name = 'CHEN'

   and a.file_id = b.file_id(+);

 

     TABLESPACE_NAME         FILE_NAME      Z_S   FR_Z

1       CHEN        /home/oracle/chen04.dbf        5M   3M

2       CHEN        +SYSTEDG/prod1/datafile/chen.269.885721811    10M 8M

3       CHEN        +SYSTEDG/prod1/datafile/chen.270.885722527    5M   3M

4       CHEN        +SYSTEDG/chen03.dbf     5M   4M

資料幾乎平均分配到不同的資料檔案

歡迎關注我的微信公眾號"IT小Chen",共同學習,共同成長!!!

ASM表空間管理

ASM表空間管理



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29785807/viewspace-1744755/,如需轉載,請註明出處,否則將追究法律責任。

相關文章