版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 Oracle服務(wù)器進(jìn)程和存儲(chǔ)結(jié)構(gòu)第五章 管理Oracle進(jìn)程5.1 服務(wù)器進(jìn)程5.1.1 專用服務(wù)器進(jìn)程 1)提交批處理作業(yè)2) 使用Recovery Manager(恢復(fù)管理器)備份,還原或恢復(fù)數(shù)據(jù)庫(kù)5.1.2 共享服務(wù)器進(jìn)程:需要啟動(dòng)Oracle Net Services監(jiān)聽(tīng)進(jìn)程5.2 將Oracle配置為共享服務(wù)器5.2.1 配置共享服務(wù)器的初始化參數(shù)5.2.2 設(shè)置調(diào)度程序的起始數(shù)目(DISPATCHERS):在實(shí)例啟動(dòng)時(shí)開(kāi)始運(yùn)行的調(diào)度程序進(jìn)程的數(shù)目是由初始化參數(shù)dispatchers控制的。1)典型情況: DISPATCHERS=“(PROTOCOL=TCP)”2)強(qiáng)制調(diào)度程序使用
2、IP地址: DISPATCHERS=”(ADDRESS=(PROTOCOL=TCP)(HOST=))(DISPATCHERS=2)”3) 強(qiáng)制調(diào)度程序使用端口:DISPATCHERS=“(ADDRESS=(PROTOCOL=TCP)(PORT=5000)”5.2.3 設(shè)置共享服務(wù)器的起始數(shù)目(SHARED_SERVERS)5.2.4 修改調(diào)度程序和服務(wù)器進(jìn)程1)添加和刪除調(diào)度程序進(jìn)程 (V$QUEUE, V$DISPATCHER, V$DISPATCHER_RATE)Alter system Set dispatchers = (protocol=TCP)(DISPATCHER
3、S=5) (INDEX=0), (protocol=TCP)(DISPATCHERS=2) (INDEX=1),2) 關(guān)閉指定的調(diào)度程序進(jìn)程 SQL select Name ,network from v$dispatcher;NAME NETWORKD000 (ADDRESS=(PROTOCOL=tcp)(HOST=LBX.ITGT.COM)(PORT=1563)SQL Alter system shutdwon immediate D000; 關(guān)閉調(diào)度3)改變共享服務(wù)器進(jìn)程的最少數(shù)目 Alter system set shared_servers = 2;將動(dòng)態(tài)的設(shè)置兩個(gè)共享服務(wù)器進(jìn)程5.
4、2.5 監(jiān)視共享服務(wù)器5.3 關(guān)于Oracle的后臺(tái)進(jìn)程5.4 監(jiān)視Oracle實(shí)例的進(jìn)程5.4.1 進(jìn)程和會(huì)話視圖5.4.2監(jiān)視鎖 V$LOCK 列出Oracle服務(wù)器當(dāng)前擁有的鎖以及對(duì)鎖或鎖存儲(chǔ)器沒(méi)有完成的請(qǐng)求5.4.3 跟蹤文件和報(bào)警文件:1)使用跟蹤文件:以便查看后臺(tái)進(jìn)程是否有錯(cuò)誤。2)指定跟蹤文件的位置:后臺(tái)進(jìn)程的所有跟蹤文件和報(bào)警文件都將寫(xiě)入到由初始化參數(shù)backgroup_dump_dest指定的目標(biāo)目錄中3) 控制跟蹤文件的大小 MAX_DUMP_FILE_SIZE 4)控制Oracle寫(xiě)入跟蹤文件的過(guò)程 alter session set sql_trace true;5.5
5、 為并行執(zhí)行管理進(jìn)程5.5.1 管理并行執(zhí)行的服務(wù)器 設(shè)置parallel_automatic_tuning=trun5.5.2 為某個(gè)會(huì)話更改并行執(zhí)行 1)停用并行執(zhí)行:在發(fā)布alter session disable parallel dml|ddl|query語(yǔ)句后,就不能將所有后面的DML(inster update delete)DDL(create Alter)或查詢(select)語(yǔ)句并行處理。 2)啟用并行執(zhí)行:在發(fā)布alter session enable parallel dml|ddl|query后,就可以并行處理3) 強(qiáng)制并行執(zhí)行 alter session force
6、 parallel dml|ddl|query5.6 為外部過(guò)程管理進(jìn)程5.6.1 為調(diào)用外部 設(shè)置一個(gè)環(huán)境 1)編輯tnsname.ora文件,通過(guò)添加一個(gè)入口連接到監(jiān)聽(tīng)進(jìn)程或者可以使用oracle網(wǎng)絡(luò)配置助理來(lái)設(shè)置tnsname.ora 2) 編輯listener.ora文件,為外部過(guò)程監(jiān)聽(tīng)進(jìn)程添加一個(gè)入口?;蛘呖梢允褂胦racle網(wǎng)絡(luò)配置助理來(lái)設(shè)置listener.ora文件 3)啟動(dòng)一個(gè)單獨(dú)的監(jiān)聽(tīng)進(jìn)程來(lái)專門(mén)處理外部過(guò)程 4)建議限制單獨(dú)的監(jiān)聽(tīng)進(jìn)程的權(quán)限 5)如果外部過(guò)程代理是在一臺(tái)遠(yuǎn)程的計(jì)算機(jī)上,那么可以將可執(zhí)行的外部過(guò)程代理設(shè)置在$oracle_home/bin路徑中。5.6.2 在
7、tnsname.ora文件中為外部過(guò)程監(jiān)聽(tīng)程序添加入口 Extproc_connection_data=( description=(address=(protocol=ipc) (key=extproc_key) (connect_data=(sid=extproc_agent)5.6.3 在listener.ora文件中為外部過(guò)程添加入口 Listener=( description=(address=(protocol=ipc) (key=extproc_key) Sid_list_listener=(sid_list= (sid_desc= (sid_name=extproc_agen
8、t) (oracle_home=/oracle) (program=extproc)5.7 終止會(huì)話 alter system kill session 1,15:終止會(huì)話的系統(tǒng)標(biāo)識(shí)符為7,它的串行號(hào)為155.7.1 識(shí)別要終止的是哪個(gè)會(huì)話 可以查詢V$SESSION動(dòng)態(tài)性能視圖 SELECT SID,SERIAL#,STATUS FROM V$SESSION WHERE USERNAME = tom;5.7.2 終止處理激活狀態(tài)的會(huì)話5.7.3 終止處于非激活狀態(tài)的會(huì)話第6章 管理控制文件6.1 什么是控制文件:控制文件是一個(gè)小型的二進(jìn)制文件,它可以記錄數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),包括的內(nèi)容有數(shù)據(jù)庫(kù)名
9、稱,相關(guān)的數(shù)據(jù)文件和聯(lián)機(jī)重做日志文件的名稱和位置,數(shù)據(jù)庫(kù)創(chuàng)建的時(shí)標(biāo),當(dāng)前日志的序號(hào),檢驗(yàn)點(diǎn)信息。6.2 控制文件的準(zhǔn)則: 1)提供控制文件的文件名:使用初始化參數(shù)CONTROL_FILES指定控制文件名。 2)在不同磁盤(pán)上的復(fù)用控制文件: 3) 適當(dāng)放置控制文件 4)備份控制文件 5)管理控制文件的大?。汗芾砦募笮〉闹饕獩Q定權(quán)在于設(shè)置MAXDATAFILES,MAXLOGFILES,MAXLOGMEMBERS,MAXLOGHISTORY參數(shù)以及在創(chuàng)建相關(guān)數(shù)據(jù)庫(kù)的CREATE DATABASE語(yǔ)句中MAXINSTANCES參數(shù)的值。6.3)創(chuàng)建控制文件 1) 創(chuàng)建初始化控制文件 CONTROL
10、_FILES=(/u01/oracle/prod/control01.ctl, /u02/oracle/prod/control01.ctl, /u03/oracle/prod/control01.ctl) 2)創(chuàng)建額外的副本、重命名和重定位控制文件 如果要多路復(fù)用或移動(dòng)當(dāng)前控制文件的另外副本,按如下步驟操作 (1)關(guān)閉數(shù)據(jù)庫(kù) (2)使用操作系統(tǒng)命令,將現(xiàn)有控制文件備份到另外一個(gè)位置 (3)編輯數(shù)據(jù)庫(kù)初始化參數(shù)文件中的初始化參數(shù)CONTROL_FILES,進(jìn)而添加新的控制文件的名稱,或者更改現(xiàn)有控制文件的文件名。 (4)重新啟動(dòng)數(shù)據(jù)庫(kù) 3)創(chuàng)建新的控制文件 何時(shí)創(chuàng)建新的控制文件(1)所有數(shù)據(jù)庫(kù)
11、的控制文件都受到永久性的損壞,并且還沒(méi)有任何控制文件的備份(2)希望改變其中某個(gè)數(shù)據(jù)庫(kù)參數(shù)的永久性設(shè)置。包括MAXDATAFILES,MAXLOGFILES,MAXLOGMEMBERS,MAXLOGHISTORY、MAXINSTANCES參數(shù)的值。 CREATE CONTROLFILE語(yǔ)句 CREATE CONTROLFILE SET DATABASE prodLOGFILE GROUP 1 (/u01/oracle/prod/REDO01_01.log, /u02/oracle/prod/redo01_02.log), GROUP 2 (/u01/oracle/prod/REDO02_01.
12、log, /u02/oracle/prod/redo02_02.log), GROUP 3 (/u01/oracle/prod/REDO03_01.log, /u02/oracle/prod/redo03_02.log),NORESETLOGSDATAFILE /u01/oracle/prod/system01.dbf SIZE 3M, /u01/oracle/prod/rbs01.dbs SIZE 5M /u01/oracle/prod/users01.dbs SIZE 5M /u01/oracle/prod/temp01.dbs SIZE 5MMAXLOGFILES 50MAXLOGMEM
13、BERS 3MAXDATAFILES 200MAXINSTANCES 6ARCHIVERLOG; 創(chuàng)建新的控制文件的步驟:(1) 制作一個(gè)包含數(shù)據(jù)庫(kù)的所有數(shù)據(jù)文件和聯(lián)機(jī)重做日志文件的列表,需要如下列表 SELECT MEMBER FROM V$LOGFILE SELECT NAME FROM V$DATAFILE SELECT VALUE FROM V$PARAMETER WHERE NAME = CONTROL_FILES;(2) 關(guān)閉數(shù)據(jù)庫(kù)(3) 備份數(shù)據(jù)庫(kù)的所有數(shù)據(jù)文件和聯(lián)機(jī)重做日志文件(4) 啟動(dòng)一個(gè)新的實(shí)例,但是不要裝載或打開(kāi)數(shù)據(jù)庫(kù) startup nomount(5) 使用CREA
14、TE CONTROLFILE語(yǔ)句為數(shù)據(jù)庫(kù)創(chuàng)建一個(gè)新的控制文件(6) 在離線存儲(chǔ)設(shè)備上存儲(chǔ)新的控制文件的備份(7) 為數(shù)據(jù)庫(kù)編輯CONTRIL_FILES初始化參數(shù)(8) 如果有必要可以恢復(fù)數(shù)據(jù)庫(kù)(9) 打開(kāi)數(shù)據(jù)庫(kù) 如果沒(méi)有執(zhí)行8恢復(fù)過(guò)程,則直接運(yùn)行 ALTER DATABASE OPEN;如果創(chuàng)建控制文件是指定resetlogs,則執(zhí)行ALTER DATABASE OPEN RESETLOGS;4) 在創(chuàng)建控制文件之后遇到的文件及其解決方法 1)檢查丟失或多余的文件 2) 在CREATE CONTRO;FILE過(guò)程中處理錯(cuò)誤5) 備份控制文件 1) 使用以下語(yǔ)句將控制文件備份為二進(jìn)制文件ALT
15、ER DATABASE BACKUP CONTROLFILE to /oracle/backup/control.bkp; 2)制作以后可用于重新創(chuàng)建控制文件的SQL語(yǔ)句 ALTER DATABASE BACKUP CONTROLFLE TO TRACE;6)使用當(dāng)前副本恢復(fù)控制文件 1)使用控制文件的副本對(duì)受到損壞的控制文件進(jìn)行恢復(fù) (1)關(guān)閉實(shí)例,使用操作系統(tǒng)命名用一個(gè)完好的副本重寫(xiě)損壞的控制文件 cp /u01/oracle/prod/control03.ctl /u01/oracle/prod/control02.ctl (2)啟動(dòng)SQL*PLUS并打開(kāi)數(shù)據(jù)庫(kù) startup 2)使用
16、控制文件的副本對(duì)永久性介質(zhì)失敗進(jìn)行恢復(fù) (1)關(guān)閉實(shí)例,使用操作系統(tǒng)命名將控制文件的當(dāng)前副本復(fù)制到一個(gè)新的可訪問(wèn)的位置 cp /u01/oracle/prod/control01.ctl /u01/oracle/prod/control03.ctl(2)編輯初始化參數(shù)中的CONTROL_FILES參數(shù),以便用心的位置代替原來(lái)的被損壞的位置: CONTROL_FILES = (/u01/oracle/prod/control01.ctl /u02/oracle/prod/control02.ctl/u04/oracle/prod/control03.ctl )(3)啟動(dòng)SQL*Plus并打開(kāi)數(shù)據(jù)
17、庫(kù) STARTUP7) 刪除控制文件 (1)關(guān)閉數(shù)據(jù)庫(kù) (2)編輯數(shù)據(jù)初始化參數(shù)文件中的初始化參數(shù)CONTROL_FILES,以便刪除舊的控制文件的名稱 (3)重新啟動(dòng)數(shù)據(jù)庫(kù)8)顯示控制文件信息第7章 管理聯(lián)機(jī)重做日志7.1 什么是聯(lián)機(jī)重做日志 聯(lián)機(jī)重做日志包括兩個(gè)或更多個(gè)預(yù)先分配好的文件,這些文件中存儲(chǔ)自文件產(chǎn)生以來(lái)對(duì)數(shù)據(jù)庫(kù)所做的所有更改。1) 重做線程:每個(gè)數(shù)據(jù)庫(kù)實(shí)例都有它自己的聯(lián)機(jī)重做日志組,這些聯(lián)機(jī)重做日志組,不管是不是多路復(fù)用,都稱之為一個(gè)聯(lián)機(jī)重做的實(shí)例線程。2) 聯(lián)機(jī)重做日志目錄:聯(lián)機(jī)重做日志文件中填滿了重做記錄。重做記錄又稱為重做條目,它由一組修改向量組成,其中每個(gè)修改向量都是用
18、來(lái)描述對(duì)數(shù)據(jù)庫(kù)中的某個(gè)塊所做的一種修改。3) Oracle如何將內(nèi)容寫(xiě)到聯(lián)機(jī)重做日志:oracle數(shù)據(jù)庫(kù)聯(lián)機(jī)重做日志包括兩個(gè)或 聯(lián)機(jī)重做日志文件,一般至少兩個(gè),以確保其中一個(gè)一直用于寫(xiě)入,另一個(gè)用于存檔。后臺(tái)進(jìn)程日志寫(xiě)入程序(LGWR)以循環(huán)方式填寫(xiě)聯(lián)機(jī)重做日志文件3.1)活動(dòng)的(當(dāng)前的)和非活動(dòng)的聯(lián)機(jī)重做日志文件3.2)日志卻換和日志順序號(hào)7.2 規(guī)劃聯(lián)機(jī)重做日志1)多路復(fù)用聯(lián)機(jī)重做日志文件2)將聯(lián)機(jī)重做日志成員放置在不同的磁盤(pán)上3)設(shè)置聯(lián)機(jī)重做日志成員的大小4)選擇聯(lián)機(jī)重做日志文件的號(hào)碼5)控制存檔延遲7.3 創(chuàng)建聯(lián)機(jī)重做日志組及其成員:需要擁有ALTER DATABASE系統(tǒng)權(quán)限1)創(chuàng)建
19、聯(lián)機(jī)重做日志組 向數(shù)據(jù)庫(kù)添加了一個(gè)新的重做日志組: ALTER DATABASE ADD LOGFILE(/oracle/dbs/loglc.rdo,/oracle/dbs/log2c.rdo)SIZE 500K使用GROUP選項(xiàng)來(lái)制定標(biāo)識(shí)組的編號(hào)ALTER DATABASE ADD LOGFILE GROUP 10(/oracle/dbs/loglc.rdo,/oracle/dbs/log2c.rdo)SIZE 500K2) 創(chuàng)建聯(lián)機(jī)重做日志成員為組號(hào)為2的組添加了一個(gè)新的重做日志成員ALTER DATABASE ADD LOGFILE MEMBER /oracle/dbs/log2c.rd
20、o TO GROUP 2通過(guò)to蠶食中制定組中所有其他成員的方法來(lái)識(shí)別目標(biāo)組 ALTER DATABASE ADD LOGFILE MEMBER /oracle/dbs/log2c.rdo TO (/oracle/dbs/log2a.rdo,/oracle/dbs/log2b.rdo)7.4 重新定位和重新命名聯(lián)機(jī)重做日志成員 1)關(guān)閉數(shù)據(jù)庫(kù) SHUTDOWN 2)將聯(lián)機(jī)重做日志文件復(fù)制到新的位置 mv /diska/logs/log1a.rdo /diskc/logs/log1c.rdo mv /diska/logs/log2a.rdo /diskc/logs/log2c.rdo 3) 啟動(dòng)
21、并裝載數(shù)據(jù)庫(kù),但不打開(kāi)數(shù)據(jù)庫(kù) CONNECT / AS SYSDBA STARTUP MOUNT 4) 重新命名聯(lián)機(jī)重做日志成員ALTER DATABASE RENAME FILE /diska/logs/log1a.rdo, /diska/logs/log2a.rdo to /diskc/logs/log1c.rdo,/diskc/logs/log2c.rdo; 5) 打開(kāi)數(shù)據(jù)庫(kù)進(jìn)行正常操作 ALTER DATABASE OPEN;7.5 取消聯(lián)機(jī)重做日志組及其成員 1)取消日志組 ALTER DATABASE DROP LOGFILE GROUP 3 2) 取消聯(lián)機(jī)重做日志成員 ALTER
22、 DATABASE DROP LOGFILE MEMBER /oracle/dbs/log3c.rdo;7.6 強(qiáng)制實(shí)施日志切換 ALTER SYSTEM SWITCH LOGFILE;7.7 檢驗(yàn)重做日志文件中的塊 初始化參數(shù)DB_BLOCK_CHECKSUM的值TRUE OR FALSE7.8 清楚聯(lián)機(jī)重做日志文件 清除組號(hào)為3的重做日志組中的日志文件:ALTER DATABASE CLEAR LOGFILE GROUP 3;受到損壞的重做日志文件如果還沒(méi)有存檔,可以使用UNARCHIVED關(guān)鍵字ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 3
23、;7.9 查看連接重做日志信息第8章 管理已存檔的重做日志8.1 什么是已經(jīng)存檔的重做日志Oraccle允許將已填滿的聯(lián)機(jī)重做日志文件的組保存到一個(gè)或多個(gè)脫機(jī)目的地,這些日志全都稱為已存檔的重做日志,也可稱為存檔日志。將聯(lián)機(jī)重做日志文件變成已存檔的重做日志文件的進(jìn)程稱為存檔。8.2 在NOARCHIVELOG和ARCHIVELOG兩種模式之間進(jìn)行選擇 1)在NOARCHIVELOG模式下運(yùn)行數(shù)據(jù)庫(kù):該模式只能保護(hù)數(shù)據(jù)庫(kù)免于實(shí)例識(shí)別,單不能避免介質(zhì)失敗。 2) 在ARCHIVELOG模式下運(yùn)行數(shù)據(jù)庫(kù) 該模式的好處: 數(shù)據(jù)庫(kù)備份,聯(lián)機(jī)重做日志文件也一起備份,這樣可以保證在操作系統(tǒng)或磁盤(pán)失敗事件后能
24、夠恢復(fù)所有已提交的事務(wù)。 如果有已存檔的日志,可以使用在打開(kāi)數(shù)據(jù)庫(kù)時(shí)以及在正常系統(tǒng)使用過(guò)程中所獲得的備份 通過(guò)將原有的已存檔的重做日志應(yīng)用于備用數(shù)據(jù)庫(kù)的方法,可以將當(dāng)前的備份數(shù)據(jù)庫(kù)與它原來(lái)的數(shù)據(jù)庫(kù)一起保留8.3 控制存檔模式 1) 設(shè)置最初的數(shù)據(jù)庫(kù)存檔模式:在CREATE DATABASE語(yǔ)句中需要設(shè)置數(shù)據(jù)庫(kù)最初的存檔模式,默認(rèn)為NOARCHIVELOG 2)改變數(shù)據(jù)庫(kù)的存檔模式 使用ALTER DATABASE語(yǔ)句來(lái)改變,方法: 關(guān)閉數(shù)據(jù)庫(kù)實(shí)例 shutdown 備份數(shù)據(jù)庫(kù) 對(duì)初始化參數(shù)進(jìn)行編輯,其中包含了指定是否允許自動(dòng)存檔以及指定存檔日志文件的目標(biāo)位置的初始化參數(shù) 啟動(dòng)一個(gè)新的實(shí)例并裝載
25、數(shù)據(jù)庫(kù),但是不打開(kāi)數(shù)據(jù)庫(kù) STARTUP MOUNT 轉(zhuǎn)換數(shù)據(jù)庫(kù)的存檔模式,然后打開(kāi)數(shù)據(jù)庫(kù)進(jìn)行正常操作 ALTER DATABASE ARCHIVELOG; ALTER DATABSE OPEN 3) 允許自動(dòng)存檔方式 在實(shí)例啟動(dòng)時(shí)允許自動(dòng)存檔方式:在數(shù)據(jù)庫(kù)啟動(dòng)實(shí)例時(shí)自動(dòng)初始化參數(shù)LOG_ARCHIVE_START=true 在實(shí)例啟動(dòng)后允許自動(dòng)存檔方式 ALTER SYSTEM ARCHIVE LOG START; 控制存檔進(jìn)程的數(shù)目 參數(shù)LOG_ARCHIVE_MAX_PROCESSESALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=3;4) 禁止自動(dòng)
26、存檔 在實(shí)例啟動(dòng)時(shí)禁止自動(dòng)存檔方式 設(shè)置初始化參數(shù):LOG_ARCHIVE_START=FALSE 在實(shí)例啟動(dòng)后禁止自動(dòng)存檔方式 ALTER SYSTEM ARCHIVE LOG STOP 5)執(zhí)行手動(dòng)存檔 ALTER SYSTEM ARCHIVE LOG ALL 如果不允許自動(dòng)存檔,就必須及時(shí)手動(dòng)存檔聯(lián)機(jī)重做日志的組 如果允許自動(dòng)存檔,但是又希望將已填滿的聯(lián)機(jī)重做日志成員的某個(gè)非活動(dòng)組重新存檔到另外一個(gè)位置,那么可以使用手動(dòng)存檔的方式。8.4 指定存檔目標(biāo)位置 1)指定存檔目標(biāo)位置 通過(guò)初始化參數(shù)可以指定存檔的目標(biāo)位置 方法1 使用參數(shù)LOG_ARCHIVE_DEST_n 步驟:(1) 使用
27、SQL*Plus來(lái)關(guān)閉數(shù)據(jù)庫(kù) SHUTDOWN(2) 編輯LOG_ARCHIVE_DEST_n參數(shù)來(lái)指定1到10個(gè)存檔位置(3) 編輯LOG_ARCHIVE_FORMAT 初始化參數(shù),使用%s來(lái)包含日志序號(hào)作為文件名地一部分,并且使用%t來(lái)包含線程號(hào)。使用大寫(xiě)字母(%S和%T)來(lái)以0填補(bǔ)文件名左邊的空處。 方法2 使用參數(shù)LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST LOG_ARCHIVE_DEST參數(shù)指定的主存檔目標(biāo)位置 LOG_ARCHIVE_DUPLEX_DEST參數(shù)指定的輔助存檔目標(biāo)位置2)了解存檔目標(biāo)位置的狀態(tài) Valid/Invalid指出磁盤(pán)位
28、置或服務(wù)名稱是否是指定的和有效的 Enable/Disbaled指出目標(biāo)位置的可用性狀態(tài)以及Oracle是否可以使用這個(gè)目標(biāo)位置 Active/Inactive指出在訪問(wèn)目標(biāo)位置時(shí)是否會(huì)出現(xiàn)問(wèn)題8.5 指定日志傳送模式 1)正常傳送模式 2)備用傳送模式8.6 管理存檔目標(biāo)失敗 1)指定最小數(shù)目的成功的目標(biāo) 初始化參數(shù):LOG_ARCHIVE_MIN_SUCCEED_DEST=n(1-10) 2)重新存檔到一個(gè)失敗過(guò)的目標(biāo)位置8.7 通過(guò)指定多個(gè)ARCn進(jìn)程調(diào)整存檔性能 ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=28.8 控制存檔日志進(jìn)程生成的跟蹤輸
29、出 初始參數(shù)LOG_ARCHIVE_TRACE來(lái)指定跟蹤級(jí)別如果設(shè)置LOG_ARCHIVE_TRACE=12那么將生成跟蹤解蔽分別為8和4輸出。ALTER SYSTEM SET LOG_ARCHIVE_TRACE=128.9 查看有關(guān)已存檔的重組日志信息 1)固定的視圖:2)ARCHIVE LOG LIST命令第9章 使用LogMiner來(lái)分析重做日志文件9.1 了解分析重做日志文件的價(jià)值 1)查明何時(shí)發(fā)生數(shù)據(jù)庫(kù)邏輯上的損壞。 2)決定在事物級(jí)執(zhí)行細(xì)粒度地恢復(fù)所必需的動(dòng)作 3)性能協(xié)調(diào)和容量規(guī)劃 4)實(shí)行事后審計(jì)9.2 在開(kāi)始之前需要知道的內(nèi)容 1) 重做日志文件 通過(guò)V$LOGMNR_CON
30、TENTS視圖 重做日志文件必須來(lái)自O(shè)rale數(shù)據(jù)庫(kù)的8.0或更高版本 重做日志文件必須使用與運(yùn)行LogMine相同的數(shù)據(jù)庫(kù)的字符集 通常,重做日志文件的分析需要生產(chǎn)重做日志文件的數(shù)據(jù)庫(kù)所生產(chǎn)的字典 LogMiner必須運(yùn)行在生成正在分析的重做日志文件的硬件平臺(tái)上。 2) 字典選項(xiàng) 要完整的譯出重做日志文件的內(nèi)容,LogMiner需要訪問(wèn)數(shù)據(jù)庫(kù)字典 LogMiner 從源字典中取出數(shù)據(jù)的方式:將字典中的數(shù)據(jù)提取到平面文件,將字典中的數(shù)據(jù)提取到重做日志文件,或者使用聯(lián)機(jī)目錄(數(shù)據(jù)庫(kù)當(dāng)前使用的字典) 將字典提取到平面文件或重做日志文件LogMiner字典文件包含識(shí)別創(chuàng)建這個(gè)文件的數(shù)據(jù)庫(kù)以及該文件創(chuàng)
31、建時(shí)間的信息。DBMS_LOGMNR_D.BUILD過(guò)程允許將字典提取到平面文件或重做日志文件將字典提取到平面文件:當(dāng)數(shù)據(jù)字典提取到一個(gè)平面文件時(shí),DDL語(yǔ)句可以由其他用戶發(fā)布。將字典提取到重做日志文件:當(dāng)正在將字典提取到重做日志流時(shí),不能執(zhí)行任何DDL語(yǔ)句。 使用聯(lián)機(jī)目錄 3) DDL語(yǔ)句的跟蹤 DDL_DICT_TRACKING選項(xiàng)設(shè)置LogMiner跟蹤數(shù)據(jù)定義語(yǔ)言 4) 存儲(chǔ)管理 ALTER TABLESPACE ADD DETAFILE 5) 從重做日志文件中獲取數(shù)值:使用mine函數(shù)從重做日志文件中提取LogMiner所需的數(shù)據(jù),mine函 數(shù)有DNMS_LOGMNR.MINE_V
32、ALUE和COLUMN_PRESENT 6)LogMiner的局限 不支持以下內(nèi)容:數(shù)據(jù)類型LONG和LOB;簡(jiǎn)單的和嵌套的數(shù)據(jù)提取類型(ADTs);集合(嵌套表和VARRAYs);對(duì)象Refs;索引結(jié)構(gòu)的表(IOTs) 7)LogMiner的視圖 V$LOGMNR_CONTENTS 顯示對(duì)用戶所做的修改以及表信息V$LOGMNR_DICTIONARY顯示有關(guān)LogMiner字典文件的信息,V$LOGMNR_LOGS顯示有關(guān)指定的日志文件信息V$LOGMNT_PARAMS顯示有關(guān)可選的logMiner參數(shù)的信息,包括啟動(dòng)和結(jié)束系統(tǒng)更改號(hào)碼以及啟動(dòng)和結(jié)束的時(shí)間9.3 使用LogMiner 要運(yùn)行
33、LogMiner可以使用兩個(gè)PL/SQL包: DBMS_LOGMNR 包含初始化LogMiner和運(yùn)行LogMiner必須的過(guò)程。這些過(guò)車包含指定日志文件名、帥選標(biāo)準(zhǔn)和LogMiner會(huì)話特性的接口 DBMS_LOGMNR_D 查詢當(dāng)前數(shù)據(jù)庫(kù)的字典表并創(chuàng)建LogMiner字典文件 典型LogMiner會(huì)話中的步驟1) 提取字典:要使用LogMiner,必須通過(guò)以下方法提供一個(gè)字典 將數(shù)據(jù)庫(kù)字典信息提取到平面文件,使用DBMS_LOGMNR_D.BUILD過(guò)程 創(chuàng)建Oracle9i數(shù)據(jù)庫(kù)的字典平面文件(1) 要為字典文件指定放置的位置,可以設(shè)置init.ora文件中的UTL_FILE_DIR參數(shù)
34、。(2) 如果數(shù)據(jù)庫(kù)處理關(guān)閉狀態(tài),可以使用SQL*Plus來(lái)裝載并打開(kāi)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)中有希望分析的重做日志文件(3) 執(zhí)行PL/SQL過(guò)程DBMS_LOGMNR_D.BUILD 將數(shù)據(jù)庫(kù)字典信息提取到重做日志文件 通過(guò)DICT_FROM_ONLINE_CATALOG選項(xiàng)來(lái)指定使用聯(lián)機(jī)目錄2) 指定要分析的重做日志文件:執(zhí)行DBMS_LOGMNR.ADD_LOGFILE過(guò)程即可 使用SQl*plus來(lái)啟動(dòng)Oracle實(shí)例,數(shù)據(jù)庫(kù)可以裝載,也可以不裝載 Startup 通過(guò)指定DBMS_LOGMNR.ADD_LOGFILE過(guò)程的NEW選項(xiàng)來(lái)創(chuàng)建重做日志文件列表 EXECUTE DBMS_LOGMN
35、R.ADD_LOGFILE (LOGFILENAME=/oracle/logs/log1.f, OPTIONS=DBMS_LOGMNR.ADDFILE); 如果需要,可以通過(guò)DBMS_LOGMNR.ADD_LOGFILE過(guò)程的ADDFILE選項(xiàng)來(lái)添加更多的重做日志文件 如下:添加log2.f文件EXECUTE DBMS_LOGMNR.ADD_LOGFILE (LOGFILENAME=/oracle/logs/log2.f, OPTIONS=DBMS_LOGMNR.ADDFILE); 如果需要,還可以通過(guò)DBMS_LOGMNR.ADD_LOGFIE過(guò)車的REMOVEFILE選項(xiàng)來(lái)刪除重做日志文件
36、,如下刪除log2.f文件 EXECUTE DBMS_LOGMNR.ADD_LOGFILE (LOGFILENAME=/oracle/logs/log2.f, OPTIONS=DBMS_LOGMNR.REMOVEFILE);3) 啟動(dòng)LogMiner 執(zhí)行DBMS_LOGMNR.START_LOGMNR過(guò)程來(lái)啟動(dòng)LogMinerEXECUTE DBMS_LOGMNR.START_LOGMNR(DICTFILENAME=/oracle/database/dictionary.ora) 還可以設(shè)置startTime和endTime參數(shù)來(lái)根據(jù)時(shí)間刷選數(shù)據(jù) TO_DATA EXECUTE DBMS_L
37、OGMNR.START_LOGMNR(DICTFILENAME=/oracle/database/dictionary.ora,STARTTIME=TO_DATA(01-JAN-1999 08:30:00,DD-MON-YYYY HH:MI:SS)ENDTIME=TO_DATA(01-JAN-1999 08:40:00,DD-MON-YYYY HH:MI:SS) 還可以使用SCN的startScn和endScn參數(shù)來(lái)刷選數(shù)據(jù) EXECUTE DBMS_LOGMNR.START_LOGMNR(DICTFILENAME=/oracle/database/dictionary.ora, STARTS
38、CN = 100,ENDSCN = 150); 如果需要,還可以使用OPTIONS參數(shù)來(lái)設(shè)置以下會(huì)話特性:(1) COMMITTED_DATA_ONLY:在V$LOGMNR_CONTENTS視圖中,只顯示已提交事務(wù)的行,這個(gè)特性能夠帥選出回滾事務(wù)以及進(jìn)程中的事務(wù)(2) SKIP_CORRUPTION: 在V$LOGMNR_CONTENTS視圖中進(jìn)行選擇性操作的過(guò)程中,會(huì)跳過(guò)重做日志文件的任何遭到損壞的地方(3) DDL_DICT_TRACKING(4) NO_DICT_RESET_ONSELECT(5) DICT_FROM_ONLINE_CATALOG(6) DICT_FROM_REDO_LO
39、GS4) 分析V$LOGMNR_CONTENTS視圖中的輸出 SELECT operation,sql_redo FROM V$LOGMNR_CONTENTS5) 使用LogMiner執(zhí)行對(duì)象級(jí)的恢復(fù)操作:用SQL_UNDO語(yǔ)句來(lái)回滾原來(lái)對(duì)數(shù)據(jù)庫(kù)所做的修改6) 結(jié)束LogMiner會(huì)話:EXECUTE DBMS_LOGMNR.END_LOGMNR;9.4 使用LogMiner的例子 1)跟蹤某個(gè)特定用戶實(shí)施的更改 創(chuàng)建字典文件(1) 在init.ora文件中,將初始化參數(shù)UTL_FILE_DIR設(shè)置為/user/local/dbsUTL_FILE_DIR = /user/local/dbs(2
40、) 啟動(dòng)SQL*plus,然后連接數(shù)據(jù)庫(kù) CONNECT SYSTEM/PASSWORD(3) 打開(kāi)數(shù)據(jù)庫(kù)以便創(chuàng)建字典文件:STARTUP(4) 將字典命名為orcldict.ora并把它放在/user/local/dbs目錄中EXECUTE DBMS_LOGMNR_D.BUILD( DICTIONARY_FILENAME = orcldict.ora, DICTIONARY_LOCATION = /usr/local/dbs);(5) 這樣就創(chuàng)建了字典,并且可以用于以后的操作中。可以關(guān)閉數(shù)據(jù)庫(kù):shutdown 添加重做日志文件并確定搜索范圍(1) 啟動(dòng)SQL*plus,按SYSTEM身份連
41、接,然后啟動(dòng)實(shí)例:CONNECT SYSTEM/PASSWORDSTARTUP NOMOUNT(2) 提供要分析的日志文件的列表,設(shè)置標(biāo)記Options來(lái)表明這是一個(gè)新的列表EXECUTE DBMS-LOGMNR.ADD_LOGFILE( LOGFILENAME = loglorcl.ora, OPTIONS = DBSM_LOGMNR.NEW);(3) 往現(xiàn)有列表中添加文件。設(shè)置OPTIONS來(lái)表明正在往現(xiàn)有列表添加文件EXECUTE DBMS-LOGMNR.ADD_LOGFILE( LOGFILENAME = log2orcl.ora, OPTIONS = DBSM_LOGMNR.ADDF
42、IE); 啟動(dòng)LogMiner并分析數(shù)據(jù)(1) 啟動(dòng)LogMiner 并吸納之在制定時(shí)間范圍內(nèi)進(jìn)行搜索 EXECUTE DBMS_LOGMNR.START_LOGMNR(DICTFILENAME= orcldict.ora,STARTTIME=TO_DATA(01-JAN-1999 08:30:00,DD-MON-YYYY HH:MI:SS)ENDTIME=TO_DATA(01-JAN-1999 08:40:00,DD-MON-YYYY HH:MI:SS)(2) 查詢V$LOGMNR_CONTENTS視圖來(lái)查看搜索結(jié)果 SELECT sql_redo,sql_undo FROM V$LOGMN
43、R_CONTENTS WHERE USERNAME =;2)計(jì)算表訪問(wèn)統(tǒng)計(jì)信息 啟動(dòng)LogMiner避過(guò)制定一個(gè)時(shí)間范圍EXECUTE DBMS_LOGMNR.START_LOGMNR(DICTFILENAME= orcldict.ora,STARTTIME=TO_DATA(01-JAN-1999 08:30:00,DD-MON-YYYY HH:MI:SS)ENDTIME=TO_DATA(01-JAN-1999 08:40:00,DD-MON-YYYY HH:MI:SS)DICTFILENAME = /usr/local/dict.ora); 查詢V$LOGMNR_CONTENTS視圖來(lái)確定在
44、制定時(shí)間范圍內(nèi)那些表進(jìn)行修改SELECT seg_owner,seg_name,count(*)As Hits FROM V$LOGMNR_CONTENTS WHERE seg_name not LIKE %$ GROUP BY seg_owner,seg_name;第10章 管理作業(yè)隊(duì)列10.1 啟動(dòng)執(zhí)行作業(yè)的進(jìn)程作業(yè)隊(duì)列(Jnnn)進(jìn)程執(zhí)行作業(yè)隊(duì)列中的作業(yè)初始化參數(shù)JOB_QUEUE_PROCESSES控制實(shí)例能否啟動(dòng)一個(gè)協(xié)調(diào)作業(yè)隊(duì)列程序進(jìn)程。設(shè)置0-1000ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 20 10.2 管理作業(yè)隊(duì)列 1)DBMS_JOB包2
45、)將作業(yè)提交到作業(yè)隊(duì)列 作業(yè)環(huán)境:當(dāng)把作業(yè)提交到作業(yè)隊(duì)列或者更改作業(yè)的定義時(shí),Oracle記錄了以下環(huán)境特征: 當(dāng)前用戶;提交或更改作業(yè)的用戶;當(dāng)前模式;MAC權(quán)限。 同時(shí)Oracle還記錄以下NLS參數(shù):NLS_LANGUAGE, NLS_TERRITORY; NLS_CURRENCY;NLS_ISO_CURRENCY;NLS_NUMERIC_CHACTERS; NLS_DATE_FORMAT; NLS_DATE_LANGUAGE; NLS_SORT 作業(yè)和導(dǎo)入/導(dǎo)出 作業(yè)所有者 作業(yè)號(hào)碼 作業(yè)定義 作業(yè)執(zhí)行間隔 數(shù)據(jù)庫(kù)鏈接和作業(yè)3)作業(yè)如何執(zhí)行 作業(yè)隊(duì)列鎖:V$LOCK 使用該隊(duì)列鎖來(lái)確保
46、每次作業(yè)只在一個(gè)會(huì)話中執(zhí)行 作業(yè)執(zhí)行錯(cuò)誤:在網(wǎng)絡(luò)失敗或?qū)嵗∫约爱?dāng)執(zhí)行作業(yè)時(shí)發(fā)生異常情況時(shí)不能成功執(zhí)行隊(duì)列中的作業(yè)4)從作業(yè)隊(duì)列中刪除作業(yè):使用DBMS_JOB包中的REMOVE過(guò)程 DBMS_JOB.REMOVE(作業(yè)號(hào))5) 更改作業(yè):使用DBMS_JOB包中的CHANGE、WHAT、NEXT_DATE或者INTERVAL過(guò)程 CHANGE過(guò)程:通過(guò)調(diào)用FBMS_JOB.CHANGE過(guò)程可以改變?nèi)魏闻c作業(yè)相關(guān)聯(lián)的用戶可定義參數(shù) 如將標(biāo)識(shí)符12114的作業(yè)將變成每三天執(zhí)行一次:DBMS_JOB.CHANGE(12114,NULL,NULL,SYSDATE + 3 ); WHAT過(guò)程:改變作
47、業(yè)的定義。如改變標(biāo)識(shí)符為12144的作業(yè)的定義:DBMS_JOB.WHAT(12144,scott.emppackege.give_raise(RBAYLIS),6000.00); NEXT_DATE過(guò)程 改變作業(yè)下一次執(zhí)行時(shí)間 INTERVAL過(guò)程 改變執(zhí)行間隔的方法6) 損壞的作業(yè) 作業(yè)如何遭到損壞:Oracle嘗試了16次區(qū)執(zhí)行作業(yè),并以失敗告終;使用DBMS_JOB.BRIKEN過(guò)程把作業(yè)標(biāo)記為損壞DB,S_JOB.BROKEN(12144,TRUE);只能將自己的作業(yè)標(biāo)記為損壞 運(yùn)行已經(jīng)損壞的作業(yè):(1) 通過(guò)調(diào)用DBMS_JOB.RUN過(guò)程來(lái)強(qiáng)制運(yùn)行該作業(yè)(2) 通過(guò)調(diào)用DBMS_
48、JOB.REOKEN過(guò)程將該作業(yè)標(biāo)識(shí)為沒(méi)有損壞,并且等待Oracle執(zhí)行7) 強(qiáng)制執(zhí)行作業(yè) DBMS_JOB.RUN(標(biāo)識(shí)符)8) 終止作業(yè):可以通過(guò)將作業(yè)標(biāo)記為損壞,識(shí)別正在運(yùn)行作業(yè)的會(huì)話程序以及解除該會(huì)話連接的方法來(lái)終止正在運(yùn)行的作業(yè)10.3 查看作業(yè)隊(duì)列信息1) 顯示有關(guān)作業(yè)的信息2) 顯示有關(guān)正在運(yùn)行的作業(yè)信息第11章 管理表空間11.1 管理表空間的準(zhǔn)則 1)使用多個(gè)表空間:允許用戶在執(zhí)行數(shù)據(jù)庫(kù)操作有更大的靈活性 將用戶數(shù)據(jù)從數(shù)據(jù)字典數(shù)據(jù)中分離出來(lái),以減少在同一個(gè)數(shù)據(jù)文件的字典對(duì)象和模式對(duì)象之間的競(jìng)爭(zhēng) 將一個(gè)應(yīng)用程序的數(shù)據(jù)與另一個(gè)的分離,防止如果一個(gè)表空間必須被脫機(jī),多個(gè)應(yīng)用程序都受
49、到影響 在不同的磁盤(pán)驅(qū)動(dòng)器上存儲(chǔ)不同表空間的數(shù)據(jù)文件,以減少I(mǎi)/O競(jìng)爭(zhēng) 將回滾段數(shù)據(jù)從用戶數(shù)據(jù)中分離出來(lái),防止單個(gè)磁盤(pán)的故障造成數(shù)據(jù)的永久丟失 為其他表空間保持聯(lián)機(jī)時(shí),使單個(gè)表空間脫機(jī),提供更好的整體可用性 為一個(gè)特定類型的數(shù)據(jù)庫(kù)使用保留一個(gè)表空間 備份單獨(dú)的表空間2)指定表空間默認(rèn)的存儲(chǔ)參數(shù) 3)為用戶指定表空間限額11.2 創(chuàng)建表空間 1)本地管理的表空間 好處:提供空間操作的速度和并發(fā)性;提供性能;允許可讀的備用數(shù)據(jù)庫(kù);簡(jiǎn)化空間分配;減少用戶對(duì)數(shù)據(jù)字典的依賴 創(chuàng)建本地管理的表空間:在CREATE TABLESPACE語(yǔ)句中的EXTENT MANAGEMENT子句中指定LOCAL。利用AUTOALLOCATE選項(xiàng)使Oracle自動(dòng)管理盤(pán)區(qū),指定使用一個(gè)指定大小(UNIFORAM SIZE)的統(tǒng)一盤(pán)區(qū)來(lái)管理該表空間。CREATE TABLESPACE lmtbsb DATAFILE /oracle/data/lmtabsb01.dbf SIZE 50M E
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024標(biāo)準(zhǔn)合作生產(chǎn)合同
- 04年云存儲(chǔ)服務(wù)合同
- 2024施工合同備案表范本
- 04年光伏發(fā)電項(xiàng)目開(kāi)發(fā)與建設(shè)合同
- 2024年互聯(lián)網(wǎng)公司提供在線教育服務(wù)合同
- 2024年光伏發(fā)電項(xiàng)目開(kāi)發(fā)與合作建設(shè)合同
- 2024年企業(yè)宣傳與推廣合同
- 2024建設(shè)銀行外匯的借款合同范本
- 2024古董古玩版權(quán)使用許可合同
- 公司營(yíng)銷部門(mén)年終工作總結(jié)
- 電力工程施工售后保障方案
- 2024年小學(xué)心理咨詢室管理制度(五篇)
- 第16講 國(guó)家出路的探索與挽救民族危亡的斗爭(zhēng) 課件高三統(tǒng)編版(2019)必修中外歷史綱要上一輪復(fù)習(xí)
- 機(jī)器學(xué)習(xí) 課件 第10、11章 人工神經(jīng)網(wǎng)絡(luò)、強(qiáng)化學(xué)習(xí)
- 北京市人民大學(xué)附屬中學(xué)2025屆高二生物第一學(xué)期期末學(xué)業(yè)水平測(cè)試試題含解析
- 書(shū)籍小兵張嘎課件
- 氫氣中鹵化物、甲酸的測(cè)定 離子色譜法-編制說(shuō)明
- 2024秋期國(guó)家開(kāi)放大學(xué)專科《機(jī)械制圖》一平臺(tái)在線形考(形成性任務(wù)四)試題及答案
- 2024年黑龍江哈爾濱市通河縣所屬事業(yè)單位招聘74人(第二批)易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 私募基金管理人-廉潔從業(yè)管理準(zhǔn)則
- 房地產(chǎn)估價(jià)機(jī)構(gòu)內(nèi)部管理制度
評(píng)論
0/150
提交評(píng)論