亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Oralce OMF 功能詳解

系統 1640 0

??? OMF , 全稱是 Oracle_Managed Files , Oracle 文件管理,使用 OMF 可以簡化管理員的管理工作,不用指定文件的名字、大小、路徑,其名字,大小,

路徑由 oracle 自動分配。在刪除不再使用的日志、數據、控制文件時, OMF 也可以自動刪除其對應的 OS 文件。

?

OMF 支持下列文件的自動管理:

??? 表空間

??? 日志文件 ( 聯機 )

??? 控制文件

前提條件:需要為這些類型文件設定相關參數。

?

. 數據文件的 OMF 管理

? 數據文件管理參數: db_create_file_dest

? db_create_file_dest Oracle 創建數據文件、臨時文件時,在未明確指定路徑的情況下的缺省路徑,當 db_create_online_log_dest_n 未指定時,

?????????????????????? 也作為聯機日志文件和控制文件的缺省路徑。

?

? 假定需要創建表空間 s 及數據文件

?

??? SQL > CREATE TABLESPACE s ; ? /* 收到了錯誤信息 */

?????? create tablespace s

???????????????????? ? *

?????? ERROR at line 1 :

?????? ORA - 02199 : missing DATAFILE / TEMPFILE clause

?

??? SQL > show parameter db_create_file ?? /* 查看 db_create_file_dest 參數 */

?

?????? NAME ???????????????????????????????? TYPE ??????? VALUE

?????? ------------------------------------ ----------- ------------------------------

?????? db_create_file_dest ????????????????? string

?

??? -- 設定 db_create_file_dest 參數

??? SQL > ALTER SYSTEM SET db_create_file_dest = '/u01/app/oracle/oradata/orcl' ;

?

?????? System altered .

?

??? -- 設定參數后,創建成功

??? SQL > CREATE TABLESPACE s ; ?

?

?????? Tablespace created .

?

??? SQL > SELECT NAME FROM v$datafile ; ? /* 可以看到 ORCL/datafile/o1_mf_s_5vrl1t7h_.dbf Oralce 自動創建的數據文件 */

?

?????? NAME

?????? --------------------------------------------------------------------------------

?????? / u01 / app / oracle / oradata / orcl / system01 . dbf

?????? / u01 / app / oracle / oradata / orcl / undotbs01 . dbf

?????? / u01 / app / oracle / oradata / orcl / sysaux01 . dbf

?????? / u01 / app / oracle / oradata / orcl / users01 . dbf

?????? / u01 / app / oracle / oradata / orcl / example01 . dbf

?????? / u01 / app / oracle / oradata / orcl / Test . dbf

?????? / u01 / app / oracle / oradata / orcl / ORCL / datafile / o1_mf_s_5vrl1t7h_ . dbf

?

??? /* 查看物理文件,缺省為 MB*/

??? SQL > ho ls - lh / u01 / app / oracle / oradata / orcl / ORCL / datafile / o1_mf_s_5vrl1t7h_ . dbf ?

?????? - rw ------- 1 oracle oinstall 101M Apr ? 7 16:54 /u01/app/oracle/oradata/orcl/ORCL/datafile/o1_mf_s_5vrl1t7h_.dbf

?

??? SQL > CREATE TABLESPACE t DATAFILE SIZE 10m ; ? /* 也可指定數據文件的大小為 MB*/

?

?????? Tablespace created .

?

??? SQL > SELECT NAME FROM v$datafile ;

?

?????? NAME

?????? --------------------------------------------------------------------------------

?????? / u01 / app / oracle / oradata / orcl / system01 . dbf

?????? / u01 / app / oracle / oradata / orcl / undotbs01 . dbf

?????? / u01 / app / oracle / oradata / orcl / sysaux01 . dbf

?????? / u01 / app / oracle / oradata / orcl / users01 . dbf

?????? / u01 / app / oracle / oradata / orcl / example01 . dbf

?????? / u01 / app / oracle / oradata / orcl / Test . dbf

?????? / u01 / app / oracle / oradata / orcl / ORCL / datafile / o1_mf_s_5vrl1t7h_ . dbf

?????? / u01 / app / oracle / oradata / orcl / ORCL / datafile / o1_mf_t_5vrlgqtl_ . dbf

?

??? SQL > ho ls - lh / u01 / app / oracle / oradata / orcl / ORCL / datafile / o1_mf_t_5vrlgqtl_ . dbf

?????? - rw ------- 1 oracle oinstall 11M Apr ? 7 17:01 /u01/app/oracle/oradata/orcl/ORCL/datafile/o1_mf_t_5vrlgqtl_.dbf

?

??? -- 刪除表空間時,對于使用了 OMF 生成的數據文件將隨著表空間的刪除一起被刪除

??? SQL > DROP TABLESPACE t ;

?

??? Tablespace dropped .

?

??? -- 查看物理文件,已經不存在

??? SQL > ho ls - lh / u01 / app / oracle / oradata / orcl / ORCL / datafile / o1_mf_t_5vrlgqtl_ . dbf ?

?????? ls : / u01 / app / oracle / oradata / orcl / ORCL / datafile / o1_mf_t_5vrlgqtl_ . dbf : No such file or directory

?

??? -- 對于未采用 OMF 來創建的表空間,在刪除表空間之后,其數據文件并沒有刪除, v$datafile 視圖中被刪除

??? -- 下面是未使用 OMF 創建的 x 表空間及數據文件

??? SQL > CREATE TABLESPACE x DATAFILE '/u01/app/oracle/oradata/orcl/x.dbf' SIZE 10m ;

?

?????? Tablespace created .

?

??? SQL > SELECT NAME FROM v$datafile ; ?????

?

?????? NAME

?????? --------------------------------------------------------------------------------

?????? / u01 / app / oracle / oradata / orcl / system01 . dbf

?????? / u01 / app / oracle / oradata / orcl / undotbs01 . dbf

?????? / u01 / app / oracle / oradata / orcl / sysaux01 . dbf

?????? / u01 / app / oracle / oradata / orcl / users01 . dbf

?????? / u01 / app / oracle / oradata / orcl / example01 . dbf

?????? / u01 / app / oracle / oradata / orcl / Test . dbf

?????? / u01 / app / oracle / oradata / orcl / ORCL / datafile / o1_mf_s_5vrl1t7h_ . dbf

?????? / u01 / app / oracle / oradata / orcl / x . dbf

?

??? SQL > DROP TABLESPACE x ;

?

?????? Tablespace dropped .

?

??? SQL > SELECT NAME FROM v$datafile ; /* 視圖中已不存在 x.dbf 的數據文件 */

?

?????? NAME

?????? --------------------------------------------------------------------------------

?????? / u01 / app / oracle / oradata / orcl / system01 . dbf

?????? / u01 / app / oracle / oradata / orcl / undotbs01 . dbf

?????? / u01 / app / oracle / oradata / orcl / sysaux01 . dbf

?????? / u01 / app / oracle / oradata / orcl / users01 . dbf

?????? / u01 / app / oracle / oradata / orcl / example01 . dbf

?????? / u01 / app / oracle / oradata / orcl / Test . dbf

?????? / u01 / app / oracle / oradata / orcl / ORCL / datafile / o1_mf_s_5vrl1t7h_ . dbf

?

??? SQL > ho ls / u01 / app / oracle / oradata / orcl / x . dbf ?? /* 操作系統中依然存在 */

?????? / u01 / app / oracle / oradata / orcl / x . dbf

?

??? -- 注意:使用 OMF 的時候會將物理文件刪除,應特別注意使用

??? -- 使用下面的方法重建 x 表空間,然后使用 including contents and datafiles 徹底刪除表空間及物理文件

??? SQL > CREATE TABLESPACE X DATAFILE '/u01/app/oracle/oradata/orcl/x.dbf' REUSE ; ??

?

?????? Tablespace created .

?

??? SQL > DROP TABLESPACE x INCLUDING CONTENTS AND DATAFILES ;

?

?????? Tablespace dropped .

?

??? SQL > ho ls / u01 / app / oracle / oradata / orcl / x . dbf

?????? ls : / u01 / app / oracle / oradata / orcl / x . dbf : No such file or directory

?

總結:使用 OMF 管理文件的方法

? 1. 使用 ALTER SYSTEM SET db_create_file_dest = '<path>' 設置路徑

? 2. 查看剛剛的設置 SHOW PARAMETER db_create_file_dest ;

? 3. 創建表空間及數據文件 CREATE TABLESPACE tablespace_name

? 4. 單獨創建表空間 CREATE TABLESPACE <> DATAFILE '<path>' SIZE <>;

? 5. 也可以創建 undo temporary tablespace CREATE UNDO TABLESPACE tablespace_name ; CREATE TEMPORARY TABLESPACE tablespace_name ;

? 6. 刪除表空間 DROP TABLESPACE tablespace_name ; OMF 情況下則刪除物理文件,等效于未使用 OMF 創建,使用 INCLUDING CONTENTS AND DATAFILES 刪除方式

?

?

. 日志文件的 OMF 管理

? 日志文件管理參數: db_create_online_log_dest_n

? db_create_online_log_dest_n : Oracle 創建聯機日志文件和控制文件時,在未明確指定路徑的情況下的缺省路徑

?

-- 查看日志文件的參數,下面是未作設置的 db_create_online 參數

??? SQL > SHOW PARAMETER db_create_online

?

?????? NAME ???????????????????????????????? TYPE ??????? VALUE

?????? ------------------------------------ ----------- ------------------------------

?????? db_create_online_log_dest_1 ????????? string

?????? db_create_online_log_dest_2 ????????? string

?????? db_create_online_log_dest_3 ????????? string

?????? db_create_online_log_dest_4 ????????? string

?????? db_create_online_log_dest_5 ????????? string

?

??? -- 從上面可以看出系統預留了一個日志組個成員來形成 OMF ,一般情況下我們僅僅需要個成員即可。因為在此設定個參數文件

??? -- 下面是未設定的情況下創建日志文件,則默認為在數據文件路徑及閃回區各放一個文件,因為上述兩個路徑都是 OMF 路徑,如下:

?

??? SQL > SELECT MEMBER FROM v$logfile ;

?

?????? MEMBER

?????? --------------------------------------------------------------------------------

?????? / u01 / app / oracle / oradata / orcl / redo03 . log

?????? / u01 / app / oracle / oradata / orcl / redo02 . log

?????? / u01 / app / oracle / oradata / orcl / redo01 . log

?????? / u01 / app / oracle / oradata / orcl / ORCL / onlinelog / o1_mf_4_5vtgzjyz_ . log

?????? / u01 / app / oracle / flash_recovery_area / ORCL / onlinelog / o1_mf_4_5vtgzlhb_ . log

?

??? SQL > SHOW PARAMETER db_create_file_dest

?

?????? NAME ??????? ????????????????????????? TYPE ??????? VALUE

?????? ------------------------------------ ----------- ------------------------------

?????? db_create_file_dest ????????????????? string ????? / u01 / app / oracle / oradata / orcl

?

?????? SQL > show parameter db_recovery_file_dest

?

?????? NAME ???????????????????????????????? TYPE ??????? VALUE

?????? ------------------------------------ ----------- ------------------------------

?????? db_recovery_file_dest ??????????????? string ????? / u01 / app / oracle / flash_recovery

???????????????????????????????????????????????? ? _area

?????? db_recovery_file_dest_size ?????????? big integer 2G

?

??? -- 將日志文件存放到指定的 disk1,disk2 下面

??? SQL > ho mkdir / u01 / app / oracle / disk1

?

??? SQL > ho mkdir / u01 / app / oracle / disk2

?

??? SQL > ALTER SYSTEM SET db_create_online_log_dest_1 = '/u01/app/oracle/disk1' ;

?

?????? System altered .

?

??? SQL > ALTER SYSTEM SET db_create_online_log_dest_2 = '/u01/app/oracle/disk2' ;

?

?????? System altered .

?

??? SQL > ALTER DATABASE ADD logfile ;

?

?????? Database altered .

?

??? SQL > SELECT * FROM v$logfile ; /* 可以看到新的日志文件放到 disk1,disk2 下面 */

?

?????? GROUP# STATUS ? TYPE ??? MEMBER ?????????????????????????????????? IS_

??? ---------- ------- ------- ---------------------------------------- ---

?????????? ? 3 ???????? ONLINE ? / u01 / app / oracle / oradata / orcl / redo03 . log ? NO

?????????? ? 2 ???????? ONLINE ? / u01 / app / oracle / oradata / orcl / redo02 . log ? NO

?????????? ? 1 ???????? ONLINE ? / u01 / app / oracle / oradata / orcl / redo01 . log ? NO

?????????? ? 4 ?????? ?? ONLINE ? / u01 / app / oracle / oradata / orcl / ORCL / online NO

???????????????????????? ?? log / o1_mf_4_5vtgzjyz_ . log

?

?????????? ? 4 ???????? ONLINE ? / u01 / app / oracle / flash_recovery_area / ORCL YES

???????????????????????? ?? / onlinelog / o1_mf_4_5vtgzlhb_ . log

?

?????????? ? 5 ???????? ONLINE ? / u01 / app / oracle / disk1 / ORCL / onlinelog / o1_ NO

???????????????????????? ?? mf_5_5vtlpxo0_ . log

?

?????? GROUP# STATUS ? TYPE ??? MEMBER ?????????????????????????????????? IS_

??? ---------- ------- ------- ---------------------------------------- ---

?

?????????? ? 5 ???????? ONLINE ? / u01 / app / oracle / disk2 / ORCL / onlinelog / o1_ NO

????????????? ?????????? ?? mf_5_5vtlpz4d_ . log

?

???????????????????????? ?? SQL > alter database drop logfile group 5 ;

?

??? Database altered .

?

??? /* 刪除日志文件組 */

??? SQL > ALTER DATABASE DROP logfile GROUP 4 ;

?

?????? Database altered .

?

??? SQL > SELECT group# , member FROM v$logfile ;

?

?????? GROUP# MEMBER

??? ---------- ----------------------------------------

?????????? ? 3 / u01 / app / oracle / oradata / orcl / redo03 . log

?????????? ? 2 / u01 / app / oracle / oradata / orcl / redo02 . log

?????????? ? 1 / u01 / app / oracle / oradata / orcl / redo01 . log

?????????? ?

??? SQL > ho ls / u01 / app / oracle / disk1 / ORCL / onlinelog / o1_mf_5_5vtlpxo0_ . log ;

?????? ls : / u01 / app / oracle / disk1 / ORCL / onlinelog / o1_mf_5_5vtlpxo0_ . log : No such file or directory

?????? ?

總結:

? 1. 當定義了 db_recovery_file_dest db_create_file_dest 路徑,且沒有定義 db_create_online_log_dest_n 的時候,

??? OMF 將日志文件存放在 db_recovery_file_dest db_create_file_dest 路徑下,而且日志組下為個成員

? ? 2. 當定義了 db_create_online_log_dest_1 則將日志文件存放到 db_create_online_log_dest_1

??? db_create_file_dest 路徑下,且日志組下為個成員

? 3. 當定義了 db_create_online_log_dest_1 db_create_online_log_dest_2 則存放到

??? db_create_online_log_dest_1 db_create_online_log_dest_2

? 4. 當定義了多個 db_create_online_log_dest_n ,則為每個組 n 個日志成員,且多路復用

? 5. 增加日志文件的方法 ;

??? alter database add logfile ;

??? alter database add logfile [group n] ;

??? alter database add logfile member '<dir>' to group [n]

??? /*add logfile member 這個方法僅使用未使用 OMF 的日志文件,對于已經運用了 OMF 的日志組,無法使用該功能添加日志文件 */

? 6. 刪除日志文件組時,對于 OMF 的日志文件組,其對應的物理文件同時被刪除

??? alter database drop logfile group [n]

?

?

. 使用 OMF 管理控制文件

? 使用 OMF 管理控制文件同管理日志文件類似,主要涉及到的也是 db_create_online_log_dest_n 參數

? 即控制文件默認存放在 db_create_online_log_dest_n 下,當定義了一個 db_create_online_log_dest_n

? 則生成一個控制文件,當定義了多了則生成多個控制文件。

? 前提條件:去掉 control_files 參數

? alter system reset control_files scope = spfile sid = '*' ;

?

? 以下是預留的 OMF 路徑:

??? SQL > SHOW PARAMETER db_create

?

?????? NAME ???????????????????????????????? TYPE ??????? VALUE

?????? ------------------------------------ ----------- ------------------------------

?????? db_create_file_dest ????????????????? string ????? / u01 / app / oracle / oradata / orcl

?????? db_create_online_log_dest_1 ????????? string ????? / u01 / app / oracle / disk1

?????? db_create_online_log_dest_2 ????????? string ????? / u01 / app / oracle / disk2

?????? db_create_online_log_dest_3 ????????? string

?????? db_create_online_log_dest_4 ????????? string

?????? db_create_online_log_dest_5 ????????? string

??? SQL > show parameter db_recovery_file

?

?????? NAME ???????????????????????????????? TYPE ??????? VALUE

?????? ------------------------------------ ----------- ------------------------------

?????? db_recovery_file_dest ??????????????? string ????? / u01 / app / oracle / flash_recovery

????????????????????????????????????????????? ? _area

?????? db_recovery_file_dest_size ?????????? big integer 2G

?

總結

??? 參數 ???????????????????????????? ?? ?????????? 適用范圍

??? db_create_file_dest_size ????????? datafile create tablespace <>

??? db_create_online_log_dest_n ?????? logfile , controlfile

??? db_recovery_file_dest ???????????? ? rman , archivelog , onlinelog

?

. 更多

?? VmWare6.5.2 下安裝 RHEL 5.4 (配置 Oracle 安裝環境) ??

?

?? Linux (RHEL 5.4) 下安裝 Oracle 10g R2

?

?? 使用 Uniread 實現 SQLplus 翻頁功能

??

?? Oracle 相關

?? Using Oracle-Managed Files

?

??

?

Oralce OMF 功能詳解


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 激情在线日韩视频免费 | 一级片视频免费观看 | 日日夜夜嗷嗷叫 | 成人午夜网站 | 天天色天天射综合网 | 日本黄色录像 | 在线观看黄色免费视频 | 深夜国产| 99热久久国产精品这 | 狠狠色噜噜狠狠狠狠91 | 99热在线精品免费播放6 | 午夜伦情电午夜伦情影院 | 日日干夜夜干 | 综合九九 | 在线观看久久 | 操一操| 久久亚洲精品一区二区三区浴池 | 日本免费黄色录像 | 亚洲主播在线 | 国产精品久久久久久久久久久威 | 久久穴| 五月婷婷色综合 | 香蕉久草在线 | 狠狠狠操 | 九九99久久精品影视 | 色接久久| 91久久在线| 九九夜夜操妹子 | 天天干夜夜草 | 三级黄毛片 | 国产成人亚洲综合a∨婷婷 国产成人亚洲综合欧美一部 | 妇女bbw奶水bbw | 五月精品 | 四虎影院成人在线观看 | 久久免费视频观看 | 亚洲欧美一区二区三区九九九 | 国产欧美日韩综合二区三区 | 亚洲国产日韩欧美高清片a 亚洲国产日韩欧美一区二区三区 | 黄色小视频在线免费观看 | 四虎影视在线免费观看 | 九九精品视频在线观看九九 |