【OMF】使用Oracle的OMF 特性
Oracle的OMF全稱“Oracle managed file”,關於這個概念的參考請自行查閱Oracle官方文件“Using Oracle-Managed Files”()。關於這項體現Oracle自動化演進的特性的評價褒貶不一。我們不討論是否推薦在生產系統中引入這項技術,我們一同看一下這個技術帶給我們的樂趣。
1.確認系統是否啟用OMF特性
Oracle資料庫是否啟用OMF特性可以透過檢視DB_CREATE_FILE_DEST引數來獲得。
當DB_CREATE_FILE_DEST引數值為空時表示未啟用OMF功能。
sys@ora10g> show parameter db_create_file_dest
NAME TYPE VALUE
-------------------- -------------------- -------------------
db_create_file_dest string
2.開啟OMF特性
透過修改資料庫引數使其生效。方法很多,按照個人喜好進行調整(pfile調整方法,alter system調整引數)。
sys@ora10g> alter system set db_create_file_dest='/oracle/oradata';
System altered.
sys@ora10g> show parameter db_create_file_dest
NAME TYPE VALUE
--------------------- -------------------- ------------------
db_create_file_dest string /oracle/oradata
3.使用OMF特性建立表空間
sys@ora10g> create tablespace tbs_secooler;
Tablespace created.
4.資料檔案存放位置
此時Oracle會在/oracle/oradata目錄下以資料庫例項的大寫名字(這裡是ORA10G)建立一個目錄,表空間對應的資料檔案會存放在datafile目錄下。
sys@ora10g> !ls -l /oracle/oradata/ORA10G/datafile
total 102512
-rw-r----- 1 oracle oinstall 104865792 Jul 15 05:59 o1_mf_tbs_seco_63x8xzvw_.dbf
5.表空間的預設屬性
sys@ora10g> select dbms_metadata.get_ddl('TABLESPACE','TBS_SECOOLER') from dual;
DBMS_METADATA.GET_DDL('TABLESPACE','TBS_SECOOLER')
---------------------------------------------------------------------
CREATE TABLESPACE "TBS_SECOOLER" DATAFILE
'/oracle/oradata/ORA10G/datafile/o1_mf_tbs_seco_63x8xzvw_.dbf' SIZE 104857600
AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M
LOGGING ONLINE PERMANENT BLOCKSIZE 8192
EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO
可見,透過OMF方式建立的表空間預設是100M大小,並且是自動擴充套件的。
6.新增資料檔案
可以簡單的透過下面的命令為表空間tbs_secooler新增一個資料檔案
sys@ora10g> alter tablespace tbs_secooler add datafile;
Tablespace altered.
sys@ora10g> select dbms_metadata.get_ddl('TABLESPACE','TBS_SECOOLER') from dual;
DBMS_METADATA.GET_DDL('TABLESPACE','TBS_SECOOLER')
---------------------------------------------------------------------
CREATE TABLESPACE "TBS_SECOOLER" DATAFILE
'/oracle/oradata/ORA10G/datafile/o1_mf_tbs_seco_63x8xzvw_.dbf' SIZE 104857600
AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M,
'/oracle/oradata/ORA10G/datafile/o1_mf_tbs_seco_63x9scb5_.dbf' SIZE 104857600
AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M
LOGGING ONLINE PERMANENT BLOCKSIZE 8192
EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO
sys@ora10g> !ls -l /oracle/oradata/ORA10G/datafile
total 205024
-rw-r----- 1 oracle oinstall 104865792 Jul 15 05:59 o1_mf_tbs_seco_63x8xzvw_.dbf
-rw-r----- 1 oracle oinstall 104865792 Jul 15 06:14 o1_mf_tbs_seco_63x9scb5_.dbf
7.刪除表空間資料檔案會隨之刪除
sys@ora10g> drop tablespace tbs_secooler;
Tablespace dropped.
sys@ora10g> !ls -l /oracle/oradata/ORA10G/datafile
total 0
這個特性曾經一度讓人們歡呼雀躍。
8.小結
Oracle的OMF特性很少被大規模的應用。原因很多,個人認為OMF雖然帶來了操作上的些許便利,但是它隱藏了一些必要細節,同時表空間名字與資料檔名字很難快速建立起對應關係,為後期的管理帶來了極大的不便。大家可以在實際環境酌情使用這項技術。
Good luck.
secooler
10.07.14
-- The End --
1.確認系統是否啟用OMF特性
Oracle資料庫是否啟用OMF特性可以透過檢視DB_CREATE_FILE_DEST引數來獲得。
當DB_CREATE_FILE_DEST引數值為空時表示未啟用OMF功能。
sys@ora10g> show parameter db_create_file_dest
NAME TYPE VALUE
-------------------- -------------------- -------------------
db_create_file_dest string
2.開啟OMF特性
透過修改資料庫引數使其生效。方法很多,按照個人喜好進行調整(pfile調整方法,alter system調整引數)。
sys@ora10g> alter system set db_create_file_dest='/oracle/oradata';
System altered.
sys@ora10g> show parameter db_create_file_dest
NAME TYPE VALUE
--------------------- -------------------- ------------------
db_create_file_dest string /oracle/oradata
3.使用OMF特性建立表空間
sys@ora10g> create tablespace tbs_secooler;
Tablespace created.
4.資料檔案存放位置
此時Oracle會在/oracle/oradata目錄下以資料庫例項的大寫名字(這裡是ORA10G)建立一個目錄,表空間對應的資料檔案會存放在datafile目錄下。
sys@ora10g> !ls -l /oracle/oradata/ORA10G/datafile
total 102512
-rw-r----- 1 oracle oinstall 104865792 Jul 15 05:59 o1_mf_tbs_seco_63x8xzvw_.dbf
5.表空間的預設屬性
sys@ora10g> select dbms_metadata.get_ddl('TABLESPACE','TBS_SECOOLER') from dual;
DBMS_METADATA.GET_DDL('TABLESPACE','TBS_SECOOLER')
---------------------------------------------------------------------
CREATE TABLESPACE "TBS_SECOOLER" DATAFILE
'/oracle/oradata/ORA10G/datafile/o1_mf_tbs_seco_63x8xzvw_.dbf' SIZE 104857600
AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M
LOGGING ONLINE PERMANENT BLOCKSIZE 8192
EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO
可見,透過OMF方式建立的表空間預設是100M大小,並且是自動擴充套件的。
6.新增資料檔案
可以簡單的透過下面的命令為表空間tbs_secooler新增一個資料檔案
sys@ora10g> alter tablespace tbs_secooler add datafile;
Tablespace altered.
sys@ora10g> select dbms_metadata.get_ddl('TABLESPACE','TBS_SECOOLER') from dual;
DBMS_METADATA.GET_DDL('TABLESPACE','TBS_SECOOLER')
---------------------------------------------------------------------
CREATE TABLESPACE "TBS_SECOOLER" DATAFILE
'/oracle/oradata/ORA10G/datafile/o1_mf_tbs_seco_63x8xzvw_.dbf' SIZE 104857600
AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M,
'/oracle/oradata/ORA10G/datafile/o1_mf_tbs_seco_63x9scb5_.dbf' SIZE 104857600
AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M
LOGGING ONLINE PERMANENT BLOCKSIZE 8192
EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO
sys@ora10g> !ls -l /oracle/oradata/ORA10G/datafile
total 205024
-rw-r----- 1 oracle oinstall 104865792 Jul 15 05:59 o1_mf_tbs_seco_63x8xzvw_.dbf
-rw-r----- 1 oracle oinstall 104865792 Jul 15 06:14 o1_mf_tbs_seco_63x9scb5_.dbf
7.刪除表空間資料檔案會隨之刪除
sys@ora10g> drop tablespace tbs_secooler;
Tablespace dropped.
sys@ora10g> !ls -l /oracle/oradata/ORA10G/datafile
total 0
這個特性曾經一度讓人們歡呼雀躍。
8.小結
Oracle的OMF特性很少被大規模的應用。原因很多,個人認為OMF雖然帶來了操作上的些許便利,但是它隱藏了一些必要細節,同時表空間名字與資料檔名字很難快速建立起對應關係,為後期的管理帶來了極大的不便。大家可以在實際環境酌情使用這項技術。
Good luck.
secooler
10.07.14
-- The End --
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29618264/viewspace-2155060/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle OMF特性試驗Oracle
- oracle OMF的使用Oracle
- 從引數取值看Oracle OMF特性Oracle
- OMF (Oracle Managed File)Oracle
- Oracle OMF 為雞肋Oracle
- oracle實驗記錄 (OMF)Oracle
- 4.3.4.1 在不使用Oracle OMF的情況下建立CDBOracle
- 4.3.4.2 使用OMF 件建立CDB:示例
- 【OMF】在OMF管理模式下日誌組新增效果模式
- OMF (Oracle Managed Files) Usage for Datafiles [ID 137482.1]Oracle
- Oralce OMF 功能詳解
- oracle 19c建立非OMF檔案命名格式的PDBOracle
- OMF和flash_recovery_area的關係!
- 2.5.8 指定OMF方式建立資料庫資料庫
- 用OMF來簡化資料庫管理資料庫
- 非OMF管理下ORACLE 11G R2 Data Guard配置Oracle
- 從OMF和備份角度看ASM的優點ASM
- 用OMF來簡化資料庫管理(轉)資料庫
- Oracle 11g r2基於OMF方式手工建立資料庫Oracle資料庫
- Performing duplicate database with ASM/OMF/RMAN (Doc ID 340848.1)ORMDatabaseASM
- 如何設定redo log的OMF 及如何修改log檔案大小
- oracle儲存管理之 oracle managed files(OMF)(server.102 b14231)OracleServer
- Recreate stdby Control File When dbf Are On ASM And Using OMF-734862.1ASM
- 非OMF管理 自動新增資料檔案add_datafiles.sh
- 【DataGuard】主庫是否為OMF管理方式對使用Grid Control部署物理DataGuard的影響
- ORACLE RAC ASM資料檔案遷移OMF檔案報錯ORA-01276解決OracleASM
- OMF管理自動新增資料檔案指令碼add_datafile.sh指令碼
- [重慶思莊每日技術分享]-ORACLE DG物理備庫使用別名資料檔案改變路徑到OMF路徑Oracle
- Oracle的特性分頁Oracle
- 全面學習ORACLE Scheduler特性(3)使用ProgramsOracle
- 使用 Oracle Database 10g中的閃回表特性OracleDatabase
- 全面學習ORACLE Scheduler特性(11)使用Job ClassesOracle
- Oracle 12c新特性之Sequence的Session特性OracleSession
- oracle 11g中的 oracle restart特性OracleREST
- SQL Query Result Cache的使用和配置--Oracle 11G新特性SQLOracle
- 使用Oracle功能特性提高應用執行效率 (3)Oracle
- 使用Oracle功能特性提高應用執行效率 (2)Oracle
- 使用Oracle功能特性提高應用執行效率 (1)Oracle