火龍果軟件oracle數(shù)據(jù)庫(kù)集訓(xùn)之系統(tǒng)架構(gòu)_第1頁(yè)
火龍果軟件oracle數(shù)據(jù)庫(kù)集訓(xùn)之系統(tǒng)架構(gòu)_第2頁(yè)
火龍果軟件oracle數(shù)據(jù)庫(kù)集訓(xùn)之系統(tǒng)架構(gòu)_第3頁(yè)
火龍果軟件oracle數(shù)據(jù)庫(kù)集訓(xùn)之系統(tǒng)架構(gòu)_第4頁(yè)
火龍果軟件oracle數(shù)據(jù)庫(kù)集訓(xùn)之系統(tǒng)架構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

Oracle數(shù)據(jù)庫(kù)高級(jí)技術(shù)培訓(xùn)

主要內(nèi)容對(duì)象:主要系統(tǒng)設(shè)計(jì)、應(yīng)用開發(fā)和技術(shù)支持人員主要內(nèi)容:針對(duì)大型IT系統(tǒng)的設(shè)計(jì)、開發(fā)和維護(hù)工作,介紹:Oracle數(shù)據(jù)庫(kù)體系結(jié)構(gòu)Oracle參數(shù)設(shè)定DBA的責(zé)任Oracle數(shù)據(jù)庫(kù)體系結(jié)構(gòu)主要內(nèi)容概念Oracle系統(tǒng)結(jié)構(gòu)

概念什么是Oracle數(shù)據(jù)庫(kù)?通俗的講:ORACLE數(shù)據(jù)庫(kù)=實(shí)例+數(shù)據(jù)庫(kù)文件;實(shí)例=SGA+服務(wù)進(jìn)程;數(shù)據(jù)庫(kù)文件=數(shù)據(jù)文件+控制文件+日志文件;數(shù)據(jù)庫(kù)系統(tǒng)的組成

數(shù)據(jù)庫(kù)系統(tǒng)由數(shù)據(jù)庫(kù)、支持?jǐn)?shù)據(jù)庫(kù)運(yùn)行的軟硬件、數(shù)據(jù)庫(kù)管理系統(tǒng)和應(yīng)用程序等部分組成。

數(shù)據(jù)庫(kù):是一個(gè)結(jié)構(gòu)化的數(shù)據(jù)集合。主要是通過(guò)綜合各個(gè)用戶的文件,除去不必要的冗余,使之相互聯(lián)系所形成的數(shù)據(jù)結(jié)構(gòu)。

硬件與軟件:硬件是數(shù)據(jù)庫(kù)賴以存在的物理設(shè)備,軟件主要是指"數(shù)據(jù)庫(kù)管理系統(tǒng)",數(shù)據(jù)庫(kù)管理系統(tǒng)簡(jiǎn)稱DBMS(DataBaseManagementSystem),是數(shù)據(jù)庫(kù)中專門用于數(shù)據(jù)管理的軟件。

Oracle的主要結(jié)構(gòu)(實(shí)例+數(shù)據(jù)庫(kù)文件)PasswordfileInstanceSGARedoLog

BufferSharedPoolDataDictionary

CacheLibraryCacheDBWRSMONPMONCKPTLGWROthersUser

processServer

processPGAControlfilesDatafilesDatabaseDatabase

BufferCacheRedoLogfilesJavaPoolLargePoolParameterfileArchivedLogfilesOracle系統(tǒng)結(jié)構(gòu)

SGAOracleinstance由Oracle稱為SystemGlobalArea(SGA)內(nèi)存結(jié)構(gòu),Oracle后臺(tái)進(jìn)程組成。當(dāng)user訪問(wèn)database中的Data時(shí),ServerProcess與SGA進(jìn)行通訊。SGA由3個(gè)必須的組成部分和3個(gè)可選的組成部分構(gòu)成。

Oracle系統(tǒng)結(jié)構(gòu)PGApga是processglobalarea也稱programglobalarea,它是駐留在processprivatememory而不是sharedmemory。每個(gè)process都有屬于它自己的pga,其中僅包括了此process特定的信息,同時(shí)pga不需要latch來(lái)保護(hù)因?yàn)闆]有別的process來(lái)訪問(wèn)。

pga包含兩個(gè)部分:fixedpga和variblepga,固定pga包括一些變量,小的數(shù)據(jù)結(jié)構(gòu),指向variblepga的指針等。variblepga是一個(gè)heap,它也由兩個(gè)部分組成:permanentmemory,subheap(包括了uga,cga).permanentmemory包括了一些fixedtable,大小由初始化參數(shù)db_files,controlfiles等決定。

PS:排序,連接,等待Oracle參數(shù)設(shè)定主要內(nèi)容系統(tǒng)參數(shù)Oracle核心參數(shù)表參數(shù)

系統(tǒng)參數(shù)系統(tǒng)參數(shù)在/etc/system中:setshmsys:shminfo_shmmaxetshmsys:shminfo_shmmin=1setshmsys:shminfo_shmmni=300setshmsys:shminfo_shmseg=200setsemsys:seminfo_semmap=5024setsemsys:seminfo_semmni=5029setsemsys:seminfo_semmns=5048setsemsys:seminfo_semmnu=2048setsemsys:seminfo_semume=2025setsemsys:seminfo_semmsl=2163setmsgsys:msginfo_msgmni=4096setmsgsys:msginfo_msgmap=32767setmsgsys:msginfo_msgssz=320setmsgsys:msginfo_msgmax=65535setmsgsys:msginfo_msgmnb=65535setmsgsys:msginfo_msgseg=32767setmsgsys:msginfo_msgtql=10000setrlim_fd_cur=8192

Oracle核心參數(shù)Oracle核心參數(shù)db_block_size=8192open_cursors=1000db_file_multiblock_read_count=64sort_area_size=1000000000(1G)log_buffer=1000000000(約1G)shared_pool_size=5000000000(約5G)db_block_buffers=2000000(約15G)Oracle核心參數(shù)Redolog3-5M。PGA(5%原則)參數(shù)的設(shè)置合理會(huì)導(dǎo)致內(nèi)存溢出,磁盤I/O急劇增加。調(diào)整步驟:查詢PGA當(dāng)前設(shè)置:showparameterpga;查詢視圖V$PGASTAT,如果字段OVERALLOCATIONCOUNT大于0,則說(shuō)明PGA設(shè)置太小了。等于0,就說(shuō)明系統(tǒng)命中率很高。查詢視圖V$PGA_TARGET_ADVICE,找到字段ESTD_OVERALLOC_COUNT=0的那條記錄就是目前系統(tǒng)需要。查詢數(shù)據(jù)庫(kù)實(shí)例:selectinstance_namefromv$instance;修改pga大小$ORACLE_HOME/dbs/spfile<instance_name>.ora中的參數(shù)pga_aggregate_targetaltersystemsetpga_aggregate_target=1000Mscope=spfile;Oracle核心參數(shù)SGA的設(shè)置占OS內(nèi)存的60-70%,大小可由參數(shù)文件內(nèi)參數(shù)計(jì)算

sharedpool(共享池),databasebuffercache(數(shù)據(jù)緩沖區(qū)),

redologbuffer(重做日志緩沖區(qū))

SGA=db_cache_size+large_pool_size+shared_pool_size用createpfilefromspfile生成pfile后1.修改pfile里的large_pool_sizedb_cache_sizejava_pool_sizeshared_pool_sizeOracle核心參數(shù)2.shutdownimmediate3.startuppfile='pfile_name'4.createspfilefrompfile這樣就行了日后重啟他就用新的spfile來(lái)啟動(dòng)了

pfile不可以在線調(diào)整spfile是二進(jìn)制文件,數(shù)據(jù)庫(kù)在線可以讀寫pfile可以手工修改,而spfile不能手工修改Oracle核心參數(shù)CURSOR_SHARING=FORCE或SIMILAR綁定變量,oracle解析PROCESS:數(shù)據(jù)庫(kù)允許的進(jìn)程數(shù)用oracle用戶登陸,然后sqlplus/nologconnect/assysdbaaltersystemsetprocesses=1000scope=spfile

然后找時(shí)間重起數(shù)據(jù)庫(kù)。db_files:數(shù)據(jù)文件數(shù)

altersystemsetdb_files=500scope=spfile;

重啟數(shù)據(jù)庫(kù)表參數(shù)1、自由空間的控制及相關(guān)參數(shù)的說(shuō)明對(duì)于插入、更新和刪除數(shù)據(jù)庫(kù)塊中的行來(lái)說(shuō),可通過(guò)指定PCTFREE和PCTUSED空間參數(shù)的值來(lái)控制自由空間的使用,減少上面所講到的“行鏈鎖”和“遷移”:

PCTFREE:該參數(shù)用于指定在向塊中插入新行時(shí)應(yīng)該保留的自由空間的百分?jǐn)?shù),該保留空間用于修改已包含在該塊中的行時(shí)使用。比如在建表CREATETABLE語(yǔ)句中指定該參數(shù)為:PCTFREE=20,則在向該表插入新的數(shù)據(jù)行時(shí),其每個(gè)數(shù)據(jù)塊空間最多只能使用80%,一旦達(dá)到80%,就不能再向該塊插入數(shù)據(jù)行。留下的20%空間留作此后修改該塊中的行時(shí)使用。

PCTUSED:該參數(shù)是一個(gè)限定值,其目的是控制向一個(gè)低于PCTUSED所指定的值時(shí),。當(dāng)通過(guò)刪除行或更新行(減少了列的存儲(chǔ)使用量)而使數(shù)據(jù)庫(kù)塊的使用百分?jǐn)?shù)ORACLE又許可向該塊插入新的數(shù)據(jù)行。所以在建表時(shí)可以根據(jù)表的特性和將來(lái)系統(tǒng)對(duì)表所要進(jìn)行的操作對(duì)其設(shè)置一個(gè)合理的值。但兩參數(shù)之和要小于或等于100((PCTFREE+PCTUSED)<=100)。表參數(shù)2、建表時(shí)考慮對(duì)INITRANS和MAXTRANS參數(shù)的設(shè)置這兩個(gè)參數(shù)是對(duì)數(shù)據(jù)塊訪問(wèn)進(jìn)行控制,合理調(diào)整兩個(gè)參數(shù)也將盡量減少用戶訪問(wèn)時(shí)的沖突,對(duì)所有數(shù)據(jù)的訪問(wèn)最終都是對(duì)數(shù)據(jù)塊的訪問(wèn)。

INITRANS:此參數(shù)指定在對(duì)象的每一個(gè)數(shù)據(jù)塊中為指定數(shù)目的事務(wù)項(xiàng)預(yù)分配的空間,這樣當(dāng)事務(wù)進(jìn)入數(shù)據(jù)塊時(shí)系統(tǒng)就不必動(dòng)態(tài)地來(lái)為事務(wù)項(xiàng)分配空間,其默認(rèn)值為1。

MAXTRANS:此參數(shù)指定能夠并發(fā)進(jìn)入一個(gè)數(shù)據(jù)塊的最大事務(wù)數(shù)目,這也就限制了在任何特定的時(shí)間事務(wù)項(xiàng)在一個(gè)數(shù)據(jù)塊所能占用的空間大小。說(shuō)明:對(duì)于用戶數(shù)量較大的情況,就應(yīng)將這兩個(gè)參數(shù)都設(shè)得大些,對(duì)于用戶較少的情況,相應(yīng)事務(wù)數(shù)目也不會(huì)太多,可以設(shè)得小些,如果對(duì)同一塊的訪問(wèn)可能性很大,就需要將它們?cè)O(shè)得大些。

表參數(shù)freelists

假設(shè)pctfree=10,pctused=40,這就表明當(dāng)一個(gè)Block的空間使用率達(dá)到了90%(100-pctfree)時(shí),這個(gè)block就不再允許被用于新增數(shù)據(jù)(insert),而保留下來(lái)的這10%的空間則被預(yù)留為行更新(update)所可能需要的空間擴(kuò)展,我們說(shuō)此時(shí)這個(gè)block就從freelist上被摘走了,當(dāng)有數(shù)據(jù)刪除(delete)的時(shí)候,只有該block中的數(shù)據(jù)被刪除到一定的程度,該塊才會(huì)重新被加入到freelists中,而這個(gè)程度就是pctused參數(shù)定義的數(shù)值,如我們這個(gè)例子中,只有塊中的數(shù)據(jù)降低到40%以下的時(shí)候,該塊才被重新允許用于新增數(shù)據(jù)。通過(guò)上面的描述,可以知道所謂freelists,就是一個(gè)指定了所有可以用于insert操作的數(shù)據(jù)塊的列表。存在在這個(gè)列表中的數(shù)據(jù)塊才能用于insert操作,一旦一個(gè)數(shù)據(jù)塊無(wú)法用于insert(達(dá)到了pctfree參數(shù)指定的限度)則立刻從這個(gè)列表中被摘除。freelists的作用就在于管理高水位標(biāo)志(HWM)以下的空閑空間。

表參數(shù)注意:一個(gè)Process,只能使用一個(gè)freelist,所以,有10個(gè)Freelist和有一個(gè)Freelist的,對(duì)于一個(gè)進(jìn)程Insert數(shù)據(jù),使用的Block數(shù)目是一樣的。例:ALTERTABLETB_IM_DC_QUEMOVESTORAGE(FREELISTS5)initrans30pctfree10pctused40TABLESPACEDATA_JKGL_A01;

DBA的職責(zé)主要內(nèi)容IT系統(tǒng)對(duì)DBA的挑戰(zhàn)DBA的職責(zé)DBA工作的三個(gè)階段DBA每天應(yīng)做的工作DBA每周應(yīng)做的工作DBA每月應(yīng)做的工作IT系統(tǒng)對(duì)DBA的挑戰(zhàn)超大型數(shù)據(jù)庫(kù)(VLDB)的處理能力GB級(jí)->TB級(jí)對(duì)數(shù)據(jù)庫(kù)系統(tǒng)要求的全面提高高性能日常交易統(tǒng)計(jì)分析大型報(bào)表數(shù)據(jù)抽取、轉(zhuǎn)換和裝載(ETL)歷史數(shù)據(jù)遷移數(shù)據(jù)備份恢復(fù)…

IT系統(tǒng)對(duì)DBA的挑戰(zhàn)高可用性數(shù)據(jù)大集中對(duì)高可用性要求將大大提高提高防范各種意外故障的能力:系統(tǒng)故障數(shù)據(jù)故障人為故障減少正常宕機(jī)的影響系統(tǒng)維護(hù)數(shù)據(jù)庫(kù)維護(hù)容災(zāi)能力防范整個(gè)生產(chǎn)系統(tǒng)節(jié)點(diǎn)的災(zāi)難事故可移植性數(shù)據(jù)從Oracle8i到Oracle9i,10g的平滑移植數(shù)據(jù)從地市級(jí)到省級(jí)集中、全國(guó)集中的平滑移植IT系統(tǒng)對(duì)DBA的挑戰(zhàn)高可擴(kuò)展性體系結(jié)構(gòu)能適應(yīng)業(yè)務(wù)需求的不斷深化適應(yīng)業(yè)務(wù)數(shù)據(jù)的不斷增長(zhǎng)的需要避免大規(guī)模的數(shù)據(jù)庫(kù)重組應(yīng)用軟件的靈活性和適應(yīng)性安全性非法用戶的訪問(wèn)非授權(quán)的數(shù)據(jù)訪問(wèn)網(wǎng)絡(luò)監(jiān)聽數(shù)據(jù)傳輸篡改資源濫用用戶登錄復(fù)雜性用戶管理復(fù)雜性DBA的九大任務(wù)任務(wù)1:評(píng)估數(shù)據(jù)庫(kù)服務(wù)器硬件內(nèi)存,CPU磁盤,RAID磁帶,磁帶庫(kù)任務(wù)2:安裝數(shù)據(jù)庫(kù)軟件安裝數(shù)據(jù)庫(kù)服務(wù)器安裝數(shù)據(jù)庫(kù)客戶端配置TNS(OracleNet)任務(wù)3:規(guī)劃數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)物理結(jié)構(gòu)設(shè)計(jì)任務(wù)4:創(chuàng)建并啟動(dòng)數(shù)據(jù)庫(kù)DBCA或手工腳本安裝軟件時(shí)或單獨(dú)創(chuàng)建DBA的九大任務(wù)任務(wù)5:數(shù)據(jù)庫(kù)備份/恢復(fù)實(shí)施備份/恢復(fù)策略RMAN+EXP/IMP任務(wù)6:數(shù)據(jù)庫(kù)安全性管理用戶注冊(cè)權(quán)限設(shè)計(jì)角色設(shè)計(jì)任務(wù)7:性能優(yōu)化長(zhǎng)期的工作性能問(wèn)題與軟件工程所有時(shí)間周期相關(guān)不是僅僅調(diào)系統(tǒng)參數(shù)–“你調(diào)了哪些參數(shù)?”指導(dǎo)應(yīng)用開發(fā)DBA的九大任務(wù)任務(wù)8:數(shù)據(jù)庫(kù)高可用性的管理操作系統(tǒng)Cluster軟件Oracle并行服務(wù)器RAC任務(wù)9:與Oracle公司的溝通故障的定位和分析故障信息的采集與Oracle顧問(wèn)咨詢、技術(shù)支持等部門的溝通產(chǎn)品的補(bǔ)丁安裝軟件的升級(jí)DBA工作的比例創(chuàng)建和配置12%數(shù)據(jù)裝載6%日常系統(tǒng)運(yùn)行和維護(hù)55%系統(tǒng)升級(jí)6%安裝6%每天應(yīng)該做的工作數(shù)據(jù)庫(kù)實(shí)例是否正常工作$ps–ef|grepora_SQLPLUS>selectstatusfromv$instance;數(shù)據(jù)庫(kù)監(jiān)聽器是否正常工作$lsnrctlstatus是否存在故障表空間SQLPLUS>selecttablespace_name,statusfromdba_tablespaces;控制文件、日志文件是否正常V$controlfileV$log,v$logfile每天應(yīng)該做的工作每天按業(yè)務(wù)峰值情況,對(duì)數(shù)據(jù)庫(kù)性能數(shù)據(jù)進(jìn)行定時(shí)采集。每天檢查數(shù)據(jù)庫(kù)的主要性能指標(biāo)每天檢查最消耗資源的SQL語(yǔ)句變化情況每天檢查是否有足夠的資源檢查所有表空間的剩余空間情況識(shí)別出一些異常的增長(zhǎng)檢查CPU、內(nèi)存、網(wǎng)絡(luò)等是否異常每周應(yīng)該做的工作監(jiān)測(cè)數(shù)據(jù)量總體增長(zhǎng)情況按表空間分析使用率增長(zhǎng)情況表空間碎片整理SQL>altertablespace<tablespace_name>coalesce;每周監(jiān)測(cè)

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論