版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
一.SQLtuning類
1:列舉幾種表連接方式
hashjoin/mergejoin/nestloop(clusterjoin)/indexjoin
2:不借助第三方工具,如何查看sql的執(zhí)行計劃
setautoton
explainplansetstatementjd=&item_idfor&sql;
select*fromtable(dbms_xplan.display);
或者:
SQL>EXPLAINPLANFORSELECT*FROMEMP;
SQL>SELECTplan_table_outputFROMTABLE(DBMS_XPLAN.DISPLAY('PLAN_TABLE'));
3:如何使用CBO,CBO與RULE的區(qū)別
RuleBasedOptimizer(RBO):基于規(guī)則
CostBasedOptimizer(CBO):基于成本,或者講記錄信息。
在optimizer_mode=choose時,假如表有記錄信息(分區(qū)表外),優(yōu)化器將選擇CBO,否則選
RBOoRBO遵循簡樸的分級方法學(xué),使用15種級別要點,當(dāng)接受到查詢,優(yōu)化器將評估使用
到的要點數(shù)目,然后選擇最佳級別(最少的數(shù)量)的執(zhí)行途徑來運營查詢。
CBO嘗試找到最低成本的訪問數(shù)據(jù)的方法,為了最大的吞吐量或最快的初始響應(yīng)時間,計
算使用不同的執(zhí)行計劃的成本,并選擇成本最低的一個,關(guān)于表的數(shù)據(jù)內(nèi)容的記錄被用于擬
定執(zhí)行計劃。
4:如何定位重要(消耗資源多)的SQL
selectsql__textfromv$sqlwheredisk__reads>1000or(executions>0and
buffer_gets/executions>30000);
5:如何跟蹤某個session的SQL
execdbms_system.set_sql_trace_in__session(sid,serial#/&sql_trace);
selectsid,serial#fromv$sessionwheresid=(selectsidfromv$mystatwhererownum=
1);
execdbms_system.set_ev(&sidz&serial#/&event_10046,&level_12/');
6:SQL調(diào)整最關(guān)注的是什么
查看該SQL的responsetime(dbblockgets/consistentgets/physicalreads/sorts(disk))
7:說說你對索引的結(jié)識(索引的結(jié)構(gòu)、對dml影響、為什么提高查詢性能)
b-treeindex/bitmapindex/functionindex/patitionalindex(local/global)索引通常能提高
select/update/delete的性能,會減少insert的速度
8:使用索引查詢一定能提高查詢的性能嗎?為什么
索引就是為了提高查詢性能而存在的,假如在查詢中索引沒有提高性能,只能說是用
錯了索引,或者講是場合不同
9:綁定變量是什么?綁定變量有什么優(yōu)缺陷?
綁定變量是相對文本變量來講的,所謂文本變量是指在SQL直接書寫查詢條件,這樣的
SQL在不同條件下需要反復(fù)解析,綁定變量是指使用變量來代替直接書寫條件,查詢bind
value在運營時傳遞,然后綁定執(zhí)行。優(yōu)點是減少硬解析,減少CPU的爭用,節(jié)省shared_pool;
缺陷是不能使用histogram,sql優(yōu)化比較困難
10:如何穩(wěn)定(固定)執(zhí)行計劃
query_rewrite_enabled=true
star_transformation__enabled=true
optimizer_features_enable=9.2.0
創(chuàng)建并使用storedoutline
11:和排序相關(guān)的內(nèi)存在8i和9i分別如何調(diào)整,臨時表空
間的作用是什么
8i中sort_area_size/sort_area_retained_size決定了排序所需要的內(nèi)存.假如排序操作
不能在sort_area_size中完畢,就會用到temp表空間
9i中假如workarea_size_policy=auto時,排序在pga內(nèi)進(jìn)行,通常pga_aggregate_target
的1/20可以用來進(jìn)行disksort;假如workarea_size_policy=manual時,排序需要的內(nèi)存由
sort_area__size決定.在執(zhí)行orderby/groupby/distinct/union/createindex/indexrebuild/minus
等操作時,假如在pga或sort_area_size中不能完畢,排序?qū)⒃谂R時表空間進(jìn)行(disksort),
臨時表空間重要作用就是完畢系統(tǒng)中的disksort.
12:存在表T(a,b,c,d),要根據(jù)字段c排序后取第21—30條
記錄顯示,請給出sql
createtablet(anumber(),bnumber。,cnumber。,dnumber());
/
begin
foriin1..300loop
insertintotvalues(mod(i/2)J/2/dbms_random.value(l/300)JA);
endloop;
end;
select*from(selectc.*,rownumasrnfrom(select*fromtorderbycdesc)c)wherern
between21and30;
/
select*from(select*fromtestorderbycdesc)xwhererownum<30
minus
select*from(select*fromtestorderbycdesc)ywhererownum<20orderby3desc
相比之minus性能較差
二.數(shù)據(jù)庫基本概念類
l:pctusedandpctfree表達(dá)什么含義有什么作用
pctused與pctfree控制數(shù)據(jù)塊是否出現(xiàn)在freelist中,pctfree控制數(shù)據(jù)塊中保存用于
update的空間,當(dāng)數(shù)據(jù)塊中的freespace小于pctfree設(shè)立的空間時,該數(shù)據(jù)塊從freelist中去掉,
當(dāng)塊由于dml操作freespace大于pct_used設(shè)立的空間時,該數(shù)據(jù)庫塊將添加在freelist鏈表
中。
2:簡樸描述table/segment/extent/block之間的關(guān)系
table創(chuàng)建時,默認(rèn)創(chuàng)建了一個datasegment,每個datasegment具有minextents指定的
extents數(shù),每個extent據(jù)據(jù)表空間的存儲參數(shù)分派一定數(shù)量的blocks
3:描述tablespace和datafile之間的關(guān)系
一個tablespace可以有一個或多個datafile,每個datafile只能在一個tablespace內(nèi),table
中的數(shù)據(jù),通過hash算法分布在tablespace中的各個datafile中,tablespace是邏輯上的概
念,datable則在物理上儲存了數(shù)據(jù)庫的種種對象。
4:本地管理表空間和字典管理表空間的特點,ASSM有什
么特點
本地管理表空間(LocallyManagedTablespace簡稱LMT):8i以后出現(xiàn)的一種新的表空間的
管理模式,通過位圖來管理表空間的空間使用。
字典管理表空間(Dictionary-ManagedTablespace簡稱DMT)⑻以前涉及以后都還可以使
用的一種表空間管理模式,通過數(shù)據(jù)字典管理表空間的空間使用。
動段空間管理(ASSM):它初次出現(xiàn)在Oracle920里有了ASSM,鏈接列表freelist被位圖所
取代,它是一個二進(jìn)制的數(shù)組,可以迅速有效地管理存儲擴(kuò)展和剩余區(qū)塊(freeblock),因此
可以改善分段存儲本質(zhì),ASSM表空間上創(chuàng)建的段尚有此外一個稱呼喊Bitm叩Managed
Segments(BMB段)。
5:回滾段的作用是什么
事務(wù)回滾:當(dāng)事務(wù)修改表中數(shù)據(jù)的時候,該數(shù)據(jù)修改前的值(即前影像)會存放在回滾段
中,當(dāng)用戶回滾事務(wù)(ROLLBACK)時,ORACLE將會運用回滾段中的數(shù)據(jù)前影像來將修改的數(shù)
據(jù)恢復(fù)到本來的值。
事務(wù)恢復(fù):當(dāng)事務(wù)正在解決的時候,例程失敗,回滾段的信息保存在undo表空間中,
ORACLE將在下次打開數(shù)據(jù)庫時運用回滾來恢復(fù)未提交的數(shù)據(jù)。
讀一致性:當(dāng)一個會話正在修改數(shù)據(jù)時,其他的會話將看不到該會話未提交的修改。當(dāng)
一個語句正在執(zhí)行時,該語句將看不到從該語句開始執(zhí)行后的未提交的修改(語句級讀一致
性).當(dāng)ORACLE執(zhí)行SELECT語句時,ORACLE依照當(dāng)前的系統(tǒng)改變號(SYSTEMCHANGE
NUMBER-SCN)來保證任何前于當(dāng)前SCN的未提交的改變不被該語句解決??梢韵胂螅寒?dāng)一
個長時間的查詢正在執(zhí)行時,若其他會話改變了該查詢要查詢的某個數(shù)據(jù)塊,ORACLE將運
用回滾段的數(shù)據(jù)前影像來構(gòu)造一個讀一致性視圖。
6:日記的作用是什么
記錄數(shù)據(jù)庫事務(wù):最大限度地保證數(shù)據(jù)的一致性與安全性
重做日記文獻(xiàn):含對數(shù)據(jù)庫所做的更改記錄,這樣萬一出現(xiàn)故障可以啟用數(shù)據(jù)恢復(fù),一
個數(shù)據(jù)庫至少需要兩個重做日記文獻(xiàn)
歸檔日記文獻(xiàn):是重做日記文獻(xiàn)的脫機(jī)副本,這些副本也許對于從介質(zhì)失敗中進(jìn)行恢復(fù)
很必要。
7:SGA重要有那些部分,重要作用是什么
SGA:db_cache/shared_pool/large_pool/java_pool
db_cache:數(shù)據(jù)庫緩存(BlockBuffer)對于Oracle數(shù)據(jù)庫的運轉(zhuǎn)和性能起著非常關(guān)鍵的作
用,它占據(jù)Oracle數(shù)據(jù)庫SGA(系統(tǒng)共享內(nèi)存區(qū))的重要部分。Oracle數(shù)據(jù)庫通過使用LRU算
法,將最近訪問的數(shù)據(jù)塊存放到緩存中,從而優(yōu)化對磁盤數(shù)據(jù)的訪問.
shared_pool:共享池的大小對于Oracle性能來說都是很重要的。共享池中保存數(shù)據(jù)字典
高速緩沖和完全解析或編譯的的PL/SQL塊和SQL語句及控制結(jié)構(gòu)
large_pool:使用MTS配置時,由于要在SGA中分派UGA來保持用戶的會話,就是用
Large_pool來保持這個會話內(nèi)存使用RMAN做備份的時候,要使用Large_pool這個內(nèi)存結(jié)構(gòu)
來做磁盤I/O緩存器
java_pool:為javaprocedure預(yù)備的內(nèi)存區(qū)域,假如沒有使用javaproc,java_pool不是必須
的
8.Oracle系統(tǒng)進(jìn)程重要有哪些,作用是什么
數(shù)據(jù)寫進(jìn)程(dbwr):負(fù)責(zé)將更改的數(shù)據(jù)從數(shù)據(jù)庫緩沖區(qū)高速緩存寫入數(shù)據(jù)文獻(xiàn)
日記寫進(jìn)程(Igwr):將重做日記緩沖區(qū)中的更改寫入在線重做日記文獻(xiàn)
系統(tǒng)監(jiān)控(smon):檢查數(shù)據(jù)庫的一致性如有必要還會在數(shù)據(jù)庫打開時啟動數(shù)據(jù)庫的恢
復(fù)
進(jìn)程監(jiān)控(pmon):負(fù)責(zé)在一個Oracle進(jìn)程失敗時清理資源
檢查點進(jìn)程(chpt):負(fù)責(zé)在每當(dāng)緩沖區(qū)高速緩存中的更改永久地記錄在數(shù)據(jù)庫中時,更新
控制文獻(xiàn)和數(shù)據(jù)文獻(xiàn)中的數(shù)據(jù)庫狀態(tài)信息。
歸檔進(jìn)程(arcn):在每次日記切換時把已滿的日記組進(jìn)行備份或歸檔
作業(yè)調(diào)度器(cjq):負(fù)責(zé)將調(diào)度與執(zhí)行系統(tǒng)中已定義好的job,完畢一些預(yù)定義的工作.
恢復(fù)進(jìn)程(reco):保證分布式事務(wù)的一致性,在分布式事務(wù)中,要么同時commit,要么同時
rollback;
三.備份恢復(fù)類
1:備份如何分類
邏輯備份:exp/imp
物理備份:
1).RMAN備份:fullbackup/incrementalbackup(累積/差異)
2).熱備份:altertablespacebegin/endbackup;
3).冷備份:脫機(jī)備份(databaseshutdown)
2:歸檔是什么含義
關(guān)于歸檔日記:Oracle要將填滿的在線日記文獻(xiàn)組歸檔時,則要建立歸檔日記(archived
redolog)?
其對數(shù)據(jù)庫備份和恢復(fù)有下列用處:數(shù)據(jù)庫后備以及在線和歸檔日記文獻(xiàn),在操作系統(tǒng)
和磁盤故障中可保證所有提交的事物可被恢復(fù)。在數(shù)據(jù)庫打開和正常系統(tǒng)使用下,假如歸檔
日記是永久保存,在線后備可以進(jìn)行和使用。
數(shù)據(jù)庫可運營在兩種不同方式下:NOARCHIVELOG方式或ARCHIVELOG方式.數(shù)據(jù)庫在
NOARCHIVELOG方式下使用時,不能進(jìn)行在線日記的歸檔,假如數(shù)據(jù)庫在ARCHIVELOG方式下
運營,可實行在線日記的歸檔。
3:假如一個表在2023-08-0410:30:00被drop,在有完善
的歸檔和備份的情況下,如何恢復(fù)?
手工拷貝回所有備份的數(shù)據(jù)文獻(xiàn)
startupmount;
sqlalterdatabaserecoverautomaticuntiltime'2023-08-04:10:30:00,;
alterdatabaseopenresetlogs;
4:rman是什么,有何特點?
RMAN(RecoveryManager)是DBA的一個重要工具,用于備份、還原和恢復(fù)oracle數(shù)據(jù)
庫,RMAN可以用來備份和恢復(fù)數(shù)據(jù)庫文獻(xiàn)、歸檔日記、控制文獻(xiàn)、系統(tǒng)參數(shù)文獻(xiàn),也可以用
來執(zhí)行完全或不完全的數(shù)據(jù)庫恢復(fù)。
RMAN有三種不同的用戶接口:COMMANDUNE方式、GUI方式(集成在OEM中的備份
管理器)、API方式(用于集成到第三方的備份軟件中)。
具有如下特點:
1)功能類似物理備份,但比物理備份強(qiáng)大N倍;
2)可以壓縮空塊;
3)可以在塊水平上實現(xiàn)增量;
4)可以把備份的輸出打包成備份集,也可以按固定大小分割備份集;
5)備份與恢復(fù)的過程可以自動管理;
6)可以使用腳本(存在Recoverycatalog中)
7)可以做壞塊監(jiān)測
5:standby的特點
備用數(shù)據(jù)庫(standbydatabase):ORACLE推出的一種高可用性(HIGHAVAILABLE)數(shù)據(jù)庫方
案,在主節(jié)點與備用節(jié)點間通過日記同步來保證數(shù)據(jù)的同步,備用節(jié)點作為主節(jié)點的備份.
可以實現(xiàn)快速切換與劫難性恢復(fù),從920開始,還開始支持物理與邏輯備用服務(wù)器。
9i中的三種數(shù)據(jù)保護(hù)模式分別是:
1)、MAXIMIZEPROTECTION:最大數(shù)據(jù)保護(hù)與無數(shù)據(jù)分歧,LGWR將同時傳送到備用節(jié)
點,在主節(jié)點事務(wù)確認(rèn)之前,備用節(jié)點也必須完全收到日記數(shù)據(jù)。假如網(wǎng)絡(luò)不好,引起LGWR
不能傳送數(shù)據(jù),將引起嚴(yán)重的性能問題,導(dǎo)致主節(jié)點DOWN機(jī)。
2)、MAXIMIZEAVAILABILITY:無數(shù)據(jù)丟失模式,允許數(shù)據(jù)分歧,允許異步傳送。正常
情況下運營在最大保護(hù)模式,在主節(jié)點與備用節(jié)點的網(wǎng)絡(luò)斷開或連接不正常時,自動切換到
最大性能模式,主節(jié)點的操作還是可以繼續(xù)的。在網(wǎng)絡(luò)不好的情況下有較大的性能影響。
3)、MAXIMIZEPERFORMANCE:這種模式應(yīng)當(dāng)可以說是從8i繼承過來的備用服務(wù)器模式,
異步傳送,無數(shù)據(jù)同步檢查,也許丟失數(shù)據(jù),但是能獲得主節(jié)點的最大性能。9i在配置DATA
GUARD的時候默認(rèn)就是MAXIMIZEPERFORMANCE
6:對于一個規(guī)定恢復(fù)時間比較短的系統(tǒng)(數(shù)據(jù)庫50G,天天
歸檔5G),你如何設(shè)計備份策略
rman/每月一號level。每周末/周三level1其它天天level2
四:系統(tǒng)管理類
1.對于一個存在系統(tǒng)性能的系統(tǒng),說出你的診斷解決思緒
1)做statspack收集系統(tǒng)相關(guān)信息
了解系統(tǒng)大體情況/擬定是否存在參數(shù)設(shè)立不合適的地方/查看top5event/查看topsql
等
2)查v$system_event/v$session_event/v$session_wait
從v$system_event開始,擬定需要什么資源(dbfilesequentialread)等
進(jìn)一步研究v$session_event,擬定等待事件涉及的會話
從v$session_wait擬定具體的資源爭用情況(pl-p3的值:file_id/block_id/blocks等)
3)通過v$sql/v$sqItext/v$sqIarea表擬定disk_reads、(buffejgets/executions)值較大的
SQL
2:列舉幾種診斷10、CPU、性能狀況的方法
top/vmstat
statspack
sql_trace/tkprof
查v$system_event/v$session_event/v$session_wait
查v$sqlarea(disk_reads或buffer_gets/executions較大的SQL)
3:對statspack有何結(jié)識
StapSpack是Oracle公司提供的一個收集數(shù)據(jù)庫運營性能指標(biāo)的軟件包,該軟件包從8i
起,在9i、10g都有顯著的增強(qiáng)。該軟件包的輔助表(存儲相關(guān)參數(shù)與收集的性能指標(biāo)的表)
由最初的25個增長到43個。收集級別參數(shù)由本來的3個(0、5、10)增長到5個(0、5、6、7、
10)通過度析收集的性能指標(biāo),數(shù)據(jù)庫管理員可以具體地了解數(shù)據(jù)庫目前的運營情況,對數(shù)
據(jù)庫實例、等待事件、SQL等進(jìn)行優(yōu)化調(diào)整。運用statspack收集的snapshot,可以記錄制作
數(shù)據(jù)庫的各種性能指標(biāo)的記錄趨勢圖表。
4:假如系統(tǒng)現(xiàn)在需要在一個很大的表上創(chuàng)建一個索引,你
會考慮那些因素,如何做以盡量減小相應(yīng)用的影響
在系統(tǒng)比較空閑時;nologging選項(假如有dataguard則不可以使用nologging)大的
sort_ared_size或pga_aggregate_target較大
5:對raidl+O和raid5有何結(jié)識
RAID10(或稱RAID1+0)與RAID0+1不同,它是用硬盤驅(qū)動器先組成RAID1陣列,然后
在RAID1陣列之間再組成RAID0陣列。RAID10模式同RAID0+1模式同樣具有良好的數(shù)據(jù)
傳輸性能,但卻比RAID0+1具有更高的可靠性。RAID10陣列的實際容量為MXn/2,磁盤
運用率為50%。RAID10也需要至少4個硬盤驅(qū)動器構(gòu)成,因而價格昂貴。RAID10的可靠
性同RAID1同樣,但由于RAID10硬盤驅(qū)動器之間有數(shù)據(jù)分割,因而數(shù)據(jù)傳輸性能優(yōu)良。RAID
5與RAID3很相似,不同之處在于RAID5的奇偶校驗信息也同數(shù)據(jù)同樣被分割保存到所有
的硬盤驅(qū)動器,而不是寫入一個指定的硬盤驅(qū)動器,從而消除了單個奇偶校驗硬盤驅(qū)動器的
瓶頸問題。RAID5磁盤陣列的性能比RAID3有所提高,但仍然需要至少3塊硬盤驅(qū)動器。
其實際容量為MX(n-l),磁盤運用率為(n-l)/n。
五:綜合隨意類
1:你最擅長的是oracle哪部分?
2:喜歡oracle嗎?喜歡上論壇嗎?或者偏好oracle的哪一部分?
3:隨意說說你覺得oracle最故意思的部分或者最困難的部分
4:為什么要選擇做DBA呢?
六Oracle11g比10g多了哪些新特性?
ORACLE11g新特性簡介
1.數(shù)據(jù)庫管理部分
?數(shù)據(jù)庫重演(DatabaseReplay)
這一特性可以捕獲整個數(shù)據(jù)的負(fù)載,并且傳遞到一個從備份或者standby數(shù)據(jù)庫中創(chuàng)建
的測試數(shù)據(jù)庫上,然后重演負(fù)責(zé)以測試系統(tǒng)調(diào)優(yōu)后的效果。
?SQL重演(SQLReplay)
和前一特性類似。但是只是捕獲SQL負(fù)載部分,而不是所有負(fù)載。
?計劃管理(PlanManagement)
這一特性允許你將某一特定語句的查詢計劃固定下來,無論記錄數(shù)據(jù)變化還是數(shù)據(jù)庫版
本變化都不會改變她的查詢計劃。
?自動診斷知識庫(AutomaticDiagnosticRepositoryADR)
當(dāng)Oracle探測到重要錯誤時,會自動創(chuàng)紀(jì)一個事件(incident),并且捕獲到和這一事件
相關(guān)的信息,同時自動進(jìn)行數(shù)據(jù)庫健康檢查并告知DBA,此外,這些信息還可以打包發(fā)送
給Oracle支持團(tuán)隊。
?事件打包服務(wù)(IncidentPackagingService)
假如你需要進(jìn)一步測試或者保存相關(guān)信息,這一特性可以將與某一事件相關(guān)的信息打
包。并且你還可以將打包信息發(fā)給oracle支持團(tuán)隊。
?基于特性打補丁(FeatureBasedPatching)
在打補丁包時,這一特性可以使你很容易區(qū)分出補丁包中的那些特性是你正在使用而必
須打的。公司管理器(EM)使你能訂閱一個基于特性的補丁服務(wù),因此公司管理器可以自動
掃描那些你正在使用的特性有補丁可以打。
?自動SQL優(yōu)化(AutoSQLTuning)
10g的自動優(yōu)化建議器可以將優(yōu)化建議寫在SQLprofile中。而在11g中,你可以讓
oracle自動將能3倍于原有性能的profile應(yīng)用到SQL語句上。性能比較由維護(hù)窗口中一個
新管理任務(wù)來完畢。
?訪問建議器(AccessAdvisor)
11g的訪問建議器可以給出分區(qū)建議,涉及對新的間隔分區(qū)(intervalpart幣oning)的建
議。間隔分區(qū)相稱于范圍分區(qū)(rangepaittioning)的自動化版本,她可以在必要時自動創(chuàng)建
一個相同大小的分區(qū)。范圍分區(qū)和間隔分區(qū)可以同時存在于一張表中,并且范圍分區(qū)可以轉(zhuǎn)
換為間隔分區(qū)。
?自動內(nèi)存優(yōu)化(AutoMemoryTuning)
在9i中,引入了自動PGA優(yōu)化;10g中,又引入了自動SGA優(yōu)化。到了11g,所有內(nèi)
存可以通過只設(shè)定一個參數(shù)來實現(xiàn)全表自動優(yōu)化。你只要告訴oracle有多少內(nèi)存可用,她
就可以自動指定多少內(nèi)存分派給PGA、多少內(nèi)存分派給SGA和多少內(nèi)存分派給操作系統(tǒng)進(jìn)
程。當(dāng)然也可以設(shè)定最大、最小閾值。
?資源管理器(ResourceManager)
11g的資源管理器不僅可以管理CPU,還可以管理10。你可以設(shè)立特定文獻(xiàn)的優(yōu)先級、
文獻(xiàn)類型和ASM磁盤組。
?ADDM
ADDM在10g被引入。11g中,ADDM不僅可以給單個實例建議,還可以對整個RAC(即
數(shù)據(jù)庫級別)給出建議。此外,還可以將一些指示(directive)加入ADDM,使之忽略一些你不
關(guān)心的信息。
?AWR基線(AWRBaselines)
AWR基線得到了擴(kuò)展??烧J(rèn)為一些其他使用到的特性自動創(chuàng)建基線。默認(rèn)會創(chuàng)建周基
線。
2.PLSQL部分
?結(jié)果集緩存(ResultSetCaching)
這一特性能大大提高很多程序的性能。在一些MIS系統(tǒng)或者OLAP系統(tǒng)中,需要使用
到很多"selectcount?!边@樣的查詢。在之前,我們假如要提高這樣的查詢的性能,也許需
要使用物化視圖或者查詢重寫的技術(shù)。在11g,我們就只需要加一個/*+result_cache*/的提
醒就可以將結(jié)果集緩存住,這樣就能大大提高查詢性能。當(dāng)然,在這種情況下,我們也許還
要關(guān)心此外一個問題:完整性。由于在oracle中是通過一致性讀來保證數(shù)據(jù)的完整性的。
而顯然,在這種新特性下,為提高性能,是從緩存中的結(jié)果集中讀取數(shù)據(jù),而不會從回滾段
中讀取數(shù)據(jù)的。關(guān)于這個問題,答案是完全能保證完整性。由于結(jié)果集是被獨立緩存的,在
查詢期間,任何其他DML語句都不會影響結(jié)果集中的內(nèi)容,因而可以保證數(shù)據(jù)的完整性。
?對象依賴性改善
在11g之前,假如有函數(shù)或者視圖依賴于某張表,一旦這張表發(fā)生結(jié)構(gòu)變化,無論是
否涉及到函數(shù)或視圖所依賴的屬性,都會使函數(shù)或視圖變?yōu)閕nvalid,在11g中,對這種情
況進(jìn)行了調(diào)整:假如表改變的屬性與相關(guān)的函數(shù)或視圖無關(guān),則相關(guān)對象狀態(tài)不會發(fā)生變化。
?正則表達(dá)式的改善
在10g中,引入了正則表達(dá)式。這一特性大大方便了開發(fā)人員。11g,oracle再次對這
一特性進(jìn)行了改善。其中,增長了一個名為regexp_count的函數(shù)。此外,其他的正則表達(dá)
式函數(shù)也得到了改善。
?新SQL語法=>
我們在調(diào)用某一函數(shù)時,可以通過=>來為特定的函數(shù)參數(shù)指定數(shù)據(jù)。而在11g中,這
一語法也同樣可以出現(xiàn)在sql語句中了。例如,你可以寫這樣的語句:
selectf(x=>6)fromdual;
?對'TCP包(utl_tcp、11tLsmtp…)支持FGAC(FineGrainedAccessControl)安全控制
?增長了只讀表(read-onlytable)
在以前,我們是通過觸發(fā)器或者約束來實現(xiàn)對表的只讀控制。11g中不需要這么麻煩了,
可以直接指定表為只讀表。
?觸發(fā)器執(zhí)行效率提高了
內(nèi)部單元內(nèi)聯(lián)(Intra-Un計inlining)
在C語言中,你可以通過內(nèi)聯(lián)函數(shù)(inline)或者宏實現(xiàn)使某些小的、被頻繁調(diào)用的函數(shù)
內(nèi)聯(lián),編譯后,調(diào)用內(nèi)聯(lián)函數(shù)的部分會編譯成內(nèi)聯(lián)函數(shù)的函數(shù)體,因而提高函數(shù)效率。在
11g的
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鑄造碳化鎢制管工崗前沖突管理考核試卷含答案
- 鐵合金焙燒操作工安全管理測試考核試卷含答案
- 2025內(nèi)蒙古自治區(qū)公務(wù)員考試數(shù)量關(guān)系專項練習(xí)題完整參考答案
- 耐蝕混凝土工創(chuàng)新意識測試考核試卷含答案
- 營銷員崗前流程優(yōu)化考核試卷含答案
- 農(nóng)機(jī)駕駛操作員誠信道德能力考核試卷含答案
- 廢礦物油再生處置工安全應(yīng)急評優(yōu)考核試卷含答案
- 2024年湖南交通工程學(xué)院輔導(dǎo)員考試筆試題庫附答案
- 2024年湖北師范大學(xué)輔導(dǎo)員考試筆試真題匯編附答案
- 2024年遼寧地質(zhì)工程職業(yè)學(xué)院輔導(dǎo)員考試參考題庫附答案
- 癌癥患者生活質(zhì)量量表EORTC-QLQ-C30
- 六年級上冊數(shù)學(xué)教案-總復(fù)習(xí) 專題一 數(shù)與代數(shù)|北師大版
- 工業(yè)互聯(lián)網(wǎng)標(biāo)準(zhǔn)體系(版本3.0)
- 培養(yǎng)小學(xué)生的實驗操作能力
- 氣動回路圖與氣動元件課件
- 《念奴嬌 赤壁懷古》《永遇樂 京口北固亭懷古》《聲聲慢》默寫練習(xí) 統(tǒng)編版高中語文必修上冊
- 婦產(chǎn)科病史采集臨床思維
- 眾辰變頻器z2400t-15gy-1說明書
- DB63T 393-2002草地鼠蟲害、毒草調(diào)查技術(shù)規(guī)程
- 船體振動的衡準(zhǔn)及減振方法
- 復(fù)議訴訟證據(jù)清單通用版
評論
0/150
提交評論