OCP認(rèn)證考試指南全冊O(shè)racle-Database-11g練習(xí)與知識點(diǎn)_第1頁
OCP認(rèn)證考試指南全冊O(shè)racle-Database-11g練習(xí)與知識點(diǎn)_第2頁
OCP認(rèn)證考試指南全冊O(shè)racle-Database-11g練習(xí)與知識點(diǎn)_第3頁
OCP認(rèn)證考試指南全冊O(shè)racle-Database-11g練習(xí)與知識點(diǎn)_第4頁
OCP認(rèn)證考試指南全冊O(shè)racle-Database-11g練習(xí)與知識點(diǎn)_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、OCP/OCA認(rèn)證考試指南全冊O(shè)racleDatabase11g(1Z0-051,1Z0-052,1Z0-053)練習(xí)與知識點(diǎn)Author:Deerfer20140630第一章OracleDatabase11g體系結(jié)構(gòu)概述本章學(xué)習(xí)內(nèi)容解釋內(nèi)存結(jié)構(gòu)描述進(jìn)程結(jié)構(gòu)講述存儲結(jié)構(gòu)練習(xí)1-1研究所在環(huán)境的DRMS確定自己所在的環(huán)境使用的應(yīng)用程序、應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器。然后集中精力研究數(shù)據(jù)庫,體驗(yàn)一下數(shù)據(jù)庫的規(guī)模和忙碌程度。考慮用戶數(shù)量、數(shù)據(jù)易失性以及數(shù)據(jù)量。最后考慮它們對組織的重要程度:就每個應(yīng)用程序和數(shù)據(jù)庫而言,允許多長的停機(jī)時間?允許損失多少數(shù)據(jù)?可以使用財務(wù)數(shù)字定量分析嗎?利用研究的結(jié)果,可以了

2、解DBA角色的重要性。應(yīng)用程序:MDS計量生產(chǎn)調(diào)度平臺應(yīng)用服務(wù)器:OracleWebLogicServer11g數(shù)據(jù)庫服務(wù)器:OracleDatabase11g數(shù)據(jù)庫規(guī)模:數(shù)據(jù)量大小、數(shù)據(jù)庫對象多少、用戶數(shù)、訪問并發(fā)量、數(shù)據(jù)庫節(jié)點(diǎn)格式(RAC環(huán)境)平均無故障時間MTBFMeanTimeBetweenFailure平均故障修復(fù)時間MTTRMeanTimeToRepair練習(xí)1-2確定數(shù)據(jù)庫是單實(shí)例還是分布式系統(tǒng)的一部分運(yùn)行查詢來確定數(shù)據(jù)庫是獨(dú)立系統(tǒng),還是更大的分布式環(huán)境的一部分。(1) 作為用戶SYSTEM連接到數(shù)據(jù)庫。(2) 確定實(shí)例是否為RAC數(shù)據(jù)庫的一部分:SELECT*FROMv$ins

3、tance;SELECTparallelFROMv$instance;-NO:單實(shí)例數(shù)據(jù)庫YES:RAC數(shù)據(jù)庫-(3)確定數(shù)據(jù)庫是否通過備用數(shù)據(jù)庫的保護(hù)來防止數(shù)據(jù)丟失:SELECT*FROMv$database;SELECTprotection_levelFROMv$database;-UNPROTECTED數(shù)據(jù)庫未受到保護(hù)-(4)確定是否數(shù)據(jù)庫中配置了流:SELECT*FROMdbastreamsadministrator;-如果尚未配置流,那么將不返回任何行Tips1:OracleStreamOracleStream功能是為提高數(shù)據(jù)庫的高可用性而設(shè)計的,在Oracle9i及之前的版本這個功

4、能被稱為AdvanceReplication。OracleStream利用高級隊(duì)列技術(shù),通過解析歸檔日志,將歸檔日志解析成DDL及DML語句,從而實(shí)現(xiàn)數(shù)據(jù)庫之間的同步。這種技術(shù)可以將整個數(shù)據(jù)庫、數(shù)據(jù)庫中的對象復(fù)制到另一數(shù)據(jù)庫中,通過使用Stream的技術(shù),對歸檔日志的挖掘,可以在對主系統(tǒng)沒有任何壓力的情況下,實(shí)現(xiàn)對數(shù)據(jù)庫對象級甚至整個數(shù)據(jù)庫的同步。練習(xí)1-3了解實(shí)例的內(nèi)存結(jié)構(gòu)運(yùn)行查詢來確定構(gòu)成實(shí)例的不同內(nèi)存結(jié)構(gòu)的當(dāng)前大小。(1) 作為用戶SYSTEM連接到數(shù)據(jù)庫。(2) 顯示可以動態(tài)重設(shè)大小的SGA組件的當(dāng)前、最大和最小的容量:SELECTcomponent,current_size,min_

5、size,max_sizeFROMv$sga_dynamic_components;查詢結(jié)果如下:COMPONENTCURRENT-SIZE1MIN_S1ZEMAX.SIZE1sharedpool146600640F1426063360-2largepool-41%3C4-4194o"13javapool167772151677721G-0-4streamspool-o00bDEFAULTtuffercache117440512117440S12-06KEEPbuTfercache00-7RECYCLEbuffercache0o0E8DEFAULT2Kbuffercache-0oo-

6、9DEFAULT4Kbuffercache-o,0010DEFAULT8Kbuffercache,10,Q1,0“11DEFAULT1&Ktuffe-carhe000"1|12DEFAULT32Kbuffercache00013ASMBufferCache、00o-顯示的實(shí)例不包括流,因此流池的大小為零。自從啟動實(shí)例后,大池和Java池都未發(fā)生變化,但共享池和數(shù)據(jù)庫緩沖區(qū)緩存的大小發(fā)生了變化。僅配置了數(shù)據(jù)庫緩沖區(qū)緩存的默認(rèn)池,除進(jìn)行大量調(diào)整的數(shù)據(jù)庫外,通常都是這樣的配置。(3) 確定已經(jīng)(以及當(dāng)前為)程序全局區(qū)分配了多少內(nèi)存:SELECTNAME,VALUEFROMV$PGA

7、STATWHERENAMEIN('maximumPGAallocated','totalPGAallocated');練習(xí)1-4了解在實(shí)例中運(yùn)行的進(jìn)程將運(yùn)行查詢來查看在實(shí)例中運(yùn)行的后臺進(jìn)程。(1)作為用戶SYSTEM了解到數(shù)據(jù)庫。(2)確定哪些進(jìn)程正在運(yùn)行,以及每個進(jìn)程的數(shù)量有多少:SELECTprogramFROMv$sessionORDERBYprogram;-有哪些進(jìn)程SELECTprogramFROMv$processORDERBYprogram;-每個進(jìn)程的數(shù)量這些查詢將得到相似結(jié)果:每個進(jìn)程必須有會話(即使后臺進(jìn)程,也同樣如此),而每個會話必須有進(jìn)程

8、??啥啻纬霈F(xiàn)的進(jìn)程將有個數(shù)據(jù)后綴,但支持用戶會話的進(jìn)程除外:它們都使用同一個名稱。查詢結(jié)果如下:ORACLE.EXE(CJQ0)ORACLE.EXE(CKPT)ORACLE.EXE(DBW0)ORACLE.EXE(J000)ORACLE.EXE(LGWR)ORACLE.EXE(MMAN)ORACLE.EXE(MMNL)ORACLE.EXE(MMON)ORACLE.EXE(PMON)ORACLE.EXE(PSP0)ORACLE.EXE(QMNC)ORACLE.EXE(RECO)ORACLE.EXE(SMON)ORACLE.EXE(q000)ORACLE.EXE(q001)plsqldev.exe

9、plsqldev.exeTips2:Oracle進(jìn)程簡要說明(1) CJQ:Jobqueue,oracle的JOB進(jìn)程,停止后JOB會停止運(yùn)行(2) CKPT:checkpoint,檢查點(diǎn)進(jìn)程,CKPT和LGWR這兩個進(jìn)程與DBWn進(jìn)程互相合作,提供了既安全又高效的寫臟數(shù)據(jù)塊的解決方案。(3) DBW:DBWR,databasewriter就是寫數(shù)據(jù)文件的進(jìn)程。(4) J000:ora_jxxx是系統(tǒng)job進(jìn)程,可以用select*FROMDBA_JOBS_RUNNING查詢。(5) LGWR:LogWriter,將日志緩沖區(qū)中的所有記錄項(xiàng)寫到日志文件中(6) MMAN:Memorymanag

10、er,內(nèi)存管理進(jìn)程,如果設(shè)定了SGA自動管理,MMAN用來協(xié)調(diào)SGA內(nèi)各組件的大小設(shè)置和大小調(diào)整(7) MMNL:MemoryMonitorLight,用于填充自動工作負(fù)載存儲庫(AutomaticWorkloadRepository,AWR)MMNL進(jìn)程會根據(jù)調(diào)度從SGA將統(tǒng)計結(jié)果刷新輸出至數(shù)據(jù)庫表。(8) MMON:ManageabilityMonitor,MMON從SGA定期捕獲統(tǒng)計數(shù)據(jù)(默認(rèn)是每小時一次),并將它們寫入到數(shù)據(jù)字典中,在數(shù)據(jù)字典中,可以無限期地存儲它們(不過,默認(rèn)方式是只存儲8天)。(9) PMON:ProcessMonitor,進(jìn)程監(jiān)控器,主要負(fù)責(zé)連接非正常中斷后的清除

11、工作,PMON負(fù)責(zé)釋放相應(yīng)的資源。(10) PSP0:啟動其它的Oracle進(jìn)程(10g新增加的后臺進(jìn)程)。(11) QMNC:監(jiān)視高級隊(duì)列,并警告從隊(duì)列中刪除等待消息的出隊(duì)進(jìn)程(12) RECO:DistributedDatabaseRecovery,負(fù)責(zé)在分布式數(shù)據(jù)庫環(huán)境中自動恢復(fù)那些失敗的分布式事務(wù),保證分布式事務(wù)的一致性,在分布式事務(wù)中,要么同時commit,要么同時rollback;(13) SMON:SystemMonitor,系統(tǒng)監(jiān)控進(jìn)程,負(fù)責(zé)在實(shí)例啟動時執(zhí)行實(shí)例恢復(fù),并清理不再使用的臨時段。(3)通過計算服務(wù)器進(jìn)程數(shù)量(Linux或Unix平臺上)或Oracle線程數(shù)量(Win

12、dows上),演示會話生成后啟動的服務(wù)器進(jìn)程。(a)在Linux上,從操作系統(tǒng)提示符可以運(yùn)行以下命令:ps-ef|greporacle|wc-1該語句將計算出名稱中包含“Oracle”字符串的運(yùn)行進(jìn)程的數(shù)量,將包""括所有會話服務(wù)器進(jìn)程(或許還包括其它進(jìn)程)。(b)在Windows上,啟動任務(wù)管理器。對其進(jìn)行配置,以便顯示每個進(jìn)程中的線程數(shù)量。練習(xí)1-5了解數(shù)據(jù)庫的存儲結(jié)構(gòu)在本練習(xí)中,將創(chuàng)建一個表段,然后計算出它的物理位置。(1)創(chuàng)建一個未確定表空間的表一將在默認(rèn)表空間中創(chuàng)建它,并包含一個區(qū)間:CREATETABLEtab24(c1VARCHAR2(10);(2)確定表所在

13、的表空間、區(qū)間大小、區(qū)間所在的文件編號、以及作為區(qū)間開始位置的文件塊:SELECTTABLESPACENAME,EXTENTID,BYTES,BLOCKIDFROMDBA_EXTENTSWHEREOWNER='SYS'ANDSEGMENT_NAME='TAB24'|查詢結(jié)果如下:TABLESPACENAME一,MH-''"EXIENTJDBYTESJFHEJD_JBLOCKJDJ上1SYSTEM0“6556_1(3)根據(jù)名稱確定文件:在看到提示時,替代前面查詢中的:SELECTNAMEFROMv$datafile#=&查詢結(jié)果如

14、下:.MAMElD:ORACLEPRODUCT10;.00RADATAORCLSYSTEM01DBF(4) 精確計算出區(qū)間在文件中的位置(按它在文件中的開始字節(jié)數(shù))。這要求找到表空間的塊大小。在看到提示時輸入(2)中查詢返回的block_id和tablespace_name.SELECTBLOCKSIZE*&BLOCKID/1024/1024FROMDBA_TABLESPACESWHERETABLESPACENAME='&tablespacename'查詢結(jié)果如下:|BLOC心IZE節(jié)31/1024/1。*jT47&132812S二由此可見,表存放于一個

15、64KB的區(qū)間中。此區(qū)間位于文件D:ORACLEPRODUCT1020ORADATAORCLSYSTEM01.DBF”中,從文件的大約478MB處開始。本章知識點(diǎn)回顧單實(shí)例體系結(jié)構(gòu)Oracle服務(wù)器是連接到數(shù)據(jù)庫的實(shí)例。實(shí)例包括共享存儲塊以及一組后臺進(jìn)程。數(shù)據(jù)庫是磁盤上的一組文件。用戶會話是連接到數(shù)據(jù)庫服務(wù)器進(jìn)程的用戶進(jìn)程。實(shí)例內(nèi)存結(jié)構(gòu)實(shí)例共享內(nèi)存是系統(tǒng)全局區(qū)(SGA)會話的專用區(qū)域是程序全局區(qū)(PGA)SGA由一組子結(jié)構(gòu)構(gòu)成,其中一些是必須的(數(shù)據(jù)庫緩沖區(qū)緩存、日志緩沖區(qū)和共享池),而另一些是可選的(大池、Java池和流池)。可以動態(tài)重調(diào)SGA結(jié)構(gòu)的大小,也可對其進(jìn)行自動化管理,但日志緩沖區(qū)

16、除外。實(shí)例進(jìn)程結(jié)構(gòu)當(dāng)用戶連接時,將根據(jù)需要啟動會話服務(wù)器進(jìn)程。后臺進(jìn)程在啟動實(shí)例時啟動,在關(guān)閉實(shí)例前一直存在。服務(wù)器進(jìn)程從數(shù)據(jù)庫讀取,后臺進(jìn)程對數(shù)據(jù)庫執(zhí)行寫操作。某些后臺進(jìn)行始終存在(特別是SMON、PMON、DBWn、LGWR、CKPT和MMON),而其它進(jìn)程則根據(jù)啟動的選項(xiàng)進(jìn)行。數(shù)據(jù)庫存儲結(jié)構(gòu)數(shù)據(jù)庫中有三類必須的文件:控制文件、聯(lián)機(jī)重做日志文件和數(shù)據(jù)文件??刂莆募鎯ν暾孕畔⒁约爸赶驍?shù)據(jù)庫其它部分的指針。聯(lián)機(jī)重做日志存儲應(yīng)用于數(shù)據(jù)庫的最新變更向量。數(shù)據(jù)文件存儲數(shù)據(jù)。外部文件包括:參數(shù)文件、口令文件、歸檔重做日志以及日志和跟蹤文件。表空間將邏輯數(shù)據(jù)存儲(段)從物理數(shù)據(jù)存儲(數(shù)據(jù)文件)中抽象

17、出來。表空間可有多個數(shù)據(jù)文件組成。一個段包含多個區(qū)間、一個區(qū)間包含多個Oracle塊、一個Oracle塊包含多個操作系統(tǒng)塊。一個段可以包含位于多個數(shù)據(jù)文件的區(qū)間。第二章安裝和創(chuàng)建數(shù)據(jù)庫本章學(xué)習(xí)內(nèi)容了解Oracle數(shù)據(jù)庫管理工具規(guī)劃Oracle數(shù)據(jù)庫的安裝使用OUI安裝Oracle軟件使用DBCA創(chuàng)建數(shù)據(jù)庫練習(xí)2-1在Windows計算機(jī)上安裝SQLDeveloper在本練習(xí)中,將在Windows計算機(jī)上安裝SQLDeveloper。(1)下載安裝SQLDeveloper(2)從命令行提示窗口運(yùn)行sqldeveloper.exe可執(zhí)行文件,確定完成安裝。練習(xí)2-2確認(rèn)可用的硬件資源在本練習(xí)中,將

18、先后針對Windows和Linux檢查哪些可用的資源。Windows:(1)右鍵MyComputer圖標(biāo),打開Properties對話框。查看RAM容量。RAM至少為512MB,首選容量是1GB。(2)選擇Advanced選項(xiàng)卡,此后,在Performance部分單擊Settings按鈕。(3)在PerformanceOptions對話框中,選擇Advanced選型卡。查看虛擬內(nèi)存設(shè)置。這至少應(yīng)為步驟(1)中報告的內(nèi)存量的1.5倍。(4)打開命令窗口,使用以下命令找到臨時數(shù)據(jù)目錄的位置:C:>echo%TEMP%這將返回與下面類似的位置:C:Temp確認(rèn)返回的文件系統(tǒng)(在本例中是驅(qū)動器C

19、:)至少具有400MB的可用空間。(5)確定文件系統(tǒng)具有用于Oracle主目錄和數(shù)據(jù)庫的5GB空間。這必須是本地磁盤,不能是文件服務(wù)器。如果要復(fù)雜媒介安裝程序(你很可能這樣做吧),還需要另外1.5GB(可以在文件服務(wù)器上)。Linux:(1)在操作系統(tǒng)提示符下,運(yùn)行free命令來顯示主存和交換空間(理想情況下,至少為1GB)。這些都是total列的值。(2)運(yùn)行df大,顯示每個已安裝文件系統(tǒng)的可用空間。確認(rèn)具有用于Oracle主目錄和數(shù)據(jù)庫的5GB可用空間的文件系統(tǒng)。確認(rèn)/tmp中有400MB的可用空間(如果它作為獨(dú)立文件系統(tǒng)存在)(3)使用rmp來檢查是否已經(jīng)安裝了所有需要的包(正確版本和更

20、新版本)。rpmpa|grepsysstat(4)使用sysctl來檢查是否已經(jīng)安裝了所有需要的內(nèi)核設(shè)置,要執(zhí)行此操作,必須擁有root用戶權(quán)限。sysctl-a|grepip_loca_port_range練習(xí)2-3安裝Oracle主目錄使用OUI在Linux上安裝Oracle主目錄。(1) 以dba成員組的身份登錄到Linux。在下面的練習(xí)中,用戶是db11g。使用id命令確認(rèn)用戶名和組成員,如圖所示:(2) 使用su切換到root用戶,并使用mkdir命令為OracleBase創(chuàng)建一個符合OFA的目錄。在本例中,這是/u02/app/db11g。使用chown和chmod命令。更改目錄的

21、所有權(quán)和訪問模式,使Oracle用戶對其擁有完全控制權(quán)利,然后退回到Oracle用戶。(3) 如果使用的不是控制臺計算機(jī),請將DISPLAY變量設(shè)置為指向正在使用的計算機(jī)上的(4) 練習(xí)2-4使用DBCA創(chuàng)建一個數(shù)據(jù)庫在本練習(xí)中,將創(chuàng)建數(shù)據(jù)庫監(jiān)聽器(如果還沒有的話),然后在Windows或Linux上使用DBCA創(chuàng)建名為ocp11g的數(shù)據(jù)庫。平臺組件沒有明顯差別。Tips3:Oracle幾個默認(rèn)的用戶(1) SYS用戶,擁有數(shù)據(jù)字典(2) SYSTEM,用于大多數(shù)DBA工作(3) DBSNMP,用于外部監(jiān)視(4) SYSMAN,供EnterpriseManager使用本章知識點(diǎn)回顧了解Orac

22、le數(shù)據(jù)庫管理工具安裝:OUI數(shù)據(jù)庫創(chuàng)建和升級:DBCA、DBUA發(fā)送即席SQL:SQL*Plus、SQLDeveloper備份:RMAN、OracleSecureBackup網(wǎng)絡(luò)管理:OracleNetManager、OracleNetConfigurationAssistant加載和卸載數(shù)據(jù)的實(shí)用程序:DataPump、SQL*Loader管理:OracleEnterpriseManager>DatabaseControl>GridControl規(guī)劃Oracle數(shù)據(jù)庫的安裝硬件要求磁盤空間主存?交換空間?臨時空間?圖形終端操作系統(tǒng)要求認(rèn)證的版本必須的包內(nèi)核設(shè)置OFA:適當(dāng)?shù)腛r

23、acleBase目錄使用OUI安裝Oracle軟件使用適當(dāng)?shù)牟僮飨到y(tǒng)用戶設(shè)置必須的環(huán)境變量(Linux、Unix)提供對root用戶賬戶的訪問(Linux、Unix)執(zhí)行交換式或無提示安裝使用DatabaseConfigurationAssistant創(chuàng)建數(shù)據(jù)庫可用使用DBCA或SQL*Plus命令行創(chuàng)建數(shù)據(jù)庫DBCA可以基于保存的模板創(chuàng)建數(shù)據(jù)庫DBCA和SQL*Plus命令可以刪除數(shù)據(jù)庫在創(chuàng)建數(shù)據(jù)庫之前,必須首先創(chuàng)建實(shí)例對于在創(chuàng)建時未選中的任何選項(xiàng),可以再以后予以添加第三章實(shí)例管理本章學(xué)習(xí)內(nèi)容設(shè)置數(shù)據(jù)庫初始化參數(shù)描述啟動和關(guān)閉數(shù)據(jù)庫時的多個階段使用警報日志和跟蹤文件使用數(shù)據(jù)字典和動態(tài)性能視圖

24、練習(xí)3-1查詢和設(shè)置初始化參數(shù)本練習(xí)將使用SQL*Plus或SQLDeveloper來管理初始化參數(shù)。(1) 以用戶SYS的身份(具有SYSDBA權(quán)限)連接到數(shù)據(jù)庫(必須處于打開狀態(tài))。使用操作系統(tǒng)身份驗(yàn)證或口令文件身份驗(yàn)證。(2) 顯示所有基礎(chǔ)參數(shù),檢查它們已被設(shè)置了適當(dāng)?shù)闹?,還是使用默認(rèn)值。SELECTname,value,isdefaultFROMv$parameterWHEREisbasic='TRUE'ORDERBYname;-(3)讀者應(yīng)該對具有默認(rèn)值的基本參數(shù)研究一番,看默認(rèn)值是否合適。實(shí)際上,應(yīng)該考慮所有的基本參數(shù)。(4) 將PROCESSES參數(shù)更改為200。

25、這是一個靜態(tài)參數(shù),意味著其值不能在內(nèi)存中更改并立即生效。必須在靜態(tài)pfile中設(shè)置它,或者如果使用spfile,可以通過指定“scope=spfile”然后重啟數(shù)據(jù)庫進(jìn)行設(shè)置。ALTERSYSTEMSETprocesses:200;-靜態(tài)參數(shù)執(zhí)行報錯ALTERSYSTEMSETprocesses:200scope=SPFILE;-需要重啟數(shù)據(jù)庫使其生效(5) 重新運(yùn)行步驟(3)的查詢。注意PROCESSES和SESSIONS的新值。PROCESSES限制允許連接到實(shí)例的的操作系統(tǒng)進(jìn)程數(shù)量,SESSION限制會話數(shù)量。這些數(shù)字是相關(guān)的,因?yàn)槊總€會話后需要進(jìn)程。SESSION的默認(rèn)值從PROCES

26、SES派生出來,因此,如果SESSIONS采用默認(rèn)值,那么此時將有一個新值。(6) 為會話更改NLS_LANGUAGE參數(shù)的值。選擇需要的主流語言(Oracle支持多種語言:截止到目前,支持67種語言),當(dāng)必須使用英文單詞指定語言(例如,使用German,而非Deutsch)。ALTERSESSIONSETnls_language=German;7T)通過查詢系統(tǒng)日期確認(rèn)更改已經(jīng)生效。SELECTto_char(SYSDATE,'day')FROMdual;查詢結(jié)果如下:用戶可能需要使用另一個ALTERSESSION命令,將會話語言改回以前的語言,否則在要準(zhǔn)備處理的會話正使用的

27、語言的錯誤信息。(8) 更改OPTIMIZER_MODE參數(shù),當(dāng)僅將作用域限制為運(yùn)行中的實(shí)例,不要更新參數(shù)文件。本練習(xí)啟用了被啟用的基于規(guī)則的優(yōu)化器(可用于測試一些舊代碼)ALTERSYSTEMSEToptimizer_mode=RULESCOPE=MEMORY(9) 確認(rèn)更改已經(jīng)生效,但沒有寫到參數(shù)文件中SELECTVALUEFROMV$PARAMETERWHERENAME='optimizermode'UNIONSELECTVALUEFROMV$SPPARAMETERWHERENAME='optimizermode'查詢結(jié)果如下:(10) 在運(yùn)行的實(shí)例中,將

28、OPTIMIZER_MODE恢復(fù)為標(biāo)準(zhǔn)值A(chǔ)LTERSYSTEMSEToptimizer_mode=ALL_ROWSSCOPE=MEMORY練習(xí)3-2啟動和關(guān)閉數(shù)據(jù)庫這個練習(xí)使用SQL*Plus啟動一個實(shí)例并打開一個數(shù)據(jù)庫,然后使用DatabaseControl將其關(guān)閉。如果數(shù)據(jù)庫已經(jīng)處于打開狀態(tài),則以其它順序執(zhí)行,注意,在windows系統(tǒng)中,需要確認(rèn)運(yùn)行了數(shù)據(jù)庫對應(yīng)的Windows服務(wù)。其名稱的格式為OracleServiceSID,其中的SID為實(shí)例名稱。(1) 以擁有ORACLE_HOME的操作系統(tǒng)組成員的身份登錄計算機(jī),并為ORACLE_HOME、PATH和ORACLE_SID合理設(shè)置

29、環(huán)境變量。(2) 檢查數(shù)據(jù)庫偵聽器的狀態(tài),如有必要,將其啟動。在操作系統(tǒng)命令指示窗口中輸入如下命令:lsnrctlstatuslsnrctlstart(3) 檢查DatabaseControl控制臺的狀態(tài)。如有必要,將其啟動。在操作系統(tǒng)命令提示窗口中輸入如下命令:emctlstatusdbconsoleemctlstartdbconsole(4使用/nolog開關(guān)啟動SQL*Plus,已阻止將立即出現(xiàn)的登錄提示。sqlplus/nolog(5) 使用操作系統(tǒng)身份驗(yàn)證,以SYS的身份連接數(shù)據(jù)庫。connect/assysdba(6) 只啟動實(shí)例。然后查詢V$INSTANCE視圖并檢查其STATU

30、S歹U。注意實(shí)例的狀態(tài)是啟動“STARTED”startupnomount;selectstatusfromv$instance;(7)加載數(shù)據(jù)庫并查詢實(shí)例狀態(tài)?,F(xiàn)在數(shù)據(jù)庫已被實(shí)例進(jìn)行了“加載mount”。alterdatabasemount;selectstatusfromv$instance;(8) 打開數(shù)麗alterdatabaseopen;(9) 通過查詢V$INSTANCE確認(rèn)已經(jīng)打開了數(shù)據(jù)庫。數(shù)據(jù)庫現(xiàn)在的狀態(tài)應(yīng)該為“OPEN”selectstatusfromv$instance;(10)通過瀏覽器了解到DatabaseControl控制臺。主機(jī)名和端口將顯示在步驟(3)中emctl

31、statusdbconsole命令的輸出結(jié)果中。URL將類似于lhost:port/em.端口號一般為1158.(11)以SYS身份,使用創(chuàng)建數(shù)據(jù)庫時選擇的口令登錄,并從ConnectAS下拉框中選擇SYSDBA。(12) 在數(shù)據(jù)庫主頁中單擊Shutdown按鈕。練習(xí)3-3使用警報日志在本練習(xí)中,將定位警報日志,并找到練習(xí)3-1中的參數(shù)更改條目和練習(xí)3-2中的啟動和關(guān)閉條目。(1) 使用SQL*Plus或SQLDeveloper連接至U數(shù)據(jù)庫,找至UBACKGROUND_DUMP_DEST參數(shù)的值。SELECTVALUEFROMv$parameterWHERENAME='backgro

32、und_dump_dest'告警日志存儲路徑查詢結(jié)果如下:注意,也可以在DatabaseControl中找到此值。(2) 定位到上面的目錄(3) 打開警報日志。此文件稱為alert_SID.log,其中SID是實(shí)例名。(4) 在文件結(jié)尾處,看到練習(xí)3-1中的ALTERSYSTEM命令以及啟動和關(guān)閉結(jié)果。練習(xí)3-4查詢數(shù)據(jù)字典和動態(tài)性能視圖在本練習(xí)中,通過查詢視圖來了解數(shù)據(jù)庫的物理結(jié)構(gòu)。(1) 使用SQL*Plus或SQLDeveloper連接到數(shù)據(jù)庫(2) 使用動態(tài)性能視圖來確定哪些數(shù)據(jù)文件和表空間構(gòu)成了數(shù)據(jù)庫以及數(shù)據(jù)文件的大小。SELECTNAME,D.NAME,D.BYTESFRO

33、MV$TABLESPACETJOINV$DATAFILEDONT.TS#=D.TS#ORDERBYT.NAME;查詢結(jié)果如下:(3) 從數(shù)據(jù)字典視圖中獲取同一信息。SELECTtablespacename,BYTESFROMdbadatafilesORDERBYtablespacename;查詢結(jié)果如下:(4) 確定所有controlfile副本的位置。使用兩種技術(shù):SELECT*FROMv$controlfile;查詢結(jié)果:SELECTVALUEFROMv$parameterWHERENAME='control_files'查詢結(jié)果:(5) 確定聯(lián)機(jī)重做日志文件成員的位置及大

34、小。由于大小是組的特性,并非成員的特性,需要將兩個視圖連接在一起。SELECTm.group#,m.member,g.bytes/1024/1024FROMv$loggJOINv$logfilemONm.group#=g.group#ORDERBYm.group#,m.member;查詢結(jié)果:本章知識點(diǎn)回顧描述啟動和關(guān)閉數(shù)據(jù)庫時的多個階段包括三個階段:NOMOUNT、MOUNT和OPENNOMOUNT模式需要參數(shù)文件MOUNT模式需要控制文件OPEN模式需要數(shù)據(jù)文件和聯(lián)機(jī)重做日志文件設(shè)置數(shù)據(jù)庫初始化參數(shù)不結(jié)果關(guān)閉/啟動過程,就不能更改靜態(tài)參數(shù)文件可以針對實(shí)例或會話,以動態(tài)方式更改其它參數(shù)可以在

35、動態(tài)性能視圖V$PARAMETER和V$SPPARAMETER中查看參數(shù)使用警報日志和跟蹤文件警報日志是有關(guān)關(guān)鍵操作的連續(xù)消息流跟蹤文件通常是由于在后臺進(jìn)程中遇到錯誤生成的使用數(shù)據(jù)字典和動態(tài)性能視圖動態(tài)性能視圖使用實(shí)例或控制文件的信息填充數(shù)據(jù)字典視圖使用數(shù)據(jù)字典的信息填充動態(tài)性能視圖匯聚實(shí)例整個生命周期的值,在啟動時重新初始化數(shù)據(jù)字典視圖顯示關(guān)閉和啟動期一直持久保存的信息數(shù)據(jù)字典視圖和動態(tài)性能視圖都通過同義詞來發(fā)布第四章配置Oracle網(wǎng)絡(luò)環(huán)境本章學(xué)習(xí)內(nèi)容配置和管理Oracle網(wǎng)絡(luò)使用Oracle共享服務(wù)器體系結(jié)構(gòu)練習(xí)4-1配置OracleNet在本練習(xí)中,將使用圖形化工具和命令行工具來創(chuàng)建一

36、個完整的OracleNet環(huán)境。由此,讀者可以看出在Windows和Linux系統(tǒng)中的區(qū)別。(1) 創(chuàng)建OracleNet配置文件使用的目錄,并設(shè)置指向此位置的TNS_ADMIN變量。目錄的位置無關(guān)緊要,只要Oracle用戶有權(quán)執(zhí)行創(chuàng)建、讀取和寫入即可。在Linux系統(tǒng)中:mkdir/01/oracle/net-創(chuàng)建文件路徑exportTNS_ADMIN=/u01/oracle/net-設(shè)置環(huán)境變量確保從現(xiàn)在開始,都從設(shè)置了變量的會話中執(zhí)行所有工作。在Windows系統(tǒng)中:mkdird:oraclenet創(chuàng)建注冊表項(xiàng)TNS_ADMIN,并將其設(shè)置為OracleHome分支的注冊表中的字符串變量

37、。這通常是:HKEYLOCALMACHINESOFTWAREORACLEKEYOraDb11ghome1(2) 通過從操作系統(tǒng)提示符中運(yùn)行TNSPING命令來檢查是否讀取了變量:tnspingorcl文件編輯笳令幫助出)狀態(tài)SS命令握MicrosoftUindows1版本.6.3,口"值】Cc>2flimHiri*nR-nCovpm*A17inrtt母棒所不'處,4C:s£Jsei"sxC>niPt»igffeL?tn£plnyottclrNSFingUtilityfur32bitWind”噌:Version.0一Produ

38、ctionvn02-JUL-2B1417:16:41Dupyiright<c>1997f236GrOrac1cFRIIri-gh?r?serwd.Jsedparaneterfiles:leXproductM.a,0xdb2r&tuorks(lninstfInet.eraJsedTMSNAMESadaptertoresolvethealKaaAttemptingtocontactDESCK1KU0M=CADPRESS=(PH0T9C0L=TC?><HOS1=ChuPs班ei-PCXFOFT=1521>>(CONNECTJ)ATA=CSEJtUER=DE

39、DICATEDCSERUICE_NAME=orvl>>>/尤30HJ3DQ)C:SUserssChuPersfei>搜狗折者檢入七全=(3) 啟動NetManager。在Linux系統(tǒng)中,從操作系統(tǒng)提示符中運(yùn)行netmgr。在Windows系統(tǒng)中,從"開始”菜單啟動它。NetManager窗口最上面的行將顯示OracleNet文件的位置。如果這不是新目錄,則TNS_ADMIN變量設(shè)置的不正確。陽OracleNetManager-D:oracleproduct10*2,0db_2NETWOR,.一歡通使用OracleNatManagedOracleN的蟠仃組“用

40、于避行以下網(wǎng)絡(luò)配置;畬名-可以定義筒單名稱來標(biāo)識暇務(wù)的位置例如一個數(shù)據(jù)庠*這些簡單名牌射關(guān)遙接描逑符它T但含朋莠的網(wǎng)籍位置和標(biāo)識Q禽包方法-可以普隆將葡單包新箴析為連接描翊的不防(4) 創(chuàng)建新偵聽器:展開導(dǎo)航樹的Local分支,突出顯示Listeners項(xiàng),然后點(diǎn)擊"+”圖標(biāo)。(5) 輸入偵聽器名“NEWLIST”,然后單擊OK按鈕。(6) 單擊AddAddress按鈕。對于Addressl,選擇“TCP/IP”作為協(xié)議,并輸入“”作為主機(jī),“1521”作為端口。(8) 創(chuàng)建新服務(wù)名:突出顯示導(dǎo)航樹的ServiceNaming項(xiàng),然后單擊"+”圖標(biāo)。(9)

41、 輸入“NEW作為新服務(wù)名,然后單擊Next按鈕。(10)選擇"TCP/IP作為協(xié)議。然后單擊Next按鈕。(11)輸入“作為主機(jī)名,“1521作為端口,然后單擊Next按鈕(12)輸入“SERV1”作為服務(wù)名,然后單擊Next按鈕(13)單擊Finish按鈕。如果嘗試進(jìn)行嘗試,將顯示失敗(14)通過單擊NetworkConfiguration菜單項(xiàng)保存配置。這將在TNS_ADMIN目錄中創(chuàng)建linstener.ora文件盒tnsname.ora文件。(15)使用編輯器檢查這兩個文件。LISTENER.ORA文件如下:# listener.oraNetworkCon

42、figurationFile:D:oracleproduct1020db_2NETWORKADMINlistener.ora# GeneratedbyOracleconfigurationtools.LISTENER=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ChuPengfei-PC)(PORT=1521)TNSNAMES.ora文件如下:ORCL=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ChuPengfei-PC)(PORT=1521)(CONNECT_DATA=(SERVER=DEDICATED)(SE

43、RVICE_NAME=orcl)(16)從操作系統(tǒng)提示符中使用lsnrctlstartlistener啟動監(jiān)聽器。(17)在操作系統(tǒng)提示符中使用tnspingorcl嘗試連接字符串。(18)使用sqlplus/assysdba,經(jīng)操作系統(tǒng)省份驗(yàn)證連接到數(shù)據(jù)庫,忽略任何監(jiān)聽器。(19)為正在運(yùn)行的實(shí)例設(shè)置service_names參數(shù)和local_listener參數(shù)(僅限于內(nèi)存,不在參數(shù)文件中設(shè)置),并向新偵聽器注冊新服務(wù)名:ALTERSYSTEMSETservicenames=sercvlSCOPE=MEMORYALTERSYSTEMSETlocal_listener=NEWSCOPE=ME

44、MORYALTERSYSTEMREGISTER;(20)在操作系統(tǒng)提示符下,使用lsnrctlservicesnewlist,確認(rèn)已向新偵聽器注冊了新服務(wù)。(21)通過使用以下代碼登錄,確認(rèn)新網(wǎng)絡(luò)環(huán)境已生效:sqlplussystem/oraclenew練習(xí)4-2設(shè)置共享的服務(wù)器環(huán)境本練習(xí)是【練習(xí)4-1】中步驟(21)的延續(xù),用戶需要配置共享服務(wù)器。并證實(shí)其可以運(yùn)行。(1)設(shè)置dispatchers參數(shù)和share_servers參數(shù),并注冊到偵聽器,命令如下:ALTERSYSTEMSETdispatchers='(protocol=tcp)(dispatchers=2)'SC

45、OPE=MEMORYALTERSYSTEMSETsharedservers=4SCOPE=MEMORYALTERSYSTEMREGISTER;通過查詢視圖V$PROCESS,確認(rèn)調(diào)度程序和共享服務(wù)器已經(jīng)啟動、查找名為S000、S001、S003、D000、D001的進(jìn)程SELECTprogramFROMv$processORDERBYprogram;15ORACLE.EXE(S000)16ORAGLE.EXE(8001)17ORAGLE.EXE(S002)卜181920 2? 無23ORACLEEXE($003)二ORACLEEHADjr7ORACLE.EXE(SHAD)ORACLEEXE(S

46、HAD)ORAGLE.EXE(SMON)ORACLEEXE(000)24ORAGLE.EXE(q001)25PSEUDO(3) 在操作系統(tǒng)提示窗口,確認(rèn)調(diào)度程序已經(jīng)注冊到偵聽器。lsnrctlserviceslistenerC:MJsersCJiuPen<jfei>lsnrct1serviceslistenerLSHRGTLfor32fitUindous:Uei*sion.0-Producticnon02-JUL-2014:49Ccppyuigh七<c>1991,2。目6“Oi'acle.Allrightsi?eseu*uecl.Connecti

47、ngto(DESCHIPTION=(ADDBESS=<PROTOCOL=TCF><HO£T=CliuPengfei-FC>CFOB>>>Services.Sellitelias1in£tance<s>.InsteincestatusREADY,lias3han也里©觸之fopthisseruice,_Handler::,TD000'Pestablished:0refused-0current=0nax-1002s-tate;reDISPATCHER<macli±ne:CHUPENGFEI

48、-FG,pid:11364CAPDRESS=<PROTQGOL=tp?<HQST=ChuFengfeWG><POBT=5785?)?'"DEDICATED'-establisbed:3refused:0state:readi/LOCALSEBUER"DD01'"esta;bli.sied:0i'efused:0current:0max:10(42-read9DISPATCHER<machine:CHUPENGPEI-PC,pid:13664>CfiDDRESS=<PBQTGCOL=tcp&g

49、t;HOST=ChuPenfei-FCXPQFT=5284>>Service"orcL_HPT1*has1instnce<>,Instnce'*orcl11,statusREADVlias3handler<s>forthisservice搜狗拼音輸入法全=(4) 通過偵聽器進(jìn)行了解,并確認(rèn)通過共享服務(wù)器機(jī)制執(zhí)行了連接。SELECT,FROMv$dispatcherd,v$shared_servers,v$circuitcWHEREd.paddr=c.dispatcherANDs.paddr=c.server;75)還

50、原到最初的配置以清理環(huán)境。ALTERSYSTEMSETlocallistener=''SCOPE=MEMORYALTERSYSTEMSETservice_names=''SCOPE=MEMORYALTERSYSTEMSETdispatchers:''SCOPE=MEMORYALTERSYSTEMSETshared_servers=0SCOPE=MEMORYALTERSYSTEMREGISTER;76)在操作系統(tǒng)提示窗口,使用命令停止偵聽器Isnrctlstoplistener(7)取消設(shè)置TNS_ADMIN變量。在linux系統(tǒng)中,采用expor

51、tTNS_ADMIN='在Windows系統(tǒng)中,刪除TNS_ADMIN注冊表項(xiàng)。本章知識點(diǎn)回顧配置和管理Oracle網(wǎng)絡(luò)服務(wù)器段文件是listener.ora和sqlnet.ora(可選)客戶端文件是tnsnames.ora和sqlnet.ora(可選)OracleNet文件位于ORACLE_HOME/network/admin,或位于TNS_ADMIN變量指向的目錄。名稱解析可以本地執(zhí)行(使用tnsnames.ora文件),也可以在中心位置執(zhí)行(使用LDAP目錄)EasyConnect不需要任何名稱解析一個偵聽器可以偵聽多個數(shù)據(jù)庫多個偵聽器可以連接一個數(shù)據(jù)庫可以使用靜態(tài)(通過在lis

52、tener.ora文件詳細(xì)編寫代碼)或動態(tài)(由PMON進(jìn)程更新偵聽器)方法,向偵聽器注冊實(shí)例每個用戶進(jìn)程都存在到專用服務(wù)器進(jìn)程的持久連接使用Oracle共享服務(wù)器體系結(jié)構(gòu)用戶進(jìn)程連接到調(diào)度程序,這些連接是持久的所有調(diào)度程序在一個公共隊(duì)列上放入請求共享服務(wù)器進(jìn)程從公共隊(duì)列中取走請求每個調(diào)度程序都有自己的響應(yīng)隊(duì)列共享服務(wù)器進(jìn)程將結(jié)果放在適當(dāng)調(diào)度程序的響應(yīng)隊(duì)列上調(diào)度程序取出結(jié)果,將結(jié)果返回給適當(dāng)?shù)挠脩暨M(jìn)程共享服務(wù)器至少配置兩個實(shí)例參數(shù):dispatchers和shared_serverS第五章Oracle存儲結(jié)構(gòu)本章學(xué)習(xí)內(nèi)容了解表空間和數(shù)據(jù)文件創(chuàng)建和管理表空間管理表空間中的空間練習(xí)5-1了解數(shù)據(jù)庫的

53、數(shù)據(jù)存儲結(jié)構(gòu)在本練習(xí)中,將運(yùn)行查詢來了解數(shù)據(jù)庫的物理結(jié)構(gòu)??梢詮腟QL*Plus或DatabaseControl,交互方式運(yùn)行這些命令。但最好將它們保存為一個腳本(針對顯示格式做適當(dāng)?shù)耐晟?,并?zhí)行特定站點(diǎn)的自定義),可針對任何數(shù)據(jù)庫運(yùn)行此腳本,這將作為普通空間使用報告的一部分。(1) 以用戶SYSTEM的身份連接到數(shù)據(jù)庫(2) 確定控制文件的名稱和大?。篠ELECTNAME,block_size*bytesFROMv$controlfile;11m11-J4i-=.NAME1BYTESD:ORACLEPRODUCT.10,2DpRADATAORCLCONTROLQ1CTL7045120D:OR

54、ACLEPRODUCT10.2.0<ORADATAORCLCONfRbL(>2.CTL;7D45120DAORACLEPRODUCT10.2.('-aRADATAORCLCONTROL(3,CTL-7045120(3) 確定聯(lián)機(jī)重做日志文件成員的名稱和大?。篠ELECTMEMBERbytesFROMv$logJOINv$log(group#);MEMBER,BYTES-"N1Dtf)RACLEPR0DUCT1(lL2(V>RADATA0RCLREDO031CM;“:&242B8(»-IfAORACLBPRODUCTVW-ZORADATARC

55、UREDOKLdG752428850D;ORACLLPRODUCT12,0ORADATAORCLRED001.LOG52428800(4) 確定數(shù)據(jù)文件和臨時文件的名稱和大小:SELECT'v$datafile',NAME,BYTESFROMV$DATAFILEUNIONALLSELECT'v$tempfile',NAME,BYTESFROMV$TEMPFILE;'VSDATAFILE'JNAMEBYTESJ1vSdatafileD:OFtACLEPRODUCT102,0ORADATAORCLSY3TEM01,DBF-5138022402vSds

56、tafileD-ORACLEPRODUCT10,2.0ORADATAORCLJMDOTBS01,DBF-734003203vSdatafileD1ORACLEPRODUCT10.ZOORADATAORCLSYSAUX01,DBF233115520""4v$datafileD:ORACLEPRODUCT10,2.0ORADATAORCLUSERSD1.DBF5242S&05v&datafrleD:OFtACLEPRODUCT102,QORADATAORCLEXAMPLEQ1DBF-1MS576OO6vSdatafileDAORACLERODUCTVIO.ZQRADATARCMPAC.DSF10737418247|v5tempfileDiORACLEPRODUCT10

溫馨提示

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

評論

0/150

提交評論