日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OMF(Oracle Managed Files)详解及测试

發(fā)布時(shí)間:2024/8/26 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OMF(Oracle Managed Files)详解及测试 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?在沒有OMF(托管文件)之前,數(shù)據(jù)庫(kù)管理員在創(chuàng)建數(shù)據(jù)文件的時(shí)候,需要關(guān)心兩個(gè)問題。一是該為這個(gè)數(shù)據(jù)文件取一個(gè)什么樣的名字,二是需要考慮新創(chuàng)建的數(shù)據(jù)文件會(huì)不會(huì)與已經(jīng)存在的數(shù)據(jù)文件重復(fù)。當(dāng)企業(yè)的數(shù)據(jù)庫(kù)比較大,有數(shù)百個(gè)數(shù)據(jù)文件時(shí),這項(xiàng)工作就會(huì)變得非常的困難。為此需要采用一種機(jī)制,對(duì)數(shù)據(jù)文件進(jìn)行自動(dòng)管理。在Oracle數(shù)據(jù)庫(kù)中就提供了OMF托管文件這種機(jī)制。
  一、使用過程中的相關(guān)配置。
  OMF托管文件機(jī)制相當(dāng)于是一個(gè)批處理。當(dāng)用戶在建立數(shù)據(jù)文件的時(shí)候,只要輸入一個(gè)命令,不需要帶名字、存儲(chǔ)位置等參數(shù),系統(tǒng)就會(huì)自動(dòng)根據(jù)一定的規(guī)則來創(chuàng)建數(shù)據(jù)文件。故在使用這個(gè)托管文件功能之前,管理員需要先在數(shù)據(jù)庫(kù)中建立好相關(guān)的規(guī)則。雖然系統(tǒng)有時(shí)候也會(huì)采用默認(rèn)的配置,但是筆者不建議這么做。對(duì)于一個(gè)復(fù)雜的數(shù)據(jù)庫(kù)系統(tǒng)來說,根據(jù)企業(yè)的實(shí)際情況,預(yù)先創(chuàng)建好數(shù)據(jù)文件的體系,是一個(gè)很好的習(xí)慣。系統(tǒng)的默認(rèn)設(shè)置往往針對(duì)的是中小型的應(yīng)用,無法滿足大型數(shù)據(jù)庫(kù)的要求。所以管理員需要根據(jù)實(shí)際情況來配置相關(guān)的規(guī)則。具體的來說,主要涉及到以下幾個(gè)參數(shù)。
  一是DB_CREATE_FILE_DEST參數(shù)。顧名思義,這個(gè)參數(shù)主要用來指定數(shù)據(jù)文件默認(rèn)的存儲(chǔ)位置。設(shè)置好這個(gè)參數(shù)之后,管理員在創(chuàng)建數(shù)據(jù)文件時(shí)就不需要再輸入具體的文件位置。這里需要注意的是,這個(gè)地址還跟臨時(shí)文件、重做日志文件、控制文件等等相關(guān)。
  二是DB_RECOVERY_FILE_DEST參數(shù)。這個(gè)參數(shù)主要用來定義重做日志、控制文件、RMAN備份文件、歸檔日志和閃回日志的默認(rèn)位置。當(dāng)管理員設(shè)置了這個(gè)參數(shù)之后,系統(tǒng)將會(huì)重寫其默認(rèn)設(shè)置。
  三是DB_CREATE_ONLINE_LOG_DEST_N參數(shù)。這個(gè)參數(shù)也是用來定義重做日志文件和控制文件的默認(rèn)位置。這里也許有人會(huì)問,如果這個(gè)參數(shù)與前面的參數(shù)定義的位置不同,那該如何處理呢?這里就涉及到一個(gè)優(yōu)先級(jí)的問題。通常情況下,如果設(shè)置了這個(gè)參數(shù),那么前面兩個(gè)參數(shù)的設(shè)置就會(huì)被覆蓋掉。最終系統(tǒng)使用的是這個(gè)參數(shù)所定義的位置。也許有人會(huì)問,這個(gè)參數(shù)后面為什么會(huì)帶一個(gè)字符N呢?其實(shí)這主要是為了建立副本的需要。具體的內(nèi)容,筆者會(huì)在下面的內(nèi)容中進(jìn)行詳細(xì)敘述。
  二、使用OMF來創(chuàng)建數(shù)據(jù)文件。
  以上相關(guān)的規(guī)則配置完畢之后,就可以使用OMF托管文件功能來創(chuàng)建數(shù)據(jù)文件。只需要運(yùn)行命令A(yù)LTER Tablespace ADD DATAFILE命令即可。注意在這個(gè)命令中,沒有指定所需要?jiǎng)?chuàng)建的數(shù)據(jù)文件的路徑與名字。這些都是系統(tǒng)根據(jù)預(yù)先定義的規(guī)則來自動(dòng)補(bǔ)充的。在使用這個(gè)命令的時(shí)候,筆者認(rèn)為還需要注意以下幾點(diǎn)內(nèi)容。
  一是如何來實(shí)現(xiàn)歸檔日志與控制文件的多個(gè)副本?在手工創(chuàng)建歸檔日志文件和控制文件的時(shí)候,我們總會(huì)在不同的位置創(chuàng)建多個(gè)相同名字的歸檔日志文件或者控制文件的副本。如此的話,當(dāng)某個(gè)歸檔日志文件或者控制文件出現(xiàn)問題,還可以通過副本來彌補(bǔ)。通過OMF托管文件來自動(dòng)創(chuàng)建數(shù)據(jù)文件時(shí),該如何實(shí)現(xiàn)這個(gè)功能呢?其實(shí)實(shí)現(xiàn)的方法也很簡(jiǎn)單。只需要在設(shè)置DB_CREATE_ONLINE_LOG_DEST_N這個(gè)參數(shù)的時(shí)候,多建幾個(gè),系統(tǒng)就會(huì)自動(dòng)創(chuàng)建相關(guān)文件的副本。這就是最后一個(gè)字符N的作用。
  二是如果創(chuàng)建表空間,則數(shù)據(jù)文件該如何處理?在沒有OMF托管文件功能之前,創(chuàng)建表空間與創(chuàng)建數(shù)據(jù)文件是兩個(gè)獨(dú)立的事項(xiàng)。也就是說,創(chuàng)建表空間之后,管理員還需要根據(jù)實(shí)際情況來來手工創(chuàng)建數(shù)據(jù)文件。不過在有了OMF托管文件功能之后,這種情況發(fā)生了根本性的變化。換句話說,只需要使用命令 Create Tablespace命令,而完全不需要制定涉及的實(shí)際數(shù)據(jù)文件,系統(tǒng)會(huì)自動(dòng)創(chuàng)建相關(guān)的數(shù)據(jù)文件。如果有指定多個(gè)鏡像位置的話,還會(huì)自動(dòng)創(chuàng)建重做日志文件或者控制文件的副本。
  三、OMF托管文件的局限性以及應(yīng)對(duì)措施。
  雖然OMF文件可以提高創(chuàng)建數(shù)據(jù)文件的自動(dòng)化能力,如自動(dòng)命名、自動(dòng)判斷重名問題等等。但是其在具體的使用過程中,也具有一定的局限性??偟膩碚f,OMF托管文件其主要的優(yōu)勢(shì)在于掛你院不用擔(dān)心會(huì)創(chuàng)建已經(jīng)存在的文件(包括數(shù)據(jù)文件、重做日志文件、控制文件等等)。而其主要的局限在與,通過OMF托管文件創(chuàng)建的文件,沒有容量管理和平衡I/O方面的優(yōu)點(diǎn)。為此對(duì)后續(xù)系統(tǒng)的性能等等方面會(huì)有一定的影響。在實(shí)際工作中,OMF托管文件往往不是單獨(dú)使用,而是結(jié)合Oracle的另一項(xiàng)功能ASM來使用。ASM(自動(dòng)存儲(chǔ)管理)是對(duì)OMF托管文件管理功能的一個(gè)有效補(bǔ)充。
  四、OMF與ASM結(jié)合使用的注意點(diǎn)。
  通常情況下,OMF無法平衡I/O和容量管理的功能。這方面的缺陷可以通過ASM自動(dòng)存儲(chǔ)管理機(jī)制來彌補(bǔ)。兩者在結(jié)合使用的過程中,需要關(guān)注如下內(nèi)容。
  第一裸設(shè)備的相關(guān)問題。裸設(shè)備指的是沒有使用文件系統(tǒng)的存儲(chǔ)設(shè)備。在這種設(shè)備上保存數(shù)據(jù),其好處是可以提高系統(tǒng)的性能。而其權(quán)限就是維護(hù)比較困難。這里需要注意的是,ASM自動(dòng)存儲(chǔ)管理其是支持裸設(shè)備的,為此就不存在異步I/O或者直接I/O等問題。而對(duì)于OMF來說,其大部分情況下還是在文件系統(tǒng)的背景下操作的。所以從應(yīng)用范圍來說,ASM要比OMF功能來的大。在具體配置時(shí),這需要特別注意的。
  第二是跨平臺(tái)的問題。Oracle數(shù)據(jù)庫(kù)是一個(gè)跨平臺(tái)的管理系統(tǒng),其即可以在微軟的操作系統(tǒng)上運(yùn)行,也可以在Linux等操作系統(tǒng)上部署。但是由于不同操作系統(tǒng)之間,其內(nèi)核等方面存在著比較大的差異,在實(shí)際配制過程中也會(huì)遇到很多不同的地方。在使用OMF功能于ASM功能的時(shí)候,也會(huì)遇到這種問題。這里需要注意的是,ASM是專門構(gòu)建用于簡(jiǎn)化DBA工作的管理工具。其提供了跨越所有服務(wù)器和存儲(chǔ)平臺(tái)的存儲(chǔ)管理界面。也就是說,ASM其可以支持多個(gè)操作系統(tǒng)平臺(tái)?;蛘哒f,在不同的平臺(tái)上,在操作上其基本是相同的。而對(duì)于OMF托管文件來說,則沒有這么簡(jiǎn)單。因?yàn)镺MF過關(guān)文件這個(gè)功能,更像是在跟操作系統(tǒng)打交道,如指定文件存儲(chǔ)位置等等,所以受操作系統(tǒng)的影響比較大。最簡(jiǎn)單的一個(gè)例子,就是Unix等操作系統(tǒng)與Windows等操作系統(tǒng)在文件路徑的表示上,就有很大的差異。在具體配置時(shí),需要注意這方面的差異,并選擇合適的配置方法。
  第三兩者分工不同。在實(shí)際工作中,筆者發(fā)現(xiàn)很多管理員,特別是第一次接觸Oracle數(shù)據(jù)庫(kù)的管理人員(如從SQLServer轉(zhuǎn)到 Oracle),他們?cè)谶@方面會(huì)有一個(gè)誤解。OMF托管文件,其具有自動(dòng)管理數(shù)據(jù)文件的功能。但是這個(gè)自動(dòng)管理數(shù)據(jù)文件,并不是說管理其容量。也就是說,OMF托管文件只涉及到數(shù)據(jù)文件的存儲(chǔ)路徑、數(shù)據(jù)文件的命名等等。而與存儲(chǔ)管理無關(guān)。更精確的說,只涉及到存儲(chǔ)管理的一小部分。存儲(chǔ)管理從大的范圍來說,包含存儲(chǔ)的路徑、存儲(chǔ)的名字、存儲(chǔ)容量、I/O等問題。而OMF托管文件只涉及到存儲(chǔ)的路徑、存儲(chǔ)的名字;OMF則涉及到存儲(chǔ)容量、I/O等方面的內(nèi)容。所以這兩個(gè)功能之間有明顯的差異。兩者是分工合作,相互補(bǔ)充。為此在實(shí)際工作中,往往這兩項(xiàng)功能需要同時(shí)實(shí)現(xiàn),才能夠發(fā)揮最佳的效果。

?

?

測(cè)試:

1.查詢數(shù)據(jù)庫(kù)是否支持OMF

SQL> show parameter db_create%???????????????????

?

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

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

db_create_file_dest???????????? string?? /disk/oracle/oradata

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

Value值不為空就支持OMF

?

2.設(shè)置數(shù)據(jù)庫(kù)支持OMF

A.修改初始化參數(shù)文件

[oracle@itc-test9 dbs]more initOCM.ora
.......

*.user_dump_dest='/disk/oracle/admin/OCM/udump'

?db_create_file_dest = '/disk/oracle/oradata'


B.
使用 ALTER SYSTEM 命令動(dòng)態(tài)設(shè)置


SQL> alter system set db_create_file_dest='/disk/oracle/oradata ;

System altered.

?

?

3.創(chuàng)建Tablespace 是不需要寫數(shù)據(jù)文件名稱和大小default 100M,自動(dòng)增長(zhǎng), Autoextend unlimited)

SQL> create tablespace omf;

Tablespace created.

[oracle@db datafile]$ ll

-rw-r----- 1 oracle oinstall 104865792 10-11 23:39 o1_mf_omf_798rr8bc_.dbf

?

?

?

?

4.Tablespace 添加文件是只使用adddatafile 就可以了

SQL> alter tablespace omf add datafile;

Tablespace altered.

[oracle@db datafile]$ ll

-rw-r----- 1 oracle oinstall 104865792 10-11 23:39 o1_mf_omf_798rr8bc_.dbf

-rw-r----- 1 oracle oinstall 104865792 10-11 23:39 o1_mf_omf_4zj3wj0v_.dbf

?

5.刪除Tablespace 時(shí),后面對(duì)應(yīng)的Datafile OS一并刪除

SQL> create tablespace omf;

Tablespace created.

?

?

總結(jié):

文件創(chuàng)建之后,Oracle就可以分配和命名這些文件。Oracle OMF使用如下的命名轉(zhuǎn)換慣例。默認(rèn)的文件大小為100M,并按如下格式命名:

where
%u is a unique 8 digit code
%g is the log file group number
%t is the tablespace name

Controlfilesora_%u.ctl
Redo Log Files ora_%g_%u.log
Datafiles ora_%t_%u.dbf
Temporary Datafilesora_%t_%u.tmp

Oracle9i OMF工具還有一個(gè)新的警告日志消息(alert log message),它用來告訴我們OMF數(shù)據(jù)文件何時(shí)發(fā)生了改動(dòng)。下面是關(guān)于警告日志的一個(gè)例子。

Fri Mar 23 01:44:462001
CREATE TABLESPACE omf1 DATAFILE SIZE 10M AUTOEXTEND OFF
Fri Mar 23 01:44:47 2001
Created Oracle managed file /databases/ed25/OMF1/ora_omf1_xcp6rg84.dbf
Completed: CREATE TABLESPACE omf1 DATAFILE SIZE 10M AUTOEXTE
Fri Mar 23 01:45:45 2001
drop tablespace omf1
Fri Mar 23 01:45:45 2001
Deleted Oracle managed file /databases/ed25/OMF1/ora_omf_xcp6rg84.dbf
Completed: drop tablespace omf1

總結(jié)

以上是生活随笔為你收集整理的OMF(Oracle Managed Files)详解及测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。