Oracle數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)教程_第1頁
Oracle數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)教程_第2頁
Oracle數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)教程_第3頁
Oracle數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)教程_第4頁
Oracle數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)教程_第5頁
已閱讀5頁,還剩91頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第6章物理存儲(chǔ)結(jié)構(gòu)本章內(nèi)容Oracle數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)數(shù)據(jù)文件控制文件重做日志文件歸檔重做日志文件本章要求理解Oracle數(shù)據(jù)庫的系統(tǒng)結(jié)構(gòu)掌握數(shù)據(jù)文件的管理掌握控制文件的作用及其管理掌握重做日志文件的工作方式及其管理掌握數(shù)據(jù)庫歸檔模式設(shè)置及歸檔管理

6.1Oracle數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)Oracle數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)由數(shù)據(jù)庫實(shí)例和物理存儲(chǔ)結(jié)構(gòu)組成。(內(nèi)存結(jié)構(gòu))在Oracle數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)包括物理存儲(chǔ)結(jié)構(gòu)和邏輯存儲(chǔ)結(jié)構(gòu)。物理存儲(chǔ)結(jié)構(gòu):主要用于描述Oracle數(shù)據(jù)庫外部數(shù)據(jù)的存儲(chǔ),即在操作系統(tǒng)中如何組織和管理數(shù)據(jù),與具體的操作系統(tǒng)有關(guān);邏輯存儲(chǔ)結(jié)構(gòu):主要描述Oracle數(shù)據(jù)庫內(nèi)部數(shù)據(jù)的組織和管理方式,與操作系統(tǒng)沒有關(guān)系。物理存儲(chǔ)結(jié)構(gòu)是邏輯存儲(chǔ)結(jié)構(gòu)在物理上的、可見的、可操作的、具體的體現(xiàn)形式。1n邏輯角度物理角度Oracle數(shù)據(jù)庫物理存儲(chǔ)結(jié)構(gòu)指存儲(chǔ)在磁盤上的物理文件:功能:數(shù)據(jù)文件:用于存儲(chǔ)數(shù)據(jù)庫中的所有數(shù)據(jù);控制文件:用于記錄和描述數(shù)據(jù)庫的物理存儲(chǔ)結(jié)構(gòu)信息;重做日志文件:用于記錄外部程序(用戶)對(duì)數(shù)據(jù)庫的改變操作;歸檔文件:用于保存已經(jīng)寫滿的重做日志文件;初始化參數(shù)文件:用于設(shè)置數(shù)據(jù)庫啟動(dòng)時(shí)的參數(shù)初始值;跟蹤文件:用于記錄用戶進(jìn)程、數(shù)據(jù)庫后臺(tái)進(jìn)程等的運(yùn)行情況;口令文件:用于保存具有SYSDBA,SYSOPER權(quán)限的用戶名和SYS用戶口令;警告文件:用于記錄數(shù)據(jù)庫的重要活動(dòng)以及發(fā)生的錯(cuò)誤;備份文件:用于存放數(shù)據(jù)庫備份所產(chǎn)生的文件。6.2數(shù)據(jù)文件及其管理數(shù)據(jù)文件概述數(shù)據(jù)文件的管理6.2.1數(shù)據(jù)文件概述數(shù)據(jù)文件的內(nèi)容

用于保存數(shù)據(jù)庫中所有數(shù)據(jù)的文件,擴(kuò)展名為DBF。臨時(shí)數(shù)據(jù)文件是一種特殊的數(shù)據(jù)文件,其存儲(chǔ)內(nèi)容是臨時(shí)性的,在一定條件下自動(dòng)釋放。Oralce數(shù)據(jù)庫中的每個(gè)數(shù)據(jù)文件都具有兩個(gè)文件號(hào),用于唯一地確定一個(gè)數(shù)據(jù)文件。絕對(duì)文件號(hào):用于在整個(gè)數(shù)據(jù)庫范圍內(nèi)唯一標(biāo)識(shí)一個(gè)數(shù)據(jù)文件;相對(duì)文件號(hào):用于在表空間范圍內(nèi)唯一標(biāo)識(shí)一個(gè)數(shù)據(jù)文件。數(shù)據(jù)文件與表空間的關(guān)系

數(shù)據(jù)文件依附于表空間存在表空間數(shù)據(jù)文件1n數(shù)據(jù)據(jù)文文件件的的管理理策策略略數(shù)據(jù)據(jù)文文件件的的最最大大數(shù)數(shù)量量::使使用用初初始始化化參參數(shù)數(shù)DB_FILES限制制數(shù)據(jù)據(jù)文文件件的的大大小小數(shù)據(jù)據(jù)文文件件的的存存儲(chǔ)儲(chǔ)位位置置::把不同同存儲(chǔ)儲(chǔ)內(nèi)容容的數(shù)數(shù)據(jù)據(jù)文文件件放放置置在在不同同的的硬硬盤盤上,,可可以以并并行行訪訪問問數(shù)數(shù)據(jù)據(jù),,提提高高系系統(tǒng)統(tǒng)讀讀寫寫的的效效率率。。初始始化化參參數(shù)數(shù)文文件件、控制制文文件件、重做做日日志志文文件件最好好不要要與數(shù)據(jù)據(jù)文文件件存放放在在同一一個(gè)個(gè)磁磁盤盤上上,以以免免數(shù)數(shù)據(jù)據(jù)庫庫發(fā)發(fā)生生介介質(zhì)質(zhì)故故障障時(shí)時(shí),,無無法法恢恢復(fù)復(fù)數(shù)數(shù)據(jù)據(jù)庫庫。。受OS的限限制6.2.2數(shù)數(shù)據(jù)據(jù)文文件件的的管管理理創(chuàng)建建數(shù)數(shù)據(jù)據(jù)文文件件修改改數(shù)數(shù)據(jù)據(jù)文文件件的的大大小小改變變數(shù)數(shù)據(jù)據(jù)文文件件的的可可用用性性改變變數(shù)數(shù)據(jù)據(jù)文文件件的的名名稱稱或或位位置置刪除除數(shù)數(shù)據(jù)據(jù)文文件件查詢?cè)償?shù)數(shù)據(jù)據(jù)文文件件的的信信息息利用用OEM管理理數(shù)數(shù)據(jù)據(jù)文文件件(1)創(chuàng)創(chuàng)建建數(shù)數(shù)據(jù)據(jù)文文件件數(shù)據(jù)據(jù)文文件件依附附于于表空空間間而而存存在在,,創(chuàng)創(chuàng)建建數(shù)數(shù)據(jù)據(jù)文文件件就就是是向向表表空空間間添添加加文文件件。。在創(chuàng)創(chuàng)建建數(shù)數(shù)據(jù)據(jù)文文件件時(shí)時(shí),,應(yīng)應(yīng)該該根根據(jù)據(jù)文文件件數(shù)數(shù)據(jù)據(jù)量量的的大大小小確確定定文件件的的大大小小以及及文文件件的的增長(zhǎng)長(zhǎng)方方式式。命令令語語法法::CREATETABLESPACE/DATABASECREATETEMPORARYTABLESPACEALTERDATABASE……CREATEDATAFILE(數(shù)據(jù)據(jù)庫庫恢恢復(fù)復(fù)時(shí)時(shí))ALTERTABLESPACE……ADDDATAFILEALTERTABLESPACE……ADDTEMPFILE數(shù)據(jù)據(jù)庫庫運(yùn)運(yùn)行行與與維護(hù)護(hù)時(shí)時(shí)采采用用注意意::進(jìn)進(jìn)行行這這些些操操作作必必須須具具備備管理理員員權(quán)權(quán)限限!例1:向向ORCL數(shù)據(jù)據(jù)庫庫的的USERS表空空間間中中添添加加一一個(gè)個(gè)大大小小為為10MB的數(shù)數(shù)據(jù)據(jù)文文件件。。例2:向向ORCL數(shù)據(jù)據(jù)庫庫的的TEMP表空空間間中中添添加加一一個(gè)個(gè)大大小小為為5MB的臨臨時(shí)時(shí)數(shù)數(shù)據(jù)據(jù)文文件件。。SQL>ALTERTABLESPACEUSERSADDDATAFILE2'D:\oracle\product\10.2.0\oradata\ORCL\3USERS02.DBF'SIZE10M;SQL>ALTERTABLESPACETEMPADDTEMPFILE2'D:\oracle\product\10.2.0\oradata\ORCL\3TEMP02.DBF'SIZE5M;注意意::若指指定定的的數(shù)數(shù)據(jù)據(jù)文文件件已已經(jīng)經(jīng)存存在在(指DB系統(tǒng)統(tǒng)中中已已經(jīng)經(jīng)存存在在同同名名的的文文件件,,但但是是無效效的的DB文件件或或非非DB文件件),可可以以使用用REUSE子句句進(jìn)進(jìn)行行覆覆蓋蓋。如如果果,,該該同名名文文件件是是DB的有效效文件件,,則則不能能覆覆蓋蓋?。?)修修改改數(shù)數(shù)據(jù)據(jù)文文件件大大小小兩種種方方法法設(shè)置置數(shù)數(shù)據(jù)據(jù)文文件件為為自動(dòng)動(dòng)增增長(zhǎng)長(zhǎng)方式式優(yōu)點(diǎn)點(diǎn)::⑴DBA無須須過過多多干干涉涉數(shù)數(shù)據(jù)據(jù)庫庫存存儲(chǔ)儲(chǔ)空空間間的的分分配配問問題題⑵可可以以保保證證應(yīng)應(yīng)用用程程序序不不會(huì)會(huì)因因?yàn)闉榉址峙渑淇湛臻g間不不足足而而導(dǎo)導(dǎo)致致錯(cuò)錯(cuò)誤誤手工工改改變變數(shù)據(jù)據(jù)文文件件的的大大小小設(shè)置置數(shù)數(shù)據(jù)據(jù)文文件件為為自自動(dòng)動(dòng)增增長(zhǎng)長(zhǎng)方方式式創(chuàng)建建時(shí)時(shí)設(shè)置置::CREATEDATABASE/TABLESPACE……ALTERTABLESPACE……ADDDATAFILE……創(chuàng)建建后后修改改:ALTERDATABASEDATAFILE…AUTOEXTENDONNEXT……MAXSIZE……|UNLIMITEDAUTOEXTENDON指定定數(shù)數(shù)據(jù)據(jù)文文件件每每次次自動(dòng)動(dòng)增增長(zhǎng)長(zhǎng)的的大大小小指定定數(shù)數(shù)據(jù)據(jù)文文件件的極限限大小小指定定數(shù)數(shù)據(jù)據(jù)文文件件大小小沒沒有有限限制制手工工改改變變數(shù)數(shù)據(jù)據(jù)文文件件的的大大小小ALTERDATABASEDATAFILE…RESIZE…例3:為為ORCL數(shù)據(jù)據(jù)庫庫的的USERS表空空間間添加加一個(gè)個(gè)自自動(dòng)動(dòng)增增長(zhǎng)長(zhǎng)的的數(shù)數(shù)據(jù)據(jù)文文件件USERS03.DBF。例4:修改改ORCL數(shù)據(jù)據(jù)庫庫USERS表空空間間的的數(shù)數(shù)據(jù)據(jù)文文件件USERS02.DBF為自自動(dòng)動(dòng)增增長(zhǎng)長(zhǎng)方方式式。。SQL>ALTERTABLESPACEUSERSADDDATAFILE2'D:\oracle\product\10.2.0\oradata\ORCL\USERS03.DBF'3SIZE10MAUTOEXTENDONNEXT512KMAXSIZE50M;SQL>ALTERDATABASEDATAFILE2'D:\oracle\product\10.2.0\oradata\ORCL\USERS02.DBF'3AUTOEXTENDONNEXT512KMAXSIZEUNLIMITED;例5:取取消消ORCL數(shù)據(jù)據(jù)庫庫USERS表空空間間的的數(shù)數(shù)據(jù)據(jù)文文件件USERS02.DBF的自自動(dòng)動(dòng)增增長(zhǎng)長(zhǎng)方方式式。。例6:將將ORCL數(shù)據(jù)據(jù)庫庫USERS表空空間間的的數(shù)數(shù)據(jù)據(jù)文文件件USERS02.DBF大小小設(shè)設(shè)置置為為8MB。SQL>ALTERDATABASEDATAFILE2'D:\oracle\product\10.2.0\oradata\ORCL\USERS02.DBF'3AUTOEXTENDOFF;SQL>ALTERDATABASEDATAFILE2'D:\oracle\product\10.2.0\oradata\ORCL\USERS02.DBF'3RESIZE8M;(3)改改變變數(shù)數(shù)據(jù)據(jù)文文件件的的可可用用性性概念念可以以通通過過將將數(shù)數(shù)據(jù)據(jù)文文件件聯(lián)機(jī)機(jī)或脫機(jī)機(jī)來改改變變數(shù)數(shù)據(jù)據(jù)文文件件的的可可用用性性。。下面面幾幾種種情情況況::進(jìn)行行數(shù)數(shù)據(jù)據(jù)文文件件的的脫機(jī)機(jī)備備份份時(shí);;重命命名名數(shù)數(shù)據(jù)據(jù)文文件件或改變變數(shù)數(shù)據(jù)據(jù)文文件件的的位位置置時(shí);;寫入入某個(gè)個(gè)數(shù)數(shù)據(jù)據(jù)文文件件時(shí)時(shí)發(fā)生生錯(cuò)錯(cuò)誤誤,會(huì)會(huì)自動(dòng)動(dòng)將該該數(shù)數(shù)據(jù)據(jù)文文件件設(shè)置置為為脫脫機(jī)機(jī)狀狀態(tài)態(tài),并且記記錄在警警告文件件中。排排除故障障后,需需要以手動(dòng)方式式重新將該數(shù)據(jù)據(jù)文件恢恢復(fù)為聯(lián)機(jī)狀態(tài)。數(shù)據(jù)文件丟失失或損壞,需要在啟動(dòng)動(dòng)數(shù)據(jù)庫之前前將數(shù)據(jù)文件件脫機(jī)。歸檔模式下數(shù)數(shù)據(jù)文件可用用性的改變數(shù)據(jù)文件可用用性的改變ALTERDATABASEDATAFILE…ONLINE|OFFLINE臨時(shí)數(shù)據(jù)文件件可用性的概概念改變ALTERDATABASETEMPFILE…ONLINE|OFFLINE說明:數(shù)據(jù)庫的運(yùn)行行可以根據(jù)是否進(jìn)行重做做日志文件歸歸檔,而分為歸檔模式和非歸檔模式。詳見6.5例7:在數(shù)據(jù)庫處處于歸檔模式式下,將ORCL數(shù)據(jù)庫USERS表空間的數(shù)據(jù)據(jù)文件USERS02.DBF脫機(jī)。例8:將ORCL數(shù)據(jù)庫USERS表空間的數(shù)據(jù)據(jù)文件USERS02.DBF聯(lián)機(jī)。SQL>ALTERDATABASEDATAFILE2'D:\oracle\product\10.2.0\oradata\ORCL\USERS02.DBF'3OFFLINE;SQL>RECOVERDATAFILE2'D:\oracle\product\10.2.0\oradata\ORCL\USERS02.DBF';SQL>ALTERDATABASEDATAFILE2'D:\oracle\product\10.2.0\oradata\ORCL\USERS02.DBF'3ONLINE;注意:在歸檔模式下下,將數(shù)據(jù)文文件聯(lián)機(jī)前,,需要進(jìn)行恢復(fù)操作。使用RECOVERDATAFILE。非歸檔模式下下數(shù)據(jù)文件可可用性的改變變?cè)诜菤w檔模式式下,通常不不能將數(shù)據(jù)文文件脫機(jī)。如果由于數(shù)據(jù)文件的損損壞,需要將數(shù)據(jù)據(jù)文件脫機(jī),,然后重新啟啟動(dòng)數(shù)據(jù)庫,,需要使用::ALTERDATABASEDATAFILE…OFFLINEFORDROPSQL>ALTERDATABASEDATAFILE2'D:\oracle\product\10.2.0\oradata\ORCL\USERS02.DBF'3OFFLINEFORDROP;注意:此時(shí)要聯(lián)機(jī)機(jī)只有采用介質(zhì)恢復(fù)的形形式才能夠?qū)?shù)據(jù)據(jù)文件設(shè)置為為聯(lián)機(jī)。改變表空間中所有有數(shù)據(jù)文件的可可用性在歸檔模式下下,將表空間所有文件脫機(jī)或聯(lián)機(jī)ALTERTABLESPACE...DATAFILEONLINE|OFFLINE在歸檔模式下下,將臨時(shí)表空間所有臨時(shí)文件件聯(lián)機(jī)或脫機(jī)ALTERTABLESPACE...TEMPFILEONLINE|OFFLINE例9:在歸檔模式式下,將USERS表空間中所有有的數(shù)據(jù)文件件脫機(jī),但USERS表空間不脫機(jī)機(jī)。然后再將USERS表空間中的所所有數(shù)據(jù)文件件聯(lián)機(jī)。SQL>ALTERTABLESPACEUSERSDATAFILEOFFLINE;SQL>RECOVERTABLESPACEUSERS;SQL>ALTERTABLESPACEUSERSDATAFILEONLINE;(4)改變數(shù)據(jù)文文件的名稱或或位置通過重命名或移動(dòng)數(shù)據(jù)文件,可可以在不改變邏輯結(jié)結(jié)構(gòu)的情況下,對(duì)物理結(jié)構(gòu)進(jìn)進(jìn)行調(diào)整。兩種情況::改變同一個(gè)表空間間中的數(shù)據(jù)文件件的名稱或位位置ALTERTABLESPACLE…RENAMEDATAFILE…TO改變多個(gè)表空間中的數(shù)據(jù)文件件的名稱或位位置ALTERDATABASERENAMEFILE…TO注意:改變數(shù)據(jù)文件件的名稱或位位置時(shí),Oracle只是改變記錄在控制文件和數(shù)據(jù)字典中的數(shù)據(jù)文件信息息,并沒有改變操作系統(tǒng)中數(shù)據(jù)文件的名名稱和位置,因此需要DBA手動(dòng)更改操作作系統(tǒng)中數(shù)據(jù)文件的名名稱和位置。。改變同一個(gè)表表空間中的數(shù)數(shù)據(jù)文件的名名稱或位置例10:更改ORCL數(shù)據(jù)庫庫USERS表空間間的USERS02.DBF和USERS03.DBF文件名名為USERS002.DBF和USERS003.DBF。將包含含數(shù)據(jù)據(jù)文件件的表空間間置為為脫機(jī)機(jī)狀態(tài)態(tài)。在操作作系統(tǒng)統(tǒng)中重重命名名數(shù)據(jù)據(jù)文件件或移移動(dòng)數(shù)數(shù)據(jù)文文件到到新的的位置置。使用ALTERTABLESPACE……RENAMEDATAFILE……TO語句進(jìn)進(jìn)行操操作。。將表空空間聯(lián)聯(lián)機(jī)。。SQL>ALTERTABLESPACEUSERSOFFLINE;SQL>ALTERTABLESPACEUSERSRENAMEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS03.DBF'TO'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS002.DBF','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS003.DBF';SQL>ALTERTABLESPACEUSERSONLINE;說明:表空空間的的可用用性會(huì)會(huì)影響到到其下下所有有數(shù)據(jù)據(jù)文件件的可用用性;;反過過來則則不不會(huì)?。「淖兌喽鄠€(gè)表表空間間中的的數(shù)據(jù)據(jù)文件件的名名稱或或位置置例11:更改改ORCL數(shù)據(jù)庫庫USERS表空間間中的的USERS002.DBF文件位位置和和修改改TOOLS表空間間中的的TOOLS01.DBF文件名名。關(guān)閉數(shù)數(shù)據(jù)庫庫在操作作系統(tǒng)統(tǒng)中,,將USERS表空間間中的的USERS002.DBF文件復(fù)復(fù)制到到一個(gè)個(gè)新的的位置置;修修改TOOLS表空間間的數(shù)數(shù)據(jù)文文件TOOLS01.DBF的名為為TOOLS001.DBF。啟動(dòng)數(shù)數(shù)據(jù)庫庫到MOUNT狀態(tài)。。SQL>SHUTDOWNSQL>STARTUPMOUNT執(zhí)行ALTERDATABASERENAMEFILE……TO語句更更新數(shù)數(shù)據(jù)文文件名名稱或或位置置。打開數(shù)數(shù)據(jù)庫庫。SQL>ALTERDATABASERENAMEFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS002.DBF','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TOOLS01.DBF'TO'D:\ORACLE\PRODUCT\10.2.0\ORADATA\USERS002.DBF','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TOOLS001.DBF';SQL>ALTERDATABASEOPEN;(5)刪除除數(shù)據(jù)據(jù)文件件刪除某某個(gè)表表空間間中的的某個(gè)個(gè)空數(shù)數(shù)據(jù)文文件ALTERTABLESPACE……DROPDATAFILE刪除某某個(gè)臨臨時(shí)表表空間間中的的某個(gè)個(gè)空的的臨時(shí)時(shí)數(shù)據(jù)據(jù)文件件ALTERTABLESPACE……DROPTEMPFILEALTERDATABASETEMPFILE…DROP所謂的的空數(shù)據(jù)據(jù)文件件或空臨時(shí)時(shí)數(shù)據(jù)據(jù)文件件是指為為該文文件分分配的的所有有區(qū)都都被回回收。。刪除數(shù)數(shù)據(jù)文文件或或臨時(shí)時(shí)數(shù)據(jù)據(jù)文件件的同同時(shí),,將刪刪除::控制文文件和數(shù)據(jù)字字典中與該該數(shù)據(jù)據(jù)文件件或臨臨時(shí)數(shù)數(shù)據(jù)文文件的的相關(guān)關(guān)信息息操作系系統(tǒng)中對(duì)應(yīng)應(yīng)的物物理文文件例12:刪除除USERS表空間間中的的數(shù)據(jù)據(jù)文件件USERS03.DBF和刪除除TEMP臨時(shí)表表空間間中的的臨時(shí)時(shí)數(shù)據(jù)據(jù)文件件TEMP03.DBF?;蛘撸海篠QL>ALTERTABLESPACEUSERSDROPDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS03.DBF';SQL>ALTERTABLESPACETEMPDROPTEMPFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP03.DBF';SQL>ALTERDATABASETEMPFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP03.DBF'DROPINCLUDINGDATAFILES;刪除數(shù)數(shù)據(jù)文文件或或臨時(shí)時(shí)數(shù)據(jù)據(jù)文件件時(shí)受受到以以下約束:數(shù)據(jù)庫庫運(yùn)行行在打開狀狀態(tài)數(shù)據(jù)文文件或或臨時(shí)時(shí)數(shù)據(jù)據(jù)文件件必須是是空的不能刪除表表空間間的第一個(gè)個(gè)或唯一的的一個(gè)數(shù)數(shù)據(jù)文文件或或臨時(shí)時(shí)數(shù)據(jù)據(jù)文件件不能刪除只讀表表空間間中的數(shù)據(jù)據(jù)文件件不能刪除SYSTEM表空間間的數(shù)據(jù)據(jù)文件件不能刪除采采用本地管管理的的處于脫機(jī)狀狀態(tài)的的數(shù)據(jù)文文件。。(6)查詢?cè)償?shù)據(jù)據(jù)文件件信息息DBA_DATA_FILES:包含含數(shù)據(jù)據(jù)庫中中所有數(shù)數(shù)據(jù)文文件的信息息,包包括數(shù)數(shù)據(jù)文文件所所屬的的表空空間、、數(shù)據(jù)據(jù)文件件編號(hào)號(hào)等。。DBA_TEMP_FILES:包含含數(shù)據(jù)據(jù)庫中中所有有臨時(shí)時(shí)數(shù)據(jù)據(jù)文件件的信信息。。DBA_EXTENTS:包含含所有有表空空間中中已分配配的區(qū)區(qū)的描述述信息息。USER_EXTENTS:包含含當(dāng)前前用戶所所擁有有的對(duì)象象在所所有表表空間間中已已分配配的區(qū)區(qū)的描描述信信息。。DBA_FREE_SPACE:包含含表空空間中中空閑區(qū)區(qū)的描述述信息息。USER_FREE_SPACE:包含含當(dāng)前用用戶可可訪問問的表表空間間中空空閑區(qū)區(qū)的描述述信息息。V$DATAFILE:包含含從控制制文件件中獲取的的數(shù)據(jù)據(jù)文件件信息息。V$DATAFILE_HEADER:包含含從數(shù)據(jù)據(jù)文件件頭部部獲取的的信息息。V$TEMPFILE:包含含所有有臨時(shí)文文件的基本本信息息。查詢數(shù)數(shù)據(jù)文文件動(dòng)動(dòng)態(tài)信信息查詢數(shù)數(shù)據(jù)文文件的的詳細(xì)細(xì)信息息查詢數(shù)數(shù)據(jù)文文件的的增長(zhǎng)長(zhǎng)方式式查詢臨臨時(shí)數(shù)數(shù)據(jù)文文件信信息SQL>SELECTNAME,FILE#,STATUS,CHECKPOINT_CHANGE#FROMV$DATAFILE;SQL>SELECTTABLESPACE_NAME,AUTOEXTENSIBLE,FILE_NAMEFROMDBA_DATA_FILES;SQL>SELECTTABLESPACE_NAME,BYTES,AUTOEXTENSIBLE,FILE_NAMEFROMDBA_DATA_FILES;SQL>SELECTTABLESPACE_NAME,FILE_NAME,AUTOEXTENSIBLEFROMDBA_TEMP_FILES;(7)利用OEM管理數(shù)據(jù)文文件創(chuàng)建數(shù)據(jù)文文件編輯數(shù)據(jù)文文件查看數(shù)據(jù)文文件信息刪除數(shù)據(jù)文文件6.3控控制文件控制文件概概述控制文件管管理6.3.1控制文文件概述控制文件的的性質(zhì):控制文件描描述了整個(gè)個(gè)數(shù)據(jù)庫的的物理結(jié)構(gòu)構(gòu)控制文件是是一個(gè)很小小的二進(jìn)制文件在加載數(shù)據(jù)據(jù)庫時(shí),實(shí)實(shí)例必須首先通過初初始化參數(shù)數(shù)文件找到到數(shù)據(jù)庫的的控制文件件在數(shù)據(jù)庫運(yùn)運(yùn)行期間,,控制文件件始終在不不斷更新,,以便記錄數(shù)據(jù)文文件和重做做日志文件件的變化每個(gè)數(shù)據(jù)庫庫至少擁有一一個(gè)控制文件,,一個(gè)數(shù)據(jù)據(jù)庫也可以以同時(shí)擁有有多個(gè)控制制文件分配在不同同的物理硬盤中中,以免數(shù)數(shù)據(jù)庫或硬硬盤損壞時(shí)時(shí),能夠利利用備份的的控制文件件啟動(dòng)數(shù)據(jù)據(jù)庫實(shí)例,,可以提高高數(shù)據(jù)庫的的可靠性控制文件的的內(nèi)容:數(shù)據(jù)庫名稱稱和標(biāo)識(shí);;數(shù)據(jù)庫創(chuàng)建建的時(shí)間;;表空間名稱稱;數(shù)據(jù)文件和和重做日志志文件的名名稱和位置置;當(dāng)前重做日日志文件序序列號(hào);數(shù)據(jù)庫檢查查點(diǎn)的信息息;回退段的開開始和結(jié)束束;重做日志的的歸檔信息息;備份信息;;數(shù)據(jù)庫恢復(fù)復(fù)所需要的的同步信息息??刂莆募兄械淖畲蠡瘏?shù)數(shù)包括:MAXLOGFILES:最大重做做日志文件件組數(shù)量;;MAXLOGMEMBERS:重做日志志文件組中中最大成員員數(shù)量;MAXLOGHISTORY:最大歷史史重做日志志文件數(shù)量量;MAXDATAFILES:最大數(shù)據(jù)據(jù)文件數(shù)量量;MAXINSTANCES:可同時(shí)訪訪問的數(shù)據(jù)據(jù)庫最大實(shí)實(shí)例個(gè)數(shù)。。注意:在Oracle10.2.0及其之后的的版本中,當(dāng)當(dāng)某種文件件的數(shù)量超超過了該最大值時(shí),,控制文件可可以自動(dòng)擴(kuò)擴(kuò)展;之前的版版本則不能能??刂莆募芾聿呗設(shè)racle建議最少有兩個(gè)個(gè)控制文件,,通過多路路鏡像技術(shù)術(shù),將多個(gè)個(gè)控制文件件分散到不不同的磁盤盤中。在數(shù)據(jù)庫運(yùn)行過程中,始終讀取CONTROL_FILES參數(shù)指定的的第一個(gè)控制文件,,并同時(shí)寫CONTROL_FILES參數(shù)指定的的所有控制文件。。如果其中中一個(gè)控制制文件不可可用,則必必須關(guān)閉數(shù)數(shù)據(jù)庫并進(jìn)進(jìn)行恢復(fù)。。每次對(duì)數(shù)據(jù)據(jù)庫結(jié)構(gòu)進(jìn)進(jìn)行修改后后(添加、修改改、刪除數(shù)數(shù)據(jù)文件、、重做日志志文件),應(yīng)該及時(shí)時(shí)備份控制制文件。6.3.2控制文文件的管理理創(chuàng)建控制文文件實(shí)現(xiàn)多路鏡鏡像控制文文件備份控制文文件刪除控制文文件查看控制文文件的信息息利用OEM管理控制制文件(1)創(chuàng)建控制制文件創(chuàng)建數(shù)據(jù)庫庫時(shí),系統(tǒng)統(tǒng)會(huì)根據(jù)初初始化參數(shù)數(shù)文件中CONTROL_FILES的設(shè)置創(chuàng)建建控制文件件。手動(dòng)創(chuàng)建控制文件的的情形:控制文件全全部丟失或或損壞;需要修改數(shù)數(shù)據(jù)庫名稱稱;在Oracle10.2.0之前的版本本中,需要要修改某個(gè)個(gè)最大化參參數(shù)。CREATECONTROLFILE語句創(chuàng)建語句的的語法:CREATECONTROLFILE[REUSE][SET]DATABASEdatabase--[重命名]指定DB名稱[LOGFILElogfile_clause]--指定定聯(lián)聯(lián)機(jī)機(jī)重重做做日日志志文文件件RESETLOGS|NORESETLOGS/*重命命名名DB或丟失失部部分分聯(lián)聯(lián)機(jī)機(jī)重重做做日日志志文文件件,則則指指定定RESETLOGS;對(duì)對(duì)DB進(jìn)行行完完全全恢恢復(fù)復(fù),則則指指定定NORESETLOGS*/[DATAFILEfile_specification][MAXLOGFILES][MAXLOGMEMBERS][MAXLOGHISTORY][MAXDATAFILES][MAXINSTANCES][ARCHIVELOG|NOARCHIVELOG]--指定定DB運(yùn)行行在在歸歸檔檔/非歸歸檔檔模模式式[FORCELOGGING]--指定定DB啟動(dòng)動(dòng)后后,,所所有有變變更更操操作作都都記記錄錄到到日日志志文文件件[CHARACTERSETcharacter_set]--指定定DB的字字符符集集創(chuàng)建建控控制制文文件件的的基基本本步步驟驟制作作數(shù)數(shù)據(jù)據(jù)庫庫中中所所有有的的數(shù)數(shù)據(jù)據(jù)文文件件和和重重做做日日志志文文件件列列表表如果果數(shù)數(shù)據(jù)據(jù)庫庫仍仍然然處處于于運(yùn)運(yùn)行行狀狀態(tài)態(tài),,則則關(guān)關(guān)閉閉數(shù)數(shù)據(jù)據(jù)庫庫在操操作作系系統(tǒng)統(tǒng)級(jí)級(jí)別別備備份份所所有有的的數(shù)數(shù)據(jù)據(jù)文文件件和和聯(lián)聯(lián)機(jī)機(jī)重重做做日日志志文文件件啟動(dòng)動(dòng)實(shí)實(shí)例例到到NOMOUNT狀態(tài)態(tài)SQL>SELECTMEMBERFROMV$LOGFILE;SQL>SELECTNAMEFROMV$DATAFILE;SQL>SELECTVALUE2FROMV$PARAMETER3WHERENAME='CONTROL_FILES';SQL>SHUTDOWNSQL>STARTUPNOMOUNT利用前前面得得到的的文件件列表表,執(zhí)執(zhí)行CREATECONTROLFILE創(chuàng)建一一個(gè)新新控制制文件件。在操作作系統(tǒng)統(tǒng)級(jí)別別對(duì)新新建的的控制制文件件進(jìn)行行備份份。如果數(shù)數(shù)據(jù)庫庫重命命名,,則編編輯DB_NAME參數(shù)來來指定定新的的數(shù)據(jù)據(jù)庫名名稱。。如果數(shù)數(shù)據(jù)庫庫需要要恢復(fù)復(fù),則則進(jìn)行行恢復(fù)復(fù)數(shù)據(jù)據(jù)庫操操作::如果創(chuàng)創(chuàng)建控控制文文件時(shí)時(shí)指定定了NORESTLOGS,可以以完全全恢復(fù)復(fù)數(shù)據(jù)據(jù)庫。。如果創(chuàng)創(chuàng)建控控制文文件時(shí)時(shí)指定定了RESETLOGS,則必必須在在恢復(fù)復(fù)時(shí)指指定USINGBACKUPCONTROLFILE。SQL>RECOVERDATABASE;SQL>RECOVERDATABASEUSINGBACKUPCONTROLFILE;創(chuàng)建腳腳本打開數(shù)數(shù)據(jù)庫庫如果數(shù)數(shù)據(jù)庫庫不需要要恢復(fù)復(fù)或已經(jīng)對(duì)數(shù)據(jù)據(jù)庫進(jìn)進(jìn)行了了完全恢恢復(fù),則可可以正正常打打開數(shù)數(shù)據(jù)庫庫。如果在在創(chuàng)建建控制制文件件時(shí)使使用了了RESETLOGS參數(shù),,則必必須指指定以以RESETLOGS方式打打開數(shù)數(shù)據(jù)庫庫。SQL>ALTERDATABASEOPEN;SQL>ALTERDATABASEOPENRESETLOGS;(2)實(shí)現(xiàn)現(xiàn)多路路鏡像像控制制文件件Oracle數(shù)據(jù)庫庫在創(chuàng)創(chuàng)建時(shí)時(shí)創(chuàng)建建多個(gè)個(gè)鏡像像的控控制文文件,,其名名稱和和存放放位置置由參參數(shù)CONTROL_FILES指定。。數(shù)據(jù)庫庫創(chuàng)建建后,,建立立多個(gè)個(gè)鏡像像控制制文件件的步驟:編輯初初始化化參數(shù)數(shù)CONTROL_FILES,命令令:ALTERSYSTEMSETCONTROL_FILES=……SCOPE=SPFILE;關(guān)閉數(shù)數(shù)據(jù)庫庫SHUTDOWNIMMEDIATE拷貝一一個(gè)原原有的的控制制文件件到新新的位位置,,并重重新命命名重新啟啟動(dòng)數(shù)數(shù)據(jù)庫庫STARTUP例13:為ORCL數(shù)據(jù)庫庫添加加一個(gè)個(gè)鏡像像控制制文件件。編輯CONTROL_FILES:關(guān)閉數(shù)數(shù)據(jù)庫庫拷貝D:\ORACLE\ORADATA\CONTROL01.CTL到D:\ORACLE\ORADATA目錄下下,并并重命命名為為CONTROL04.CTL重新啟啟動(dòng)數(shù)數(shù)據(jù)庫庫SQL>ALTERSYSTEMSETCONTROL_FILES='E:\oracle\product\10.2.0\oradata\ORCL\CONTROL01.CTL','E:\oracle\product\10.2.0\oradata\ORCL\CONTROL02.CTL','E:\oracle\product\10.2.0\oradata\ORCL\CONTROL03.CTL','E:\oracle\product\10.2.0\oradata\CONTROL04.CTL'SCOPE=SPFILE;SQL>SHUTDOWNIMMEDIATESQL>STARTUP(3)備份份控制制文件件根據(jù)備備份生生成的的控制制文件件的類類型不不同,,有兩兩種方方法::備份為為二進(jìn)進(jìn)制文文件ALTERDATABASEBACKUPCONTROLFILETO‘‘……\*.BKP’備份為為文本本文件件ALTERDATABASEBACKUPCONTROLFILETOTRACE注意:此時(shí)時(shí),將將控制制文件件備份份到<ORACLE_BASE>\admin\<SID>\udump目錄下下的跟跟蹤文文件中中。(4)刪除除控制制文件件步驟::編輯CONTROL_FILES初始化化參數(shù)數(shù),使使其不不包含含要?jiǎng)h刪除的的控制制文件件;關(guān)閉數(shù)數(shù)據(jù)庫庫;在操作作系統(tǒng)統(tǒng)中刪刪除控控制文文件;;重新啟啟動(dòng)數(shù)數(shù)據(jù)庫庫。(5)查詢?cè)兛刂浦莆募男判畔⑴c控制制文件件相關(guān)關(guān)的數(shù)數(shù)據(jù)字字典視視圖::V$DATABASE:從控控制文文件中中獲取取的數(shù)數(shù)據(jù)庫庫信息息;V$CONTROLFILE:包含含所有有控制制文件件名稱稱與狀狀態(tài)信信息;;V$CONTROLFILE_RECORD_SECTION:包含含控制制文件件中各各記錄錄文檔檔段信信息;;V$PARAMETER:可以以獲取取初始始化參參數(shù)CONTROL_FILES的值。。(6)利用用OEM管理控控制文文件查看控控制文文件信信息備份控控制文文件6.4重重做日日志文文件重做日日志文文件概概述重做日日志文文件的的管理理6.4.1重重做日日志文文件概概述重做日日志文文件的的概念念重做日日志文文件,,保存存了用用戶對(duì)對(duì)數(shù)據(jù)據(jù)庫所所作的更新新操作作(DDL、DML),包含含的主主要信信息是是記錄錄事務(wù)的的開始始和結(jié)束、事務(wù)務(wù)中每每項(xiàng)操作的的對(duì)象象和類型、更新操操作前前后的的數(shù)據(jù)據(jù)值等。重做日日志文文件是是由重做記記錄構(gòu)成的的,每每個(gè)重重做記記錄由由一組組修改改相量量組成成。修改向向量記錄了了對(duì)數(shù)數(shù)據(jù)庫庫中某某個(gè)數(shù)數(shù)據(jù)塊塊所做做的修修改。。用戶對(duì)數(shù)據(jù)庫庫所做的修改記錄過程程:利用重做日志志文件恢復(fù)數(shù)數(shù)據(jù)庫是通過過事務(wù)的重做(REDO)或回退(UNDO)實(shí)現(xiàn)的。重做:指由于某些些原因?qū)е率率聞?wù)對(duì)數(shù)據(jù)庫的修修改在寫入數(shù)數(shù)據(jù)文件之前前丟失了,此時(shí)就可以以利用重做日日志文件重做該事務(wù)對(duì)數(shù)據(jù)據(jù)庫的修改操作?;赝耍褐溉绻脩魬粼谑聞?wù)提交之前前要撤銷事務(wù)務(wù),Oracle將通過重做記記錄中的回退退信息撤銷事務(wù)對(duì)數(shù)據(jù)庫庫所做的修改。重做日志文件件的工作過程程每個(gè)數(shù)據(jù)庫至少需要兩個(gè)重做日志文件件,采用循環(huán)寫的方式式進(jìn)行工作。當(dāng)當(dāng)一個(gè)重做日日志文件寫滿滿后,進(jìn)程LGWR就會(huì)移到下一一個(gè)日志文件件,稱為日志切換,同時(shí)信息會(huì)會(huì)寫到控制文文件中。重做日志文件件工作流程為了保證LGWR進(jìn)程的正常進(jìn)進(jìn)行,通常采采用重做日志文件件組(GROUP),每個(gè)組中包包含若干完全相同同的重做日志文件件成員(MEMBER),這些成員文文件相互鏡像像。6.4.2重做日志文件件的管理添加重做日志志文件組添加重做日志志文件組成員員文件改變重做日志志文件組成員員文件的名稱稱和位置刪除重做日志志文件組成員員刪除重做日志志文件組重做日志文件件切換清空重做日志志文件組查看重做日志志文件信息利用OEM管理重做日志志文件(1)添加重做日日志文件組語法CREATEDATABASE……LOGFILE……ALTERDATABASEADDLOGFILE……示例REDO2b.LOGREDO1b.LOGGroup1Group2Group3REDO3b.LOGREDO2a.LOGREDO3a.LOGREDO1a.LOGGroup4REDO4b.LOGREDO4a.LOGSQL>ALTERDATABASEADDLOGFILEGROUP4('E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO04a.LOG','E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO04b.LOG')SIZE4M;注意:分配給每個(gè)重重做日志文件件的初始空間至少為4MB。如果沒有使用用GROUP子句指定組號(hào)號(hào),則系統(tǒng)會(huì)會(huì)自動(dòng)產(chǎn)生組號(hào)號(hào),為當(dāng)前重做做日志文件組組的個(gè)數(shù)加1。在Oracle10.2.0之前的版本中中,數(shù)據(jù)庫最最多允許的重重做日志文件件組的數(shù)量由控制文件中中的MAXLOGFILES參數(shù)決定。在Oracle10.2.0之前的版本中中,每個(gè)重做做日志文件組組中最多成員文件數(shù)量量由控制文件中中的MAXLOGMEMBERS參數(shù)決定。(2)添加重做日日志文件組成成員語法ALTERDATABASEADDLOGFILEMEMBER…TOGROUP……示例注意:同一個(gè)重做日志文件件組中的成員文文件存儲(chǔ)位置應(yīng)盡量分散。不需要指定文文件大小。新成員文件件大小由組中已有成成員大小決定定。SQL>ALTERDATABASEADDLOGFILEMEMBER'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01C.LOG'TOGROUP1,'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO04C.LOG'TOGROUP4;(3)改變重做日日志文件組成成員名稱或位位置語法ALTERDATABASERENAMEFILE…TO注意只能更改處于INACTIVE或UNUSED狀態(tài)的重做日日志文件組的的成員文件的的名稱或位置置。例:將重做日日志文件REDO01C.LOG重命名為REDO01B.LOG,將REDO04C.LOG移到D:\ORACLE\PRODUCT\10.2.0\ORADATA目錄下。說明:重做日志文文件組的狀態(tài)態(tài)有4種:CURRENT——當(dāng)前正在被LGWR進(jìn)程寫入;ACTIVE——當(dāng)前實(shí)例恢復(fù)復(fù)的;INACTIVE——當(dāng)前沒有用于于實(shí)例恢復(fù)的的;UNUSERD——新創(chuàng)建當(dāng)前還還沒有被使用用的。步驟:檢查要修改的的成員文件所所在的重做日日志文件組狀狀態(tài)如果要修改的的日志文件組組不是處于INACTIVE或UNUSED狀態(tài),則需要要進(jìn)行手動(dòng)日志志切換。在操作系統(tǒng)中中,重命名重重做日志文件件或?qū)⒅刈鋈杖罩疚募频降叫挛恢?。?zhí)行ALTERDATABASERENAMEFILE…TO語句SQL>SELECTgroup#,statusFROMV$LOG;SQL>ALTERDATABASERENAMEFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01C.LOG','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO4C.LOG'TO'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01B.LOG','D:\ORACLE\PRODUCT\10.2.0\ORADATA\REDO04C.LOG';(4)刪除重做日日志文件組成成員語法ALTERDATABASEDROPLOGFILEMEMBER注意事項(xiàng)只能刪除狀態(tài)為INACTIVE或UNUSED的重做日志志文件組中中的成員;;若要?jiǎng)h除除狀態(tài)為CURRENT的重做日志志文件組中中的成員,,則需執(zhí)行行一次手動(dòng)日志切換換。如果數(shù)據(jù)庫處處于歸檔模式下,則在刪除重重做日志文件件之前要保證該文件所在的的重做日志文文件組已歸檔。每個(gè)重做日志志文件組中至少要有一個(gè)個(gè)可用的成員文件,即即VALID狀態(tài)的成員文文件。如果要要?jiǎng)h除的重做做日志文件是是所在組中最最后一個(gè)可用用的成員文件件,則無法刪刪除。例:Group4REDO4a.LOGREDO4b.LOGREDO4c.LOGSQL>ALTERDATABASEDROPLOGFILEMEMBER'D:\ORACLE\PRODUCT\10.2.0\ORADATA\REDO4c.LOG';注意:執(zhí)行完該命命令后,只是更新了控控制問文件——從數(shù)據(jù)庫的結(jié)結(jié)構(gòu)中刪除了該重做日志志文件。還應(yīng)應(yīng)該在操作成成功后,在OS中手動(dòng)刪除。(5)刪除重做日日志文件組語法ALTERDATABASEDROPLOGFILEGROUP注意事項(xiàng)無論重做日志志文件組中有有多少個(gè)成員員文件,一個(gè)個(gè)數(shù)據(jù)庫至少需要使用兩個(gè)重做日志志文件組。如果數(shù)據(jù)庫處處于歸檔模式下,則在刪除除重做日志文文件組之前,,必須確定該組組已經(jīng)被歸檔檔。只能刪除處于INACTIVE狀態(tài)或UNUSED狀態(tài)的重做日日志文件組,,若要?jiǎng)h除狀狀態(tài)為CURRENT的重做日志文文件組,則需需要執(zhí)行一次次手動(dòng)日志切切換。示例REDO2a.LOGREDO1a.LOGGroup1Group2Group3REDO3a.LOGGroup4REDO4a.LOGREDO4b.LOGSQL>ALTERDATABASEDROPLOGFILEGROUP4;注意:執(zhí)行行完該該命令令后,,只是更更新了了控制制問文文件——從數(shù)據(jù)據(jù)庫的的結(jié)構(gòu)構(gòu)中刪刪除了該重重做日日志文文件組組。還還應(yīng)該該在操操作成成功后后,在OS中手動(dòng)動(dòng)刪除除。(6)重做做日志志文件件組切切換當(dāng)LGWR進(jìn)程結(jié)結(jié)束對(duì)對(duì)當(dāng)前前重做做日志志文件件組的的使用用,開開始寫寫入下下一個(gè)個(gè)重做做日志志文件件組時(shí)時(shí),稱稱為發(fā)發(fā)生了了一次次“日志切切換”。通常,,只有有當(dāng)前前的重重做日日志文文件組組寫滿滿后才才發(fā)生生日志志切換換,但但是可可以通通過::設(shè)置參參數(shù)ARCHIVE_LAG_TARGET控制日日志切切換的的時(shí)間間間隔隔采用手工強(qiáng)強(qiáng)制進(jìn)行日日志切切換如果需需要將將當(dāng)前前處于于CURRENT狀態(tài)的的重做做日志志組立立即切切換到到INACTIVE狀態(tài),,必須須進(jìn)行行手工工日志志切換換。手動(dòng)日日志切切換的的語法法ALTERSYSTEMSWITCHLOGFILE;查看日日至切切換狀狀態(tài)SELECT*FROMV$LOGFILE;當(dāng)發(fā)生生日志志切換換時(shí),,系統(tǒng)統(tǒng)將為為新的的重做做日志志文件件產(chǎn)生生一個(gè)個(gè)日志志序列列號(hào),,在歸歸檔時(shí)時(shí)該日日志序序列號(hào)號(hào)一同同被保保存。。日志序序列號(hào)號(hào)是在線日日志文文件和歸檔日日志文文件的唯一標(biāo)標(biāo)識(shí)。(7)清除除重做做日志志文件件組基本概概念在不關(guān)閉閉數(shù)據(jù)據(jù)庫的情況況下,,手工清清除損壞的的重做做日志志文件件內(nèi)容容,避避免出出現(xiàn)數(shù)數(shù)據(jù)庫庫停止止運(yùn)行行的情情況。。清除重重做日志文文件就是將將重做做日志文文件中中的內(nèi)內(nèi)容全全部清清除,相當(dāng)當(dāng)于刪刪除該該重做做日志志文件件,然然后再重新新建立立它。清除重重做日志文文件組組是將該該文件件組中中的所有成成員文文件全全部清清空。語句ALTERDATABASECLEARLOGFILE[GROUP]…在下列兩種種情況下,,清除重做做日志文件件組的操作作將無法進(jìn)進(jìn)行。數(shù)據(jù)庫只有兩個(gè)重做日志文文件組;需要清除的的重做日志志文件組處處于CURRENT狀態(tài)。如果要清空空的重做日日志文件組組尚未歸檔,則必須使用UNARCHIVED子句,以避免對(duì)對(duì)這個(gè)重做做日志文件件組進(jìn)行歸歸檔。SQL>ALTERDATABASECLEARUNARCHIVEDLOGFILEGROUP4;(8)查看重做日日志文件信息息數(shù)據(jù)字典視圖圖V$LOG:包含從控制制文件中獲取取的所有重做做日志文件組組的基本信息息。V$LOGFILE:包含重做日志志文件組及其其成員文件的的信息。V$LOG_HISTORY:包含關(guān)于重做做日志文件的的歷史信息。。查詢重做日志志文件組的信信息查詢重做日志志文件的信息息SQL>SELECTGROUP#,SEQUENCE#,MEMBERS,STATUS,ARCHIVEDFROMV$LOG;SQL>SELECTGROUP#,TYPE,MEMBERFROMV$LOGFILEORDERBYGROUP#;(9)利利用用OEM管理理重重做做日日志志文文件件創(chuàng)建建重重做做日日志志組組編輯輯重重做做日日志志組組查看看重重做做日日志志組組6.5歸歸檔檔重重做做日日志志文文件件重做做日日志志文文件件歸歸檔檔概概述述數(shù)據(jù)據(jù)庫庫歸歸檔檔模模式式管管理理6.5.1重重做做日日志志文文件件歸歸檔檔概概述述基本本概概念念Oracle數(shù)據(jù)據(jù)庫庫能能夠夠把把已已經(jīng)經(jīng)寫寫滿滿了了的的重重做做日日志志文文件件保保存存到到指指定定的的一一個(gè)個(gè)或或多多個(gè)個(gè)位位置置,,被被保保存存的的重重做做日日志志文文件件的的集集合合稱稱為為歸歸檔檔重重做做日日志志文文件件,,這這個(gè)個(gè)過過程程稱稱為為歸歸檔檔。。根據(jù)據(jù)是是否否進(jìn)進(jìn)行行重重做做日日志志文文件件歸歸檔檔,,數(shù)數(shù)據(jù)據(jù)庫庫運(yùn)運(yùn)行行可可以以分分為為歸歸檔檔模模式式或或非非歸歸檔檔模模式式。。歸檔檔模模式式與與非非歸歸檔檔模模式式比比較較在歸歸檔檔模模式式下下,,數(shù)數(shù)據(jù)據(jù)庫庫中中歷歷史史重重做做日日志志文文件件全全部部被被保保存存,,因因此此在在數(shù)數(shù)據(jù)據(jù)庫庫出出現(xiàn)現(xiàn)故故障障時(shí)時(shí),,即即使使是是介介質(zhì)質(zhì)故故障障,,利利用用數(shù)數(shù)據(jù)據(jù)庫庫備備份份、、歸歸檔檔重重做做日日志志文文件件和和聯(lián)聯(lián)機(jī)機(jī)重重做做日日志志文文件件也也可可以以完完全全恢恢復(fù)復(fù)數(shù)數(shù)據(jù)據(jù)庫庫。。在非歸檔模式式下,由于沒沒有保存過去去的重做日志志文件,數(shù)據(jù)據(jù)庫只能從實(shí)實(shí)例崩潰中恢恢復(fù),而無法法進(jìn)行介質(zhì)恢恢復(fù)。在非歸歸檔模式下不不能執(zhí)行聯(lián)機(jī)機(jī)表空間備份份操作,不能能使用聯(lián)機(jī)歸歸檔模式下建建立的表空間間備份進(jìn)行恢恢復(fù),而只能能使用非歸檔檔模式下建立立的完全備份份來對(duì)數(shù)據(jù)庫庫進(jìn)行恢復(fù)。。在歸檔模式和和非歸檔模式式下進(jìn)行日志志切換的條件件也不同。在在非歸檔模式式下,日志切切換的前提條條件是已寫滿滿的重做日志志文件在被覆覆蓋之前,其其所有重做記記錄所對(duì)應(yīng)的的事務(wù)的修改改操作結(jié)果全全部寫入到數(shù)數(shù)據(jù)文件中。。在歸檔模式式下,日志切切換的前提條條件是已寫滿滿的重做日志志文件在被覆覆蓋之前,不不僅所有重做做記錄所對(duì)應(yīng)應(yīng)的事務(wù)的修修改操作結(jié)果果全部寫入到到數(shù)據(jù)文件中中,還需要等等待歸檔進(jìn)程程完成對(duì)它的的歸檔操作。。6.5.2數(shù)數(shù)據(jù)庫歸檔檔模式管理數(shù)據(jù)庫歸檔/非歸檔模式設(shè)設(shè)置歸檔模式下歸歸檔方式的選選擇歸檔路徑的設(shè)設(shè)置設(shè)置可選或強(qiáng)強(qiáng)制歸檔目標(biāo)標(biāo)查詢歸檔信息息(1)設(shè)置歸檔/非歸檔模式關(guān)閉數(shù)據(jù)庫啟動(dòng)數(shù)據(jù)庫到到MOUNT狀態(tài)使用ALTERDATABASEARCHIVELOG語句將數(shù)據(jù)庫庫設(shè)置為歸檔檔模式?;蚴褂肁LTERDATABASENOARCHIVELOG語句將數(shù)據(jù)庫庫設(shè)置為非歸歸檔模式。打開數(shù)據(jù)庫SQL>SHUTDOWNIMMEDIATESQL>STARTUPMOUN

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論