Oracle數(shù)據(jù)庫(kù)實(shí)用開(kāi)發(fā)_第1頁(yè)
Oracle數(shù)據(jù)庫(kù)實(shí)用開(kāi)發(fā)_第2頁(yè)
Oracle數(shù)據(jù)庫(kù)實(shí)用開(kāi)發(fā)_第3頁(yè)
Oracle數(shù)據(jù)庫(kù)實(shí)用開(kāi)發(fā)_第4頁(yè)
Oracle數(shù)據(jù)庫(kù)實(shí)用開(kāi)發(fā)_第5頁(yè)
已閱讀5頁(yè),還剩71頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、共同學(xué)習(xí) Oracle 數(shù)據(jù)庫(kù)Oracle數(shù)據(jù)庫(kù)理論學(xué)習(xí)及實(shí)際開(kāi)發(fā)1目 錄 Oracle 體系結(jié)構(gòu) Oracle 安裝卸載 Oracle 啟動(dòng)關(guān)閉 Oracle 網(wǎng)絡(luò)管理 Oracle 企業(yè)管理器 Oracle 應(yīng)用幾個(gè)問(wèn)題2一、Oracle體系結(jié)構(gòu)Oracle物理結(jié)構(gòu)Oracle內(nèi)存結(jié)構(gòu)Oracle進(jìn)程結(jié)構(gòu)Oracle邏輯結(jié)構(gòu) 3數(shù)據(jù)文件控制文件重做日志文件專(zhuān)用服務(wù)器進(jìn)程O(píng)racle實(shí)例后臺(tái)進(jìn)程PMONSMONDBWnLGWRCKPTS000D000ARCn監(jiān)聽(tīng)器SGA歸檔重做日志配置文件Oracle數(shù)據(jù)庫(kù)文件附加文件主 機(jī)客戶(hù)機(jī)/應(yīng)用程序(通過(guò)專(zhuān)用服務(wù)器)客戶(hù)機(jī)/應(yīng)用程序(通過(guò)MTS)4O

2、racle 物理結(jié)構(gòu)描述 數(shù)據(jù)庫(kù)物理結(jié)構(gòu)是由數(shù)據(jù)文件(Data File)、重作日志文件(Redo Log File)、控制文件(Control File)組成;其它相關(guān)文件 配置文件、歸檔日志文件、跟蹤文件、警告日志等; 51.1 數(shù)據(jù)文件描述數(shù)據(jù)庫(kù)系統(tǒng)中的所有數(shù)據(jù)都保存在“數(shù)據(jù)文件”中,象表和索引等邏輯結(jié)構(gòu)都物理存在數(shù)據(jù)文件中。 特點(diǎn)一個(gè)數(shù)據(jù)文件僅與一個(gè)表空間相聯(lián)系;一個(gè)表空間包含一個(gè)或多個(gè)數(shù)據(jù)文件。 61.2 重做日志文件描述 用于保存所有數(shù)據(jù)庫(kù)事務(wù)的日志,記錄所有對(duì)數(shù)據(jù)庫(kù)信息的修改,用于數(shù)據(jù)庫(kù)恢復(fù)??紤]到性能和日后便于恢復(fù),并不將遞交的數(shù)據(jù)馬上寫(xiě)入磁盤(pán)上的數(shù)據(jù)文件,而是將改動(dòng)的內(nèi)容采取

3、“重做條目”(Redo Entry)的形式,寫(xiě)入“重做日志文件”中去。數(shù)據(jù)庫(kù)對(duì)重做日志文件進(jìn)行管理時(shí),采取“重做日志組”的形式。特點(diǎn)每一個(gè)數(shù)據(jù)庫(kù)至少包含兩個(gè)日志文件組;日志文件組以循環(huán)方式進(jìn)行寫(xiě)操作;每個(gè)日志文件成員對(duì)應(yīng)一個(gè)物理文件。 7重做日志文件切換(Log Switch)條件:當(dāng)添滿(mǎn)一個(gè)日志文件組時(shí);關(guān)閉數(shù)據(jù)庫(kù);當(dāng)需要?dú)w檔前(Redo log)文件時(shí),DBA強(qiáng)制進(jìn)行日志切換;操作:當(dāng)前日志文件被賦予一個(gè)日志序號(hào),用與標(biāo)示存儲(chǔ)在其中的信息,也用作同步化信息;日志切換時(shí)自動(dòng)產(chǎn)生檢驗(yàn)點(diǎn)(Check Point);重做日志文件鏡像 81.3控制文件描述控制文件記錄了數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),包含了與數(shù)據(jù)

4、庫(kù)狀態(tài)有關(guān)的信息。列如,數(shù)據(jù)庫(kù)結(jié)構(gòu)(其中包含數(shù)據(jù)文件和重做文件的一個(gè)列表)和時(shí)間戳(Time Stamp)(以幫組確定數(shù)據(jù)文件是否被正確的同步)??刂莆募砂蒖MAN(數(shù)據(jù)恢復(fù)管理員)使用的信息??刂莆募R像 91.4配置文件描述 配置文件主要是指INIT.ORA文件和CONFIGInstance_name.ORA文件。INIT.ORA文件包含了一些實(shí)例配置參數(shù),一個(gè)實(shí)例啟動(dòng)時(shí),經(jīng)常要參考這些參數(shù),比如判斷SGA的大小等等。INIT.ORA文件的一個(gè)參數(shù)是IFILE,它引用的又是另一個(gè)配置文件;CONFIGInstance_Name.ORA其中僅僅容納了附加的實(shí)例配置參數(shù)數(shù)據(jù)。IFILE參

5、數(shù)和CONFIGINSTANCE_NAME.ORA協(xié)同工作,便可提供對(duì)Oracle并行服務(wù)器配置的支持。 101.5歸檔日志文件描述日志切換時(shí),歸檔進(jìn)程便會(huì)為不再寫(xiě)入數(shù)據(jù)的重做日志組制做日志文件的拷貝??截悆?nèi)容可以在以后需要進(jìn)行數(shù)據(jù)恢復(fù)的時(shí)候使用。重做日志文件可以手工方式拷貝,已用過(guò)的重做日志的拷貝有一個(gè)專(zhuān)門(mén)的稱(chēng)呼,叫作“歸檔重做日志”(Archived redo logs)。根據(jù)在INIT.ORA配置文件中事先規(guī)定好的格式掩碼集,每個(gè)這樣的都會(huì)分配到一個(gè)“獨(dú)一無(wú)二”的名字;可選性?xún)H當(dāng)數(shù)據(jù)庫(kù)運(yùn)行在歸檔條件下才產(chǎn)生歸檔日志文件; 111.6跟蹤文件與警告日志文件跟蹤文件實(shí)例中運(yùn)行的每一個(gè)后臺(tái)進(jìn)程

6、都有一個(gè)跟蹤文件相連,記載后臺(tái)進(jìn)程遇到的重大事件的信息;警告日志文件警告日志文件(ALTER LOG)文件,警告日志文件記錄數(shù)據(jù)庫(kù)文件運(yùn)行中主要事件的命令幾結(jié)果。警告日志文件和跟蹤文件是數(shù)據(jù)庫(kù)管理的重要資源,可根據(jù)警告日志文件和跟蹤文件查找數(shù)據(jù)庫(kù)異常情況。 12Oracle 內(nèi)存結(jié)構(gòu)Oracle內(nèi)存中存儲(chǔ)信息執(zhí)行的程序代碼;連接的會(huì)話(huà)信息;程序執(zhí)行期間所需數(shù)據(jù)和共享的信息;存儲(chǔ)在外存儲(chǔ)上的緩沖信息。Oracle內(nèi)存結(jié)構(gòu)(內(nèi)存劃分)軟件代碼區(qū);系統(tǒng)全局區(qū);程序全局區(qū);排序區(qū); 13軟件代碼區(qū)用于存儲(chǔ)正在執(zhí)行的或可以執(zhí)行的程序代碼。軟件區(qū)是只讀,可安裝成共享或非共享。通常Oracle系統(tǒng)程序是可共

7、享的,而用戶(hù)程序可以共享也可以不共享。系統(tǒng)全局區(qū)為一組由Oracle分配的共享的內(nèi)存區(qū)域,可包含一個(gè)數(shù)據(jù)庫(kù)實(shí)例的數(shù)據(jù)或控制信息。如果多個(gè)用戶(hù)同時(shí)連接到同一實(shí)例時(shí),在實(shí)例的SGA中數(shù)據(jù)可為多個(gè)用戶(hù)所共享,所以又稱(chēng)為共享全局區(qū)。當(dāng)實(shí)例起動(dòng)時(shí),SGA的存儲(chǔ)自動(dòng)地被分配;當(dāng)實(shí)例關(guān)閉時(shí),該存儲(chǔ)被回收。所有連接到多進(jìn)程數(shù)據(jù)庫(kù)實(shí)例的全部用戶(hù)可使用其SGA中的信息,但僅僅有幾個(gè)進(jìn)程可寫(xiě)入信息。在SGA中又可細(xì)分為數(shù)據(jù)庫(kù)緩沖存儲(chǔ)區(qū)、重做日志緩沖區(qū)、共享池、JAVA池。 14數(shù)據(jù)庫(kù)緩沖區(qū)存儲(chǔ)用于更新的數(shù)據(jù)文件或結(jié)果集合中讀取的數(shù)據(jù)。共享池 字典緩存(Dictionary Cache)保存著自O(shè)racle數(shù)據(jù)字典中

8、讀入的信息。利用這些信息,可實(shí)現(xiàn)查詢(xún)優(yōu)化及安全檢查等諸多功能庫(kù)緩存(Library Cache)保存著解析過(guò)的SQL及PL/SQL語(yǔ)句,另外還有像數(shù)據(jù)鎖那樣的控制結(jié)構(gòu);重做日志緩沖區(qū)(Redo Log Buffer)保存著對(duì)讀入數(shù)據(jù)庫(kù)緩沖區(qū)緩存的數(shù)據(jù)做出的所有改動(dòng)。這些信息稍后會(huì)在許多恢復(fù)功能中發(fā)揮重要作用;JAVA池是Oracle8i引入的一項(xiàng)新特性,負(fù)責(zé)容納與會(huì)話(huà)有關(guān)的JAVA代碼,以及Java虛擬機(jī)(JVM)用到一些的數(shù)據(jù)。 15程序全局區(qū)PGA是一個(gè)內(nèi)存區(qū),包含單個(gè)用戶(hù)進(jìn)程的數(shù)據(jù)和控制信息,所以又稱(chēng)為進(jìn)程全局區(qū)(Process Global Area)。 排序區(qū)排序需要內(nèi)存空間,Ora

9、cle利用該內(nèi)存排序數(shù)據(jù),這部分空間稱(chēng)為排序區(qū)。排序區(qū)存在于請(qǐng)求排序的用戶(hù)進(jìn)程的內(nèi)存中,該空間的大小根據(jù)排序數(shù)據(jù)量的大小,可增長(zhǎng),但受初始化參數(shù)SORT-AREA-SIZER所限制。 16Oracle 進(jìn)程結(jié)構(gòu)進(jìn)程的含義進(jìn)程是操作系統(tǒng)中的一種機(jī)制,它可執(zhí)行一系列的操作。在有些操作系統(tǒng)中使用作業(yè)(JOB)或任務(wù)(TASK)的術(shù)語(yǔ)。一個(gè)進(jìn)程通常有它自己的專(zhuān)用存儲(chǔ)區(qū)。Oracle進(jìn)程結(jié)構(gòu)Oracle進(jìn)程結(jié)構(gòu)可分為兩類(lèi),一類(lèi)是單進(jìn)程結(jié)構(gòu)(單用戶(hù)版),一類(lèi)是多進(jìn)程結(jié)構(gòu)(多用戶(hù)版)。單進(jìn)程結(jié)構(gòu)單進(jìn)程結(jié)構(gòu)僅由一個(gè)進(jìn)程執(zhí)行全部代碼,所以O(shè)racle的代碼和用戶(hù)的數(shù)據(jù)庫(kù)應(yīng)用是單個(gè)進(jìn)程執(zhí)行在單進(jìn)程環(huán)境下的Orac

10、le實(shí)例,僅允許一個(gè)用戶(hù)可存取。例如在MS-DOS上運(yùn)行Oracle。 17多進(jìn)程結(jié)構(gòu)多進(jìn)程結(jié)構(gòu)使用多個(gè)進(jìn)程來(lái)執(zhí)行Oracle的不同部分,對(duì)于每一個(gè)連接的用戶(hù)都有一個(gè)進(jìn)程。在多線(xiàn)程系統(tǒng)中,進(jìn)程分為用戶(hù)進(jìn)程和Oracle進(jìn)程,其中Oracle進(jìn)程又分為服務(wù)器進(jìn)程和后臺(tái)進(jìn)程。服務(wù)器進(jìn)程后臺(tái)進(jìn)程用戶(hù)進(jìn)程O(píng)racle進(jìn)程 18用戶(hù)進(jìn)程,當(dāng)一Oracle用戶(hù)運(yùn)行一應(yīng)用程序,如PRO*C程序或Oracle工具(如SQL*PLUS),Oracle為用戶(hù)運(yùn)行的應(yīng)用建立一個(gè)用戶(hù)進(jìn)程。Oracle進(jìn)程,分為兩類(lèi)一類(lèi)是服務(wù)器進(jìn)程和一類(lèi)是后臺(tái)進(jìn)程。服務(wù)器進(jìn)程,用于處理連接到Oracle實(shí)例用戶(hù)進(jìn)程的請(qǐng)求。當(dāng)應(yīng)用和Or

11、acle是在同一臺(tái)機(jī)器上運(yùn)行,而不再通過(guò)網(wǎng)絡(luò),一般將用戶(hù)進(jìn)程和它相應(yīng)的服務(wù)器進(jìn)程組合成單個(gè)的進(jìn)程,可降低系統(tǒng)開(kāi)銷(xiāo)。然而,當(dāng)應(yīng)用和Oracle運(yùn)行在不同的機(jī)器上時(shí),用戶(hù)進(jìn)程經(jīng)過(guò)一個(gè)分離服務(wù)器進(jìn)程與Oracle通信;后臺(tái)進(jìn)程,系統(tǒng)為了使性能最好和協(xié)調(diào)多個(gè)用戶(hù),在多進(jìn)程系統(tǒng)中使用一些附加進(jìn)程,稱(chēng)為后臺(tái)進(jìn)程。在許多操作系統(tǒng)中,后臺(tái)進(jìn)程是在實(shí)例啟動(dòng)時(shí)自動(dòng)地建立。一個(gè)Oracle實(shí)例可以有許多后臺(tái)進(jìn)程,但它們不是一直存在。 19后臺(tái)進(jìn)程作用是使性能最好和協(xié)調(diào)多個(gè)用戶(hù),在多進(jìn)程系統(tǒng)中使用一些附加進(jìn)程,稱(chēng)為后臺(tái)進(jìn)程。在許多操作系統(tǒng)中,后臺(tái)進(jìn)程是在實(shí)例啟動(dòng)時(shí)自動(dòng)地建立。一個(gè)Oracle實(shí)例可以有許多后臺(tái)進(jìn)程,但

12、它們不是一直存在。后臺(tái)進(jìn)程包括系統(tǒng)監(jiān)控進(jìn)程、進(jìn)程監(jiān)控進(jìn)程、數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程、日志寫(xiě)進(jìn)程、檢查點(diǎn)進(jìn)程、歸檔進(jìn)程、恢復(fù)進(jìn)程、快照進(jìn)程、鎖定進(jìn)程、調(diào)度進(jìn)程、服務(wù)進(jìn)程等。 203.1系統(tǒng)監(jiān)控進(jìn)程系統(tǒng)監(jiān)控進(jìn)程(SMON)在實(shí)例啟動(dòng)時(shí)執(zhí)行實(shí)例恢復(fù),同時(shí)負(fù)責(zé)清理不再使用的臨時(shí)段;系統(tǒng)監(jiān)控進(jìn)程(SMON)在具有并行服務(wù)器選項(xiàng)的環(huán)境下,對(duì)有故障CPU或?qū)嵗M(jìn)行實(shí)例恢復(fù);系統(tǒng)監(jiān)控進(jìn)程(SMON)有規(guī)律地被呼醒,檢查是否需要,或者其它進(jìn)程發(fā)現(xiàn)需要時(shí)可以被調(diào)用。 213.2進(jìn)程監(jiān)控進(jìn)程進(jìn)程監(jiān)控進(jìn)程(PMON)在用戶(hù)進(jìn)程出現(xiàn)故障時(shí)執(zhí)行進(jìn)程恢復(fù),負(fù)責(zé)清理內(nèi)存儲(chǔ)區(qū)和釋放該進(jìn)程所使用的資源。例,它要重置活動(dòng)事務(wù)表的狀態(tài),釋放封鎖

13、,將該故障的進(jìn)程的ID從活動(dòng)進(jìn)程表中移去;進(jìn)程監(jiān)控進(jìn)程(PMON)周期地檢查調(diào)度進(jìn)程(Dispatcher)和服務(wù)器進(jìn)程的狀態(tài),如果已死,則重新啟動(dòng)(不包括有意刪除的進(jìn)程);進(jìn)程監(jiān)控進(jìn)程(PMON)有規(guī)律地被呼醒,檢查是否需要,或者其它進(jìn)程發(fā)現(xiàn)需要時(shí)可以被調(diào)用。 223.3數(shù)據(jù)庫(kù)寫(xiě)入進(jìn)程數(shù)據(jù)庫(kù)寫(xiě)入進(jìn)程(DBWR)執(zhí)行將緩沖區(qū)寫(xiě)入數(shù)據(jù)文件,負(fù)責(zé)緩沖存儲(chǔ)區(qū)管理的一個(gè)后臺(tái)進(jìn)程。當(dāng)緩沖區(qū)中的一緩沖區(qū)被修改,它被標(biāo)志為“弄臟”,其主要任務(wù)是將“弄臟”的緩沖區(qū)寫(xiě)入磁盤(pán),使緩沖區(qū)保持“干凈”。由于緩沖存儲(chǔ)區(qū)的緩沖區(qū)填入數(shù)據(jù)庫(kù)或被用戶(hù)進(jìn)程弄臟,未用的緩沖區(qū)的數(shù)目減少。當(dāng)未用的緩沖區(qū)下降到很少,以致用戶(hù)進(jìn)程要從

14、磁盤(pán)讀入塊到內(nèi)存存儲(chǔ)區(qū)時(shí)無(wú)法找到未用的緩沖區(qū)時(shí),DBWR將管理緩沖存儲(chǔ)區(qū),使用戶(hù)進(jìn)程總可得到未用的緩沖區(qū)。采用LRU(Least Recently Used)算法保持內(nèi)存中的數(shù)據(jù)塊是最近使用的,從而使I/O最小。 23數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程在下列情況下將弄臟的緩沖區(qū)寫(xiě)入磁盤(pán):當(dāng)一個(gè)服務(wù)器進(jìn)程將一緩沖區(qū)移入“弄臟”表,該弄臟表達(dá)到臨界長(zhǎng)度時(shí),該服務(wù)進(jìn)程將通知DBWR進(jìn)行寫(xiě);臨界長(zhǎng)度是參數(shù) DBBLOCKWRITEBATCH值的一半;此時(shí),數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程將弄臟表中的塊寫(xiě)入磁盤(pán),每次可寫(xiě)的塊數(shù)由初始化參數(shù)DB-BLOCK-WRITE-BATCH指定。如果弄臟表中沒(méi)有該參數(shù)指定塊數(shù)的緩沖區(qū),DBWR從LUR表中查

15、找另外弄臟的緩沖區(qū)。當(dāng)一個(gè)服務(wù)器進(jìn)程在LRU表中查找DB-BLOCK-MAX-SCAN-CNT緩沖區(qū)時(shí),沒(méi)有查到未用的緩沖區(qū),它停止查找并通知數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程進(jìn)行寫(xiě);此時(shí),數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程將弄臟表中的塊寫(xiě)入磁盤(pán),每次可寫(xiě)的塊數(shù)由初始化參數(shù)DB-BLOCK-WRITE-BATCH指定。如果弄臟表中沒(méi)有該參數(shù)指定塊數(shù)的緩沖區(qū),DBWR從LUR表中查找另外弄臟的緩沖區(qū)。 24出現(xiàn)超時(shí)情況,DBWR將通知本身;數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程在三秒內(nèi)未活動(dòng),則出現(xiàn)超時(shí)情況。這種情況下數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程對(duì)LRU表查找指定數(shù)目的緩沖區(qū),將所找到任何弄臟緩沖區(qū)寫(xiě)入磁盤(pán)。每當(dāng)出現(xiàn)超時(shí),DBWR查找一個(gè)新的緩沖區(qū)組。每次由DBWR查找的緩沖區(qū)的

16、數(shù)目是參數(shù)DBBLOCKWRITEBATCH的值的二倍。如果數(shù)據(jù)庫(kù)空運(yùn)轉(zhuǎn),DBWR最終將全部緩沖區(qū)存儲(chǔ)區(qū)寫(xiě)入磁盤(pán)。出現(xiàn)檢查點(diǎn)時(shí),LGWR將通知DBWR;出現(xiàn)檢查點(diǎn)情況時(shí),LGWR指定一修改緩沖區(qū)表必須寫(xiě)入到磁盤(pán)。DBWR將指定的緩沖區(qū)寫(xiě)入磁盤(pán)。有些平臺(tái)上,一個(gè)實(shí)例可有多個(gè)數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程。在這樣的實(shí)例中,一些塊可寫(xiě)入一磁盤(pán),另一些塊可寫(xiě)入其它磁盤(pán)。參數(shù)DBWRITERS控制DBWR進(jìn)程個(gè)數(shù)。 253.4日志寫(xiě)入進(jìn)程日志寫(xiě)入進(jìn)程(LGWR)將日志緩沖區(qū)寫(xiě)入磁盤(pán)上的一個(gè)日志文件,它是負(fù)責(zé)管理日志緩沖區(qū)的一個(gè)后臺(tái)進(jìn)程。出現(xiàn)下列情況時(shí),其將日志緩沖區(qū)現(xiàn)有的全部日志項(xiàng)輸出寫(xiě)入日志文件中:當(dāng)用戶(hù)進(jìn)程提交一事務(wù)

17、時(shí),寫(xiě)入一個(gè)提交記錄;每三秒將日志緩沖區(qū)輸出;當(dāng)日志緩沖區(qū)的1/3已滿(mǎn)時(shí),將日志緩沖區(qū)輸出;當(dāng)數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程將修改緩沖區(qū)寫(xiě)入磁盤(pán)時(shí)則將日志緩沖區(qū)輸出。 26日志寫(xiě)進(jìn)程同步地寫(xiě)入到活動(dòng)的鏡象在線(xiàn)日志文件組,若組中一個(gè)文件被刪除或不可用,日志寫(xiě)進(jìn)程可繼續(xù)地寫(xiě)入該組的其它文件。日志緩沖區(qū)是一個(gè)循環(huán)緩沖區(qū),當(dāng)日志寫(xiě)進(jìn)程將日志緩沖區(qū)的日志項(xiàng)寫(xiě)入日志文件后,服務(wù)器進(jìn)程可將新的日志項(xiàng)寫(xiě)入到該日志緩沖區(qū)。LGWR 通常寫(xiě)得很快,可確保日志緩沖區(qū)總有空間可寫(xiě)入新的日志項(xiàng)。注意:有時(shí)候當(dāng)需要更多的日志緩沖區(qū)時(shí),LWGR在一個(gè)事務(wù)提交前就將日志項(xiàng)寫(xiě)出,而這些日志項(xiàng)僅當(dāng)在以后事務(wù)提交后才永久化。Oracle使用快速提交

18、機(jī)制,當(dāng)用戶(hù)發(fā)出COMMIT語(yǔ)句時(shí),一個(gè)COMMIT記錄立即放入日志緩沖區(qū),但相應(yīng)的數(shù)據(jù)緩沖區(qū)改變是被延遲,直到在更改有效時(shí)才將它們寫(xiě)入數(shù)據(jù)文件。當(dāng)一事務(wù)提交時(shí),被賦給一個(gè)系統(tǒng)修改號(hào)(SCN),它同事務(wù)日志項(xiàng)一起記錄在日志中。由于SCN記錄在日志中,以致在并行服務(wù)器選項(xiàng)配置情況下,恢復(fù)操作可以同步; 273.5檢查點(diǎn)進(jìn)程檢查點(diǎn)進(jìn)程在檢查點(diǎn)出現(xiàn)時(shí),對(duì)全部數(shù)據(jù)文件的標(biāo)題進(jìn)行修改,指示該檢查點(diǎn)。在通常的情況下,該任務(wù)由LGWR執(zhí)行。然而,如果檢查點(diǎn)明顯地降低系統(tǒng)性能時(shí),可使CKPT進(jìn)程運(yùn)行,將原來(lái)由LGWR進(jìn)程執(zhí)行的檢查點(diǎn)的工作分離出來(lái),由CKPT進(jìn)程實(shí)現(xiàn)。對(duì)于許多應(yīng)用情況,CKPT進(jìn)程是不必要的。

19、只有當(dāng)數(shù)據(jù)庫(kù)有許多數(shù)據(jù)文件,LGWR在檢查點(diǎn)時(shí)明顯地降低性能才使CKPT運(yùn)行。CKPT進(jìn)程不將塊寫(xiě)入磁盤(pán),該工作是由DBWR完成的。初始化參數(shù)CHECKPOINT-PROCESS控制CKPT進(jìn)程的使能或使不能。缺省時(shí)為FALSE,即為使不能。 28Oracle 邏輯結(jié)構(gòu)描述Oracle邏輯結(jié)構(gòu)是由一個(gè)或多個(gè)表空間組成。一個(gè)表空間由一組分類(lèi)段組成;一個(gè)段由一組分區(qū)組成;一個(gè)區(qū)由一批數(shù)據(jù)庫(kù)塊組成;一個(gè)數(shù)據(jù)庫(kù)塊對(duì)應(yīng)一個(gè)或多個(gè)物理塊; 294.1 數(shù)據(jù)庫(kù)塊數(shù)據(jù)庫(kù)塊(Database Block)是數(shù)據(jù)庫(kù)使用的I/O最小單元。數(shù)據(jù)庫(kù)塊,也稱(chēng)為邏輯塊或Oracle塊, 對(duì)應(yīng)磁盤(pán)上的一個(gè)或多個(gè)物理塊;數(shù)據(jù)庫(kù)

20、塊的大小在數(shù)據(jù)庫(kù)創(chuàng)建時(shí)由初始化參數(shù)DB_BLOCK_SIZE決定,并且在所有數(shù)據(jù)文件中都是相同的,它的大小也決定著SGA中每個(gè)數(shù)據(jù)庫(kù)緩存區(qū)的大小;Oracle數(shù)據(jù)塊無(wú)論存放基表、索引、還是聚簇?cái)?shù)據(jù),他們的格式都是相同的; 30空間使用控制通過(guò)為空間設(shè)置參數(shù),指定一定的值來(lái)控制向數(shù)據(jù)庫(kù)塊中插入、更新和刪除行時(shí),對(duì)空間的使用。塊空間利用參數(shù):PCTFREEPCTFREE,用PCTFREE參數(shù)設(shè)置保留塊的百分比,保留空間用于對(duì)已存在于塊中的行的可能的修改。PCTFREE是為在插入過(guò)程中可能的修改保留的可用塊空間的百分比。當(dāng)?shù)竭_(dá)PCTFREE限額時(shí),塊被認(rèn)為已滿(mǎn),不能再插入新的行,塊中PCTFREE限

21、額到達(dá)以后,保留在塊中的空間為對(duì)已存在于塊中的行的UPDATE命令服務(wù)。當(dāng)生成或修改索引時(shí)可以指定PCTFREE。PCTUSEDPCTUSED,通過(guò)設(shè)置PCTUSED允許一個(gè)塊被重新認(rèn)為可插入新行。只要塊在空閑隊(duì)列中就可插入新行。當(dāng)達(dá)到PCTFREE限額時(shí)塊被移出空閑隊(duì)列。 31PCTUSED是決定什么時(shí)候塊被認(rèn)為可以插入新行的限額;當(dāng)塊使用的百分比由于進(jìn)行了行刪除或減少存儲(chǔ)的更新而低于PCTUSED時(shí),塊就可以用于插入新行;INITRANSINITRANS是用于并發(fā)事務(wù)的事務(wù)入口的初始數(shù)目,它在分配塊時(shí)分配在每個(gè)塊頭中(缺省為1,最小為1,最大為255)。每個(gè)事務(wù)入口長(zhǎng)23字節(jié)(依賴(lài)于操作系

22、統(tǒng))。 MAXTRANSINITRANS是用于并發(fā)事務(wù)的事務(wù)入口的初始數(shù)目,它在分配塊時(shí)分配在每個(gè)塊頭中(缺省為1,最小為1,最大為255)。每個(gè)事務(wù)入口長(zhǎng)23字節(jié)(依賴(lài)于操作系統(tǒng))。 324.2區(qū)(Extent)描述區(qū)(Extent)是數(shù)據(jù)庫(kù)存儲(chǔ)空間分配的最小邏輯單位,一個(gè)區(qū)由一組連續(xù)數(shù)據(jù)庫(kù)塊組成,區(qū)是由段分配的,當(dāng)數(shù)據(jù)庫(kù)實(shí)體增長(zhǎng)時(shí),為它分配空間。區(qū)的分配段創(chuàng)建時(shí)(INITIAL EXTENT);段增長(zhǎng)時(shí)(NEXT EXTENT);表修改時(shí)分配區(qū); 區(qū)的回收 段被刪除或截?cái)喽未笥诶硐肭闆r并包含空閑區(qū)時(shí)(僅對(duì)回滾段) 33空間存儲(chǔ)控制為段分配區(qū),為個(gè)別的實(shí)體設(shè)置存儲(chǔ)參數(shù),或?yàn)楸砜臻g設(shè)置缺省值,

23、包含以下存儲(chǔ)參數(shù):INITIAL,分配給一個(gè)段的第一個(gè)區(qū)的字節(jié)數(shù),缺省值為5個(gè)數(shù)據(jù)塊;NEXT,為段分配的下一個(gè)增加區(qū)的字節(jié)數(shù),缺省值為5個(gè)數(shù)據(jù)塊MAXEXENTS,可以為一個(gè)段分配的區(qū)的總數(shù),最大值依賴(lài)于Oracle大小,缺省值為121;MINEXENTS,當(dāng)段生成時(shí)分配的區(qū)的總數(shù),缺省為一個(gè)區(qū);PCTINCREASE,每一個(gè)增加區(qū)在前一個(gè)分配的增加區(qū)上增長(zhǎng)的百分比,缺省為50%;OPTIMAL,為一個(gè)回滾段指定最憂(yōu)大??;FREELIST,為向表中插入數(shù)據(jù)而保留的空閑塊隊(duì)列的最少塊的數(shù)目; 34存儲(chǔ)參數(shù)優(yōu)先原則:實(shí)體參數(shù)優(yōu)先于表空間級(jí)對(duì)應(yīng)的參數(shù);當(dāng)在實(shí)體級(jí)上沒(méi)有顯示地設(shè)置存儲(chǔ)參數(shù)時(shí),缺省使用

24、表空間級(jí)參數(shù);當(dāng)在表空間級(jí)沒(méi)有顯示地設(shè)置存儲(chǔ)參數(shù)時(shí),Oracle提供系統(tǒng)缺省值;當(dāng)存儲(chǔ)參數(shù)修改后,新選項(xiàng)只適用于還沒(méi)有分配的區(qū);對(duì)表空間所有的缺省存儲(chǔ)參數(shù)都可重新設(shè)置,改變存儲(chǔ)參數(shù)而產(chǎn)生的影響:修改NEXT:下一個(gè)增加的區(qū)使用新的NEXT值,以后的區(qū)正常地按PCTINCREASE增長(zhǎng);修改PCTINCREASE: 35同時(shí)改變NEXT和PCTINCREASE:下一個(gè)區(qū)立即賦以NEXT的新值,從那點(diǎn)以后NEXT的新值由新的PCTINCREASE正常計(jì)算得出;表空間缺省值的修改只影響表空間中新建的實(shí)體; 364.3段 描述段(Segment)是表空間中一個(gè)指定類(lèi)型的邏輯存儲(chǔ)結(jié)構(gòu),它由一個(gè)或多個(gè)區(qū)組

25、成,段將占用并增長(zhǎng)存儲(chǔ)空間。Oracle中段大致分為:數(shù)據(jù)段(Data Segment),存放表或聚簇的所有數(shù)據(jù)的區(qū)的集合;索引段(Index Segment),存放所有對(duì)大的表和聚簇進(jìn)行搜索優(yōu)化的索引數(shù)據(jù)的區(qū)的集合。臨時(shí)段(Temporary Segment),存放排序操作中生成的臨時(shí)表的數(shù)據(jù)的區(qū)的集合;回滾段(Rollback Segment),存放為回滾、讀一致或恢復(fù)所用回滾數(shù)據(jù)的區(qū)的集合。 37特點(diǎn)段是可以生成的邏輯結(jié)構(gòu),將占用存儲(chǔ),也可增長(zhǎng);段不可以跨越表空間;臨時(shí)段的存儲(chǔ)參數(shù)總是使用與之相連的表空間的缺省存儲(chǔ)參數(shù)設(shè)置它們不能被顯式地設(shè)置;段的創(chuàng)建方法數(shù)據(jù)段,CREATE TABLE

26、命令;索引段,CREATE INDEX命令;臨時(shí)段,系統(tǒng)自動(dòng)建立;回滾段,CREATE ROLLBACK SEGMENT命令; 38示例CREATE TABLE ORDERS( ORDERID NUMBER(3) NOT NULL, ORDERDATE DATE, SHIPDATE DATE, CLIENT VARCHAR2(2) NOT NULL, AMOUNT_DUE NUMBER(10,2), AMOUNT_PAID NUMBER(10,2)PCTFREE 5 PCTUSED 65STORAGE( INITIAL 5 K NEXT 5 K PCTINCREASE 0 MINEXTENTS

27、 1 MAXEXTENTS 121)TABLESPACE USERS; 394.4表空間 描述表空間(TABLESPACE)是數(shù)據(jù)庫(kù)中物理編組的數(shù)據(jù)倉(cāng)庫(kù),對(duì)應(yīng)一個(gè)或多個(gè)數(shù)據(jù)文件,表空間的大小是它所對(duì)應(yīng)的數(shù)據(jù)文件大小的總和。表空間每個(gè)表空間包含一個(gè)或多個(gè)操作系統(tǒng)文件;數(shù)據(jù)庫(kù)運(yùn)行時(shí)可以將表空間置為聯(lián)機(jī);除系統(tǒng)表空間外,表空間可以置為脫機(jī)(OFFLINE)而不影響數(shù)據(jù)庫(kù)運(yùn)行;在一個(gè)表空間中創(chuàng)建的實(shí)體不能在它們?cè)瓉?lái)的表空間之外分配空間; 40表空間控制控制空間分配,指定用戶(hù)可用的空間份額;通過(guò)將表空間置為聯(lián)機(jī)或脫機(jī)來(lái)控制數(shù)據(jù)的可用性;跨設(shè)備分配數(shù)據(jù)存儲(chǔ)以提高I/O性能和降低對(duì)某個(gè)盤(pán)的I/O競(jìng)爭(zhēng) ;執(zhí)行

28、部分恢復(fù)和部分恢復(fù)操作;注釋一個(gè)表空間可以由一個(gè)或多個(gè)數(shù)據(jù)文件組成;表空間可包含多個(gè)段,段可以分散在多個(gè)文件中,只要這些文件屬于同一個(gè)表空間;數(shù)據(jù)庫(kù)至少有一個(gè)SYSTEM表空間,通常增加附加的表空間來(lái)增加對(duì)數(shù)據(jù)庫(kù)的控制和長(zhǎng)期維護(hù)的便利。本質(zhì)上,Oracle的數(shù)據(jù)庫(kù)由兩類(lèi)表空間組成,SYSTEM和非SYSTEM。其中: 41SYSTEM表空間在所有數(shù)據(jù)庫(kù)中都是必須的;包含數(shù)據(jù)字典、存儲(chǔ)過(guò)程、包和數(shù)據(jù)庫(kù)觸發(fā)器的定義;包含SYSTEM回滾段;可以包含用戶(hù)數(shù)據(jù);非SYSTEM表空間允許更靈活的數(shù)據(jù)庫(kù)管理;由回滾段、臨時(shí)段、數(shù)據(jù)段、索引段和用戶(hù)空間等組成;相關(guān)的數(shù)據(jù)字典USER/DBA_EXTENTS、

29、USER/DBA_FREE_SPACE、USER/DBA_SEGMENTS、DBA_TABLESPACE、DBA_DATA_FILES; 42邏輯與物理之間的對(duì)應(yīng)關(guān)系Oracle數(shù)據(jù)庫(kù)中的數(shù)據(jù)邏輯存儲(chǔ)在表空間中,物理存儲(chǔ)在數(shù)據(jù)文件中。 數(shù)據(jù)庫(kù) 表空間 數(shù)據(jù)文件 擁有者 模 式 段 區(qū) 43二、Oracle安裝與卸載Oracle多目錄文件結(jié)構(gòu)最佳彈性結(jié)構(gòu)(Optimal Flexible Architecture, OFA);Oracle安裝Oracle安裝中應(yīng)注意的幾個(gè)問(wèn)題;Oracle卸載如何正確卸載的Oracle。 44Oracle多目錄文件結(jié)構(gòu)OFA對(duì)Oracle文件結(jié)構(gòu)的要求OFA強(qiáng)制

30、采用一種固定的命名規(guī)范(為不同的軟件版本),區(qū)分Oracle主機(jī)和它們的執(zhí)行程序;區(qū)分不同數(shù)據(jù)庫(kù)的數(shù)據(jù)文件;區(qū)分不同數(shù)據(jù)庫(kù)管理性文件;Oracle文件結(jié)構(gòu)采用OFA益處OFA極大簡(jiǎn)化了Oracle程序的升級(jí),因?yàn)樗鼘racle主機(jī)版本區(qū)分開(kāi)來(lái);OFA極大簡(jiǎn)化了Oracle數(shù)據(jù)庫(kù)遷移,因?yàn)樗鼘⒉煌瑪?shù)據(jù)庫(kù)的文件隔離開(kāi); 45下面展示了一個(gè)裝有Oracle系統(tǒng)多目錄結(jié)構(gòu)示例:系統(tǒng)平臺(tái):Windows 2000 Professional軟件平臺(tái):Oracle Enterprise 8i, Oracle Enterprise ManagerOracle數(shù)據(jù)庫(kù)主目錄結(jié)構(gòu)通常有三個(gè)分支:一個(gè)分支為Orac

31、le系統(tǒng)軟件,通常每個(gè)軟件版本占有一個(gè)目錄;一個(gè)分支為管理文件,包含所有管理文件;一個(gè)分支為數(shù)據(jù)文件,包括數(shù)據(jù)文件、重做日志文件、控制文件、歸檔日志文件等。 46其中管理文件分支包括以下目錄:ADHOC目錄用于SQL*PLUS和操作系統(tǒng)管理腳本;BDUMP目錄用于后臺(tái)文件;CDUMP目錄用于內(nèi)核文件;CREATE目錄用于數(shù)據(jù)庫(kù)的創(chuàng)建腳本;EXP目錄用于數(shù)據(jù)庫(kù)的導(dǎo)出文件;PFILE目錄用于數(shù)據(jù)庫(kù)的INIT.ORA和CONFIG.ORA文件;UDUMP目錄用于用戶(hù)警告和跟蹤文件。 47Oracle安裝Oracle安裝目錄的確定Oracle安裝目錄通常時(shí)兩級(jí),若安裝時(shí)僅輸入一級(jí)那樣Oracle執(zhí)行程

32、序的子目錄就會(huì)安裝到與Admin同一級(jí)的目錄下;Oracle實(shí)例的全局命名通常情況下不采用全局命名,若采用全局命名必須將初始化參數(shù)Global_Name設(shè)為T(mén)rue,否則設(shè)為False;Oracle數(shù)據(jù)庫(kù)創(chuàng)建失敗創(chuàng)建失敗時(shí)可利用Database Configure Assistant單獨(dú)創(chuàng)建。D:OracleOra81主目錄軟件目錄 48Oracle卸載當(dāng)我們卸載Oracle時(shí),相關(guān)的服務(wù)并不會(huì)自動(dòng)刪除,這時(shí)當(dāng)你重新啟動(dòng)計(jì)算機(jī)時(shí)會(huì)出現(xiàn) EVENT VIEWER 錯(cuò)誤,這時(shí)你必須手動(dòng)清除注冊(cè)表中相應(yīng)信息。遵循以下步驟將會(huì)刪除相關(guān)服務(wù):在命令行中鍵入Regedit命令,打開(kāi)注冊(cè)表編輯器;導(dǎo)航到HK

33、EY_LOCAL_MACHINESYSTEMCurrentControlSetServices鍵;刪除與Oracle相關(guān)信息后,重新啟動(dòng)計(jì)算機(jī)。 49三、Oracle啟動(dòng)與關(guān)閉數(shù)據(jù)庫(kù)啟動(dòng)數(shù)據(jù)庫(kù)啟動(dòng)過(guò)程如下:數(shù)據(jù)庫(kù)關(guān)閉數(shù)據(jù)庫(kù)關(guān)閉過(guò)程如下:?jiǎn)?dòng)數(shù)據(jù)庫(kù)實(shí)例裝載數(shù)據(jù)庫(kù)打開(kāi)數(shù)據(jù)庫(kù)關(guān)閉數(shù)據(jù)庫(kù)卸載數(shù)據(jù)庫(kù)關(guān)閉數(shù)據(jù)庫(kù)實(shí)例 50Oracle數(shù)據(jù)庫(kù)啟動(dòng)數(shù)據(jù)庫(kù)啟動(dòng)在Windows操作系統(tǒng)中可以有兩種方式,一種是通過(guò)操作系統(tǒng)服務(wù)控制臺(tái)來(lái)啟動(dòng),另一種是通過(guò)命令方式來(lái)啟動(dòng)。通過(guò)服務(wù)控制臺(tái)啟動(dòng)啟動(dòng)Oracle服務(wù),可以設(shè)置成當(dāng)操作系統(tǒng)啟動(dòng)時(shí)自動(dòng)啟動(dòng);通過(guò)命令方式來(lái)啟動(dòng)可以通過(guò)Oracle提供的Svrmgrl.exe或Sqlp

34、lus啟動(dòng)數(shù)據(jù)庫(kù),利用Sqlplus要以Nolog模式運(yùn)行;利用命令分步啟動(dòng)啟動(dòng)實(shí)例 Startup NoMount;裝載數(shù)據(jù)庫(kù) Startup Mount;打開(kāi)數(shù)據(jù)庫(kù) Startup Open;利用批處理文件Startup 51Oracle數(shù)據(jù)庫(kù)關(guān)閉數(shù)據(jù)庫(kù)關(guān)閉同數(shù)據(jù)庫(kù)啟動(dòng),同樣有兩種方式,一是通過(guò)服務(wù)控制臺(tái),一是通過(guò)命令手動(dòng)關(guān)閉;關(guān)閉數(shù)據(jù)庫(kù)的方法有四種,分別描述如下:正常關(guān)閉(Normal),選用這種模式 后,便不在允許任何新用戶(hù)建立與數(shù)據(jù)庫(kù)的連接,同時(shí)耐心等待當(dāng)前用戶(hù)斷開(kāi)連接;立即關(guān)閉(Immediate),禁止新用戶(hù)創(chuàng)建數(shù)據(jù)庫(kù)會(huì)話(huà),取消所有尚未正式提交的事務(wù),清除所有活動(dòng)的事務(wù),最后斷開(kāi)

35、所有會(huì)話(huà)。事務(wù)性關(guān)閉(Transactional),與立即關(guān)閉類(lèi)似,只是在數(shù)據(jù)庫(kù)正式關(guān)閉之前,必須等待活動(dòng)的事務(wù)正常結(jié)束;退出關(guān)閉(Abort),若采用這種模式,下次啟動(dòng)時(shí),便會(huì)自動(dòng)進(jìn)行實(shí)例的恢復(fù)工作。 52四、Oracle網(wǎng)絡(luò)管理Oracle網(wǎng)絡(luò)管理上使用軟件為NET 8,簡(jiǎn)單介紹以下NET 8:Net 8的體系結(jié)構(gòu)在Oracle網(wǎng)絡(luò)的客戶(hù)機(jī)和服務(wù)器上運(yùn)行的NET 8軟件包括幾個(gè)不同的功能層,這些功能在分布式應(yīng)用程序中隱藏網(wǎng)絡(luò)通訊的復(fù)雜性。Transparent Network Substrate 簡(jiǎn)介T(mén)NS概念、連接、監(jiān)聽(tīng)程序;NET 8 的配置介紹NET 8 配置常用的工具,Net Ea

36、sy Config、Net Configuration Assistant、Net Assistant; 53NET 8的體系結(jié)構(gòu)WorkStationwithOracle ToolsNETNetwork SoftwareOracleProtocolAdapterTransparentNetworkSubstrateOracle ServerNETNetwork SoftwareOracleProtocolAdapterTransparentNetworkSubstrateNetwork Link客戶(hù)機(jī)的NET8服務(wù)器的NET8 54Oracle Protocol Adapter服務(wù)器:將與底

37、層協(xié)議有關(guān)的特定網(wǎng)絡(luò)操作轉(zhuǎn)換成與底層協(xié)議無(wú)關(guān)的特定網(wǎng)絡(luò)操作客戶(hù)斷:將與底層協(xié)議無(wú)關(guān)的特定網(wǎng)絡(luò)操作轉(zhuǎn)換成與底層協(xié)議有關(guān)的特定網(wǎng)絡(luò)操作Transparent Network Substrate服務(wù)器:將與底層協(xié)議無(wú)關(guān)的特定網(wǎng)絡(luò)操作轉(zhuǎn)換成用戶(hù)請(qǐng)求客戶(hù)斷:將用戶(hù)請(qǐng)求轉(zhuǎn)換成與底層協(xié)議無(wú)關(guān)的特定網(wǎng)絡(luò)操作Net服務(wù)器:監(jiān)聽(tīng)用戶(hù)請(qǐng)求客戶(hù)斷:接受用戶(hù)請(qǐng)求 55TNS概念Net 8的透明網(wǎng)絡(luò)基礎(chǔ)( Transparent Network Substrate)層是向Oracle客戶(hù)機(jī)提供和服務(wù)器提供所有工業(yè)標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議的通用應(yīng)用程序編程接口(API)的軟件。通過(guò)在Net 8中插入?yún)f(xié)議適配器,客戶(hù)機(jī)和服務(wù)器可使用任意

38、網(wǎng)絡(luò)協(xié)議進(jìn)行通訊。Net 8支持所有的常見(jiàn)的網(wǎng)絡(luò)協(xié)議,包括TCP/IP、IPX/SPX、DecNet、LU6.2等;TNS連接TNS連接是Oracle網(wǎng)絡(luò)中兩個(gè)結(jié)點(diǎn)之間的一種通訊路徑。TNS連接是在兩個(gè)TNS成分之間傳送數(shù)據(jù)的持久路徑,其技術(shù)實(shí)現(xiàn)上有如下特點(diǎn):連接池為了限制實(shí)際網(wǎng)絡(luò)連接的數(shù)量且更有效地利用網(wǎng)絡(luò)資源,Net 8能夠集中預(yù)定數(shù)目的TNS連接。利用連接池,空閑的數(shù)據(jù)庫(kù)會(huì)話(huà)可臨時(shí)地允許其它會(huì)話(huà)使用它對(duì)數(shù)據(jù)庫(kù)的物理TNS連接; 56多路復(fù)用為了進(jìn)一步減少必須支持許多網(wǎng)絡(luò)連接的系統(tǒng)的開(kāi)銷(xiāo),Net 8可將許多網(wǎng)絡(luò)連接多路復(fù)用成一個(gè)單一的物理網(wǎng)絡(luò)傳輸。TNS監(jiān)聽(tīng)TNS監(jiān)聽(tīng)程序?qū)NS網(wǎng)絡(luò)連

39、接是必須的,TNS監(jiān)聽(tīng)程序是一個(gè)接受發(fā)起方連接請(qǐng)求的進(jìn)程,它決定接受方網(wǎng)絡(luò)地址的給定地址,并隊(duì)接受方建立一個(gè)TNS連接。TNS尋址所有計(jì)算機(jī)網(wǎng)絡(luò)都使用一個(gè)唯一標(biāo)示網(wǎng)絡(luò)上的每臺(tái)計(jì)算機(jī)和服務(wù)的地址的尋址機(jī)制。網(wǎng)絡(luò)配置文件建立了用戶(hù)可用來(lái)標(biāo)示網(wǎng)絡(luò)上的特定服務(wù)的網(wǎng)絡(luò)名稱(chēng)。Windows NT上主文件通常放在C:WinntSytstemdriveretc文件中。 57TNS配置文件Oracle TNS網(wǎng)絡(luò)還需要描述可以在網(wǎng)絡(luò)上何處找到TNS服務(wù)的地址影射,如TNS監(jiān)聽(tīng)程序和Oracle數(shù)據(jù)庫(kù)服務(wù)器。完成TNS尋址的一種方法是創(chuàng)建和分布TNS配置文件到網(wǎng)絡(luò)中每個(gè)客戶(hù)機(jī)和服務(wù)器上。文件名描述TNSNAME.

40、ORATNSNAME.ORA配置文件既主流駐留在Oracle網(wǎng)絡(luò)的客戶(hù)機(jī)上也駐留在其服務(wù)器上。TNSNAME.ORA包含運(yùn)行在客戶(hù)機(jī)或服務(wù)器上的Net 8用來(lái)建立與網(wǎng)絡(luò)中其它Oracle服務(wù)連接的地址信息;SQLNET.ORASQLNET.ORA配置文件既主流駐留在Oracle網(wǎng)絡(luò)的客戶(hù)機(jī)上也駐留在其服務(wù)器上。SQLNET.ORA包含配置從客戶(hù)機(jī)或服務(wù)器到網(wǎng)絡(luò)中其它Oracle服務(wù)連接的特定配置參數(shù);LISTENER.ORALISTENER.ORA配置文件只駐留在運(yùn)行TNS監(jiān)聽(tīng)程序的進(jìn)程的服務(wù)器上。LISTENER.ORA配置一個(gè)或多個(gè)TNS監(jiān)聽(tīng)程序進(jìn)程。此文件描述了相應(yīng)于一個(gè)或多個(gè)監(jiān)聽(tīng)程序進(jìn)

41、程的名稱(chēng)、地址和數(shù)據(jù)庫(kù)。 58Oracle名Oracle網(wǎng)絡(luò)中許多網(wǎng)絡(luò)管理問(wèn)題可利用一個(gè)稱(chēng)為Oracle Names的可選TNS服務(wù)組件來(lái)解決。Oracle Names是一個(gè)名稱(chēng)服務(wù)軟件,Oracle客戶(hù)機(jī)/服務(wù)器系統(tǒng)可利用它來(lái)集中式管理網(wǎng)絡(luò)名和相應(yīng)的地址。不是利用配置文件而是利用客戶(hù)機(jī)與Oracle Names聯(lián)絡(luò)來(lái)決定Oracle網(wǎng)絡(luò)中的網(wǎng)絡(luò)服務(wù)地址。Oracle Names服務(wù)器以被請(qǐng)求服務(wù)的網(wǎng)絡(luò)地址的方式給予回答,然后客戶(hù)機(jī)用這個(gè)地址建立與服務(wù)的連接??稍谙嗤W(wǎng)絡(luò)中啟動(dòng)冗余的Oracle Names服務(wù)器分布加載,并防止單個(gè)失敗點(diǎn)引起網(wǎng)絡(luò)無(wú)效。而且,如果網(wǎng)絡(luò)以某種方式作了變動(dòng),只需要對(duì)

42、系統(tǒng)中的名稱(chēng)服務(wù)器進(jìn)行快速變更即可,而所有客戶(hù)機(jī)都將會(huì)自動(dòng)看到新的地址信息。 59Net 8 的配置Net Easy Congfig工具現(xiàn)場(chǎng)使用Net Configuration Assistant工具現(xiàn)場(chǎng)使用Net Assistant工具現(xiàn)場(chǎng)使用 60Oracle企業(yè)管理器的配置和應(yīng)用主要開(kāi)發(fā)工具Schema的應(yīng)用 五、Oracle企業(yè)管理器OEM61OEM的連接配置在安裝文件夾下的NET80ADMINtnsnames.ora文件,以文本形式打開(kāi)。62tnsnames.ora文件的配置可以添加如下腳本:ORACLE.world = (DESCRIPTION = (ADDRESS_LIST =

43、 (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.168.61)(PORT = 1521) ) (CONNECT_DATA = (SERVICE_NAME = ORA815) ) )63OEM Schema的登錄界面64Schema的工作界面65在Schema上開(kāi)始我們的工作先去看看Scott用戶(hù)創(chuàng)建表創(chuàng)建視圖創(chuàng)建存儲(chǔ)過(guò)程66六、Oracle實(shí)際應(yīng)用數(shù)據(jù)庫(kù)開(kāi)發(fā)的基本過(guò)程字符集的問(wèn)題講訴字符集的概念、可能出現(xiàn)的問(wèn)題及相應(yīng)的解決方法等;使用SQL語(yǔ)句的幾點(diǎn)技巧671、數(shù)據(jù)庫(kù)開(kāi)發(fā)的基本過(guò)程數(shù)據(jù)庫(kù)設(shè)計(jì) 1需求信息的收集 業(yè)務(wù)調(diào)研 :目前的需求,業(yè)務(wù)規(guī)則,當(dāng)前系統(tǒng)信息,未來(lái)的 需求 2業(yè)務(wù)模型向關(guān)系模型轉(zhuǎn)換 業(yè)務(wù)模型轉(zhuǎn)換為ER模型,即實(shí)體關(guān)系模型。用于創(chuàng)建表和視圖 3數(shù)據(jù)庫(kù)的實(shí)現(xiàn)和規(guī)范化 關(guān)于數(shù)據(jù)冗余和范式規(guī)范 3NF的要求是按實(shí)際所訂的。 關(guān)于主、外鍵的建立 有效的控制數(shù)據(jù)正確的方法 關(guān)于實(shí)體命名:表帶前綴,表名是復(fù)數(shù)的,連接符“_”。 如:ORD_EMPLYEES、ORD_PRODUCTS68字符集的問(wèn)題字符集的簡(jiǎn)介可能出現(xiàn)問(wèn)題對(duì)應(yīng)解決方法相關(guān)數(shù)據(jù)字典69字符集簡(jiǎn)介字符集是Oracle為適應(yīng)不同語(yǔ)言文字顯示而設(shè)定的。用于漢字顯示的字符集主要有ZHS16CGB231280(ZH

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論