




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
4.4ORACLE數(shù)據(jù)庫規(guī)劃與實施ORACLE為信息系統(tǒng)提供了一個開放、綜合、集成的方法。使用ORACLE數(shù)據(jù)庫進行信息系統(tǒng)開發(fā)的步驟可以歸納為如下過程:建ORACLE數(shù)據(jù)庫建表空間建回滾段建用戶建數(shù)據(jù)庫對象開發(fā)本節(jié)介紹ORACLE數(shù)據(jù)庫的規(guī)劃與實施:4.4.1數(shù)據(jù)庫應用程序類型4.4.4ORACLE對象設計4.4.2ORACLE空間設計4.4.5DBA工具4.4.3ORACLE安全設計北京郵電大學軟件學院郭文明2003.064.4.1數(shù)據(jù)庫應用程序類型規(guī)劃和配置數(shù)據(jù)庫,需要知道將要操作數(shù)據(jù)庫的事務有什么,這些事務訪問數(shù)據(jù)庫的頻率有多大。針對不同的事務訪問情形,對內(nèi)存的要求不同,磁盤I/O操作的情形也不同。只有設置合適的ORACLE實例,才能使數(shù)據(jù)庫應用系統(tǒng)獲得快速、準確、可靠的事務響應。ORACLE既可以設置成處理長的密集型事務的系統(tǒng),也可以設置成處理大量的小型快速事務的系統(tǒng)。有三種通用的數(shù)據(jù)庫設置類型:聯(lián)機事務處理(OLTP)決策支持系統(tǒng)(DSS)批量作業(yè)系統(tǒng)混合系統(tǒng)北京郵電大學軟件學院郭文明2003.064.4.1數(shù)據(jù)庫應用程序類型聯(lián)機事務處理(OLTP)OLTP系統(tǒng)是一個包含繁重DML的應用,其面向事務的活動主要包括更新,但也包括一些插入和刪除。典型的例子是用于航空公司和旅館的預定系統(tǒng)。OLTP系統(tǒng)可以允許有很高的并發(fā)性。
OLTP的特點是有大量短的事務高頻率地訪問數(shù)據(jù)庫,每一個事務操作的數(shù)據(jù)量不是很多,但事務比較頻繁,而且要求數(shù)據(jù)庫響應事務的速度快。一般來說OLTP系統(tǒng)需要24*7地響應對數(shù)據(jù)庫的請求。根據(jù)這些要求,我們應該從以下幾方面考慮:1)大量的小回滾段。因為事務都不太大,對回滾段空間的需求不可能很大,但事務數(shù)量多,引發(fā)回滾段數(shù)量的增大。應該創(chuàng)建大量小的回滾段,把事務對回滾段的爭用減到最小。標準的配置可以考慮每四個活動事務用一個回滾段,每個事務接受一個區(qū)間。北京郵電大學軟件學院郭文明2003.064.4.1數(shù)據(jù)庫應用程序類型聯(lián)機事務處理(OLTP)2)OLTP應用的表可能插入或者刪除記錄,所以存放易變表和索引的表空間應被分配到它們最大的期望容量。3)適當?shù)墓烙嬛貙懭罩揪彌_區(qū)和日志文件大小,減少日志寫和日志切換的頻率,盡可能降低對響應事務請求的影響,另外頻繁的檢查點也可能影響事務響應速度。4)擁有大型共享池。不同客戶可能執(zhí)行同樣的SQL語句,SQL在共享池中緩沖,性能可提高(應用程序的SQL語句應當統(tǒng)一,另外WHERE中使用綁定變量查詢而不是直接的值查詢,使不同值的查詢共享SQL的執(zhí)行計劃)。5)數(shù)據(jù)擁有單獨的索引。OLTP的事務請求基本在規(guī)劃設計范圍之內(nèi),建立單獨有效的索引,并在獨立的表空間中創(chuàng)建主鍵和其他索引,且存放在獨立的存儲器上。6)使用小型臨時段。需要小的排序應在內(nèi)存中完成,盡量避免OLTP系統(tǒng)對臨時段的請求進入磁盤。北京郵電大學軟件學院郭文明2003.064.4.1數(shù)據(jù)庫應用程序類型決策支持系統(tǒng)(DSS)DSS系統(tǒng)通常是一個大型的、包含歷史性內(nèi)容的只讀數(shù)據(jù)庫,通常用于簡單的固定查詢或特別查詢。夜間處理任務被認為是DSS,查詢(選擇)是DSS的主要活動。根據(jù)這些要求,我們應該從以下幾方面考慮:1)擁有少量的較大的回滾段。大型工作要創(chuàng)建大型的回滾段,使用SETTRANSACTIONUSERROLLBACKSEGMENT語句使事務強制使用專用回滾段。2)為分類排序創(chuàng)建大型臨時表空間,DSS經(jīng)常超出內(nèi)存的使用空間而從內(nèi)存轉(zhuǎn)入磁盤(臨時表空間)。3)使用較小的共享SQL區(qū)域而采用較大的數(shù)據(jù)緩沖區(qū)高速緩沖。DSS中SQL的執(zhí)行頻率并不大,無需考慮SQL語句的共享,但應增加數(shù)據(jù)庫緩沖區(qū)高速緩沖的容量,使得更多的數(shù)據(jù)塊和回滾段在內(nèi)存中高速緩沖。北京郵電大學軟件學院郭文明2003.064.4.1數(shù)據(jù)庫應用程序類型決策支持系統(tǒng)(DSS)
4)如前所述,DSS希望Oracle塊一次讀取盡可能多的行。因為DSS查詢一般觸發(fā)整個表掃描,所以希望通過讀取多個連續(xù)的塊使系統(tǒng)讀取的塊達到最大值。把DB_BLOCK_SIZE和DB_FILE_MULTIBLOCK_READ_COUNT參數(shù)設置得盡可能高些。5)運行的SQL應當刪除不必要的排序并充分利用索引,以減少對臨時表空間和回滾段的壓力。2種方法:在沒有可以選擇的良好索引時不使用任何索引或屏蔽使用某些索引(參見4.3);使用位圖索引。6)不要在DSS應用代碼中使用綁定變量。在OLTP下,希望最小化應用進程開銷(語法分析)。然而,DSS的查詢,語法分析占用整個查詢時間的比例會更小。假如使用綁定變量,優(yōu)化程序不能調(diào)用它所存儲的統(tǒng)計信息(通過ANALYZE命令)以選出存取數(shù)據(jù)的最好方法。北京郵電大學軟件學院郭文明2003.064.4.1數(shù)據(jù)庫應用程序類型批量作業(yè)系統(tǒng)批作業(yè)處理系統(tǒng)是作用于數(shù)據(jù)庫的非交互性的自動應用。它通常含有繁忙DML語句并有較低的并發(fā)性。另外還有一些其他的應用類型:OLAP(聯(lián)機分析處理)系統(tǒng)可提供分析服務。該系統(tǒng)在數(shù)學、統(tǒng)計學、集合以及大量的計算方面區(qū)別于OLTP或DSS模型??梢园袿LAP看作是在OLTP系統(tǒng)或DSS之上的一個擴展或一個附加的功能層次。地理信息系統(tǒng)(GeographicInformationSystems,GIS)或有關(guān)空間的數(shù)據(jù)庫和OLAP數(shù)據(jù)庫相集成,提供圖表的映射能力。例如用于社會統(tǒng)計的人口統(tǒng)計數(shù)據(jù)庫。VCDB(可變基數(shù)數(shù)據(jù)庫),這類數(shù)據(jù)庫通常被用作一個處理系統(tǒng)的數(shù)據(jù)庫后端,這樣就會導致在數(shù)據(jù)處理期間,數(shù)據(jù)庫中的表顯著地增長或收縮。基數(shù)是指在一個給定時間里一個表中行的數(shù)目。北京郵電大學軟件學院郭文明2003.064.4.1數(shù)據(jù)庫應用程序類型混合系統(tǒng)混合系統(tǒng)混合了前面介紹的幾種類型。許多實際應用系統(tǒng)往往是OLTP和DSS甚至其他模型的集成。從前面OLTP和DSS的需求對比來看,OLTP和DSS的基本特征似乎相反,如何協(xié)調(diào)這兩種需求的矛盾?一般有三種解決方法:1)在一個系統(tǒng)中的OLTP和DSS之間節(jié)流,白天運行OLTP,而夜間進行批量處理。即白天運行OLTP配置的數(shù)據(jù)庫,夜間跳回DSS配置的實例。這種方法的實際操作模式可以是以下兩種:OLTP不支持24*7工作方式,DSS時不支持OLTP;DSS操作的系統(tǒng)反跳之后,OLTP可以使用,但系統(tǒng)性能將受影響。DBA需要測試DSS和服務器反跳對Web用戶的影響,必要時選擇其他解決辦法來調(diào)整系統(tǒng)服務模式。北京郵電大學軟件學院郭文明2003.064.4.1數(shù)據(jù)庫應用程序類型混合系統(tǒng)2)同時運行兩個數(shù)據(jù)庫,一個服務于OLTP,一個服務于DSS。OLTP數(shù)據(jù)庫進行實時更新,在有規(guī)則的時間間隔內(nèi),將變化傳遞給DSS數(shù)據(jù)庫。這種方法的實際操作模式可以多種。DBA可以夜間執(zhí)行部分或全部OLTP系統(tǒng)的輸出,并輸入到DSS系統(tǒng)。較好的解決方法是對實時方式下傳遞變化的連接數(shù)據(jù)庫使用復制技術(shù),將變化的數(shù)據(jù)復制記錄下來,OLTP數(shù)據(jù)庫只傳遞變化的數(shù)據(jù)給DSS數(shù)據(jù)庫。第三種方法是使ORACLE中OLTP數(shù)據(jù)庫的歸檔日志自動應用于DSS數(shù)據(jù)庫,保證DSS系統(tǒng)緊跟在OLTP系統(tǒng)之后,DSS數(shù)據(jù)庫不僅作為OLTP的備用數(shù)據(jù)庫,而且自己又獨立地服務于決策支持。盡管這種方式可能不能保證OLTP和DSS數(shù)據(jù)庫的絕對同步,但在DSS的實時性要求不是很強時,是一種很好的方法。北京郵電大學軟件學院郭文明2003.064.4.1數(shù)據(jù)庫應用程序類型混合系統(tǒng)3)在一個系統(tǒng)中同時運行OLTP和DSS。這是最普遍的解決方法。系統(tǒng)經(jīng)常作為OLTP開始活動,逐漸加入DSS需求使系統(tǒng)漸漸成為混合系統(tǒng)。在這種情況下,DBA必須在OLTP和批量處理之間尋找平衡,并且應該偏向于OLTP用戶,創(chuàng)建與OLTP同樣多的回滾段,而且要創(chuàng)建少量專門為大型事務指定的大型回滾段,同時將高速緩沖和共享池保持合理的容量,使系統(tǒng)既支持OLTP對共享池的需求又支持DSS對數(shù)據(jù)庫緩沖區(qū)高速緩沖的需求。還要確保臨時表空間夠批量排序使用,同時將OLTP排序控制在內(nèi)存中。推薦在這種情況下使用專用服務器,并且配置ORACLE并行服務器(OracleParallelServer,OPS),因為OPS允許多個實例訪問同一個物理數(shù)據(jù)庫,一個實例為OLTP配置,另一些為批量處理配置。北京郵電大學軟件學院郭文明2003.064.4.2ORACLE空空間設計ORACLE數(shù)據(jù)庫庫的結(jié)構(gòu)包包括邏輯結(jié)結(jié)構(gòu)和物理理結(jié)構(gòu)。在在進行應用用系統(tǒng)數(shù)據(jù)據(jù)庫設計時時,空間設設計是非常常重要的,,它與今后后運行系統(tǒng)統(tǒng)的性能、、可用、維維護、管理理等有密切切的關(guān)系。。物理結(jié)構(gòu)構(gòu)與邏輯結(jié)結(jié)構(gòu)之間的的關(guān)系如下下圖:TablespaceSegmentExtentOracleblockDatafileOSblockDatabaseLogicalPhysical北京郵電大大學軟件學學院郭郭文明2003.064.4.2.1ORACLE表空間間設計ORACLE表空間間分為兩大大類:系統(tǒng)統(tǒng)表空間和和非系統(tǒng)表表空間。系系統(tǒng)表空間間是建庫時時自動創(chuàng)建建的主要用用于存儲數(shù)數(shù)據(jù)字典、、系統(tǒng)回滾滾段;非系系統(tǒng)表空間間是由用戶戶創(chuàng)建的表表空間,主主要用于分分離段,方方便用戶的的數(shù)據(jù)管理理。ORACLE推推薦一種最最佳靈活結(jié)結(jié)構(gòu)OFA(OptimalFlexibleArchitecture)可可以用于表表空間的設設計。OFA是ORACLE軟件安安裝和數(shù)據(jù)據(jù)文件的推推薦目錄結(jié)結(jié)構(gòu)。OFA只只是一組建建議,并不不是絕對原原則。下面面介紹基本本OFA和和擴展OFA。基本OFA1)系統(tǒng)表表空間(SYSTEM):系系統(tǒng)表空間間不具有重重建性,只只用于存放放數(shù)據(jù)字典典,其他內(nèi)內(nèi)容如數(shù)據(jù)據(jù)段信息等等都應從系系統(tǒng)表空間間中移出。。北京郵電大大學軟件學學院郭郭文明2003.064.4.2.1ORACLE表空間間設計基本OFA2)分離應應用程序數(shù)數(shù)據(jù)段(DATA)):應用程程序數(shù)據(jù)段段應是一個個獨立的表表空間,即即數(shù)據(jù)表空空間。建立立單獨數(shù)據(jù)據(jù)表空間的的理由是::應用程序序與數(shù)據(jù)文文件分離有有利于減少少資源爭用用,簡化文文件管理;;另外,當當數(shù)據(jù)段產(chǎn)產(chǎn)生碎片時時利于管理理。3)分離應應用程序索索引段(INDEX):索引引段不應與與相關(guān)的數(shù)數(shù)據(jù)段存儲儲在一個表表空間,以以免產(chǎn)生資資源爭用。。由于表增增長和不正正確的尺寸寸設置可能能產(chǎn)生索引引段的碎片片,分離應應用程序索索引段,可可以減少整整理數(shù)據(jù)表表或索引碎碎片所需的的管理代價價。從數(shù)據(jù)據(jù)表分離相相應的索引引也可以通通過ALTERINDEX命令來實實現(xiàn)。4)分離工工具段(TOOLS):許多多第三方工工具會將數(shù)數(shù)據(jù)存儲在在系統(tǒng)表空空間中,為為了避免這這種情況,,可將它們們的對象移移出系統(tǒng)表表空間。北京郵電大大學軟件學學院郭郭文明2003.064.4.2.1ORACLE表空間間設計基本OFA5)分離回回滾段(RBS)::回滾段會會針對巨型型事務動態(tài)態(tài)擴展尺寸寸,也會動動態(tài)收縮到到指定的優(yōu)優(yōu)化尺寸((參見4.3)。回回滾段的I/O通常常與數(shù)據(jù)和和索引表空空間的I/O同步。。將回滾段段分離出來來是出于減減少I/O沖突的考考慮。6)分離臨臨時段(TEMP)):臨時段段是數(shù)據(jù)庫庫中動態(tài)生生成的對象象,用來存存儲巨型排排序操作((如SELECTDISTINCT,UNION,CREATEINDEX等等)的數(shù)據(jù)據(jù)。由于動動態(tài)特性,,臨時段不不應與其他他類型段一一起存儲。。通常,在在建立用戶戶時,將這這些用戶使使用的臨時時數(shù)據(jù)段設設置到臨時時表空間。。7)分離用用戶(USER)::為用戶帳帳號建立一一個USER表空間間,在建立立用戶時將將用戶的操操作數(shù)據(jù)放放在用戶表表空間。以上7個表表空間是最最基本的表表空間,也也是傳統(tǒng)OFA的基基本組成部部分。隨著著應用的深深入,又有有擴展的OFA。北京郵電大大學軟件學學院郭郭文明2003.064.4.2.1ORACLE表空間間設計擴展的OFA1)分離低低使用數(shù)據(jù)據(jù)段(DATA_2):在基基表中,有有一些是動動態(tài)數(shù)據(jù),,一些是靜靜態(tài)數(shù)據(jù),,而動態(tài)數(shù)數(shù)據(jù)和靜態(tài)態(tài)數(shù)據(jù)常常常被并發(fā)操操作。靜態(tài)態(tài)數(shù)據(jù)在實實際使用時時只是被提提取信息,,可以把這這些靜態(tài)數(shù)數(shù)據(jù)表設置置到一個專專用表空間間(DATA_2)),從而避避免并發(fā)操操作沖突。。2)分離低低使用索引引段(INDEX_2):數(shù)數(shù)據(jù)表分為為靜態(tài)表和和動態(tài)表,,則索引亦亦如此。對對于靜態(tài)表表的索引表表應建立靜靜態(tài)索引表表空間(INDEX_2)。。如果索引引已經(jīng)生成成,可以使使用ALTERINDEX語句來移移動這些索索引到一個個新的表空空間中。3)分離工工具索引((TOOLS_1)):如果數(shù)數(shù)據(jù)庫對TOOLS表空間有有較多的操操作,則這這些工具表表索引可以以移到另一一個表空間間(TOOLS_1),這樣樣TOOLS表空間間就可看成成工具數(shù)據(jù)據(jù)表空間。。北京郵電大大學軟件學學院郭郭文明2003.064.4.2.1ORACLE表空間間設計擴展的OFA4)分離特特殊回滾段段(RBS_2)::RBS表表空間的回回滾段必須須有適當?shù)牡拇笮『蛿?shù)數(shù)量,以適適應應用的的使用。但但大型事務務可能超過過回滾段的的配置。為為了避免這這種情況,,可以設置置一個特殊殊回滾段,,使大型事事務只使用用特殊回滾滾段。建立立一個特殊殊表空間來來容納這個個特殊回滾滾段。5)分離特特殊用戶臨臨時段(TEMP_USER):和特特殊回滾段段一樣,一一些特殊用用戶在做特特殊操作時時,可以設設置一個特特殊用戶臨臨時表空間間,這樣便便于系統(tǒng)管管理。附加的特殊殊應用OFA擴展1)SNAPS:用用于快照(Snapshots)。快快照表是分分布式數(shù)據(jù)據(jù)庫處理的的一種特殊殊表,為此此類表建立立相應的表表空間。2)PARTITIONS::用于分區(qū)區(qū)(Partition)。。分區(qū)是為為了分配I/O并且且簡化巨型型表的管理理。3)TEMP_WORK:用用于大型數(shù)數(shù)據(jù)裝載。。北京郵電大大學軟件學學院郭郭文明2003.06數(shù)數(shù)據(jù)文件設設置根據(jù)ORACLE數(shù)數(shù)據(jù)庫結(jié)構(gòu)構(gòu)特點,每每個表空間間至少要有有一個數(shù)據(jù)據(jù)文件,因因此,應用用系統(tǒng)的每每個表空間間均具有各各自的數(shù)據(jù)據(jù)文件。Oracle7.2以后可可以支持數(shù)數(shù)據(jù)文件大大小的重新新定義,當當表空間需需要擴充時時,不必為為其增加數(shù)數(shù)據(jù)文件,,而簡單地地將其擴充充即可,避避免了預先先分配過大大的存儲空空間及過多多數(shù)據(jù)文件件的問題。。同時可以以支持數(shù)據(jù)據(jù)文件的自自動擴展,,避免當表表空間已滿滿時,DBA手工擴擴充表空間間對用戶使使用的影響響。對于一個不不太大的數(shù)數(shù)據(jù)庫,可可以將數(shù)據(jù)據(jù)庫軟件和和數(shù)據(jù)文件件都放置在在一個磁盤盤上,將它它們設計成成不同的子子文件即可可。對于大大型數(shù)據(jù)庫庫,需要指指定哪些文文件放置在在哪個磁盤盤上。北京郵電大大學軟件學學院郭郭文明2003.06數(shù)數(shù)據(jù)文件設設置表空間的磁磁盤分配:一般情況下下,90%以上的I/O操作作集中在系系統(tǒng)表空間間、數(shù)據(jù)表表空間、回回滾表空間間、索引表表空間這4個表空間間上,所以以這4個表空空間應單獨獨存儲在不不同的磁盤盤上。系統(tǒng)文件的的規(guī)劃:ORACLE有聯(lián)機機日志文件件、歸檔日日志文件、、控制文件件和系統(tǒng)軟軟件文件等等,如何放放置這些系系統(tǒng)文件也也是一件重重要的任務務。1)聯(lián)機日日志文件::每個數(shù)據(jù)據(jù)庫至少要要有兩個聯(lián)聯(lián)機日志文文件,由于于聯(lián)機日志志文件中保保留了數(shù)據(jù)據(jù)庫的當前前事務,所所以它無法法從備份中中恢復,他他們是ORACLE無法用備備份工具恢恢復的唯一一文件類型型。這類文文件應單獨獨存儲。北京郵電大大學軟件學學院郭郭文明2003.06數(shù)數(shù)據(jù)文件設設置系統(tǒng)文件的的規(guī)劃:2)控制文文件:前面面章節(jié)已經(jīng)經(jīng)說明了控控制文件的的重要性,,每個數(shù)據(jù)據(jù)庫應當至至少有3個個控制文件件的拷貝,,它們被分分布在3個個驅(qū)動器中中。3)歸檔日日志文件::如果歸檔檔日志文件件和聯(lián)機日日志文件放放在同一個個磁盤上,,當LGWR在讀盤盤時,ARCH也在在讀同一磁磁盤,勢必必造成I/O沖突,,所以歸檔檔日志文件件和聯(lián)機日日志文件應應分盤存儲儲。4)ORACLE軟軟件:Oracle軟件是系系統(tǒng)運行的的核心,這這些軟件應應放在獨立立的磁盤上上。磁盤規(guī)劃設設計:磁盤規(guī)劃設設計可以依依據(jù)下列準準則:數(shù)據(jù)據(jù)庫必須可可恢復;必必須對聯(lián)機機日志文件件進行鏡像像;必須最最小化DBWR、LGWR、、ARCH之間的沖沖突;必須須最小化DBWR磁磁盤間的沖沖突;估計計數(shù)據(jù)庫文文件的I/O量。北京郵電大大學軟件學學院郭郭文明2003.06數(shù)數(shù)據(jù)文件設設置磁盤規(guī)劃設設計:在磁盤規(guī)劃劃設計過程程中需要做做一些數(shù)據(jù)據(jù)庫測量,,以估計其其I/O量量,以下給給出一參照照的7磁盤盤設計方案案:磁盤存放內(nèi)容1Oracle軟件2SYSTEM表空間,控制文件13RBS,TEMP,TOOLS表空間,控制文件24DATA表空間,控制文件35INDEX表空間6聯(lián)機日志文件1,2,3,轉(zhuǎn)儲文件7應用軟件,歸檔日志文件北京郵電大大學軟件學學院郭郭文明2003.06數(shù)數(shù)據(jù)文件設設置表空間與數(shù)數(shù)據(jù)文件設設置舉例::connectsystem/managercreatetablespacetsp_acctdatafile‘‘d:\oracle\oradata\orcl\apacct.dbf’size32Mreuseautoextendonnext4Mmaxsizeunlimited;createtablespacetsp_publicdatafile‘‘d:\oracle\oradata\orcl\appublic.dbf’size100Mreuseautoextendonnext16Mmaxsizeunlimited;createtablespacetsp_tempdatafile‘‘d:\oracle\oradata\orcl\aptemp.dbf’size500Mreuseautoextendonnext32Mmaxsizeunlimited;連接數(shù)據(jù)庫庫創(chuàng)建tsp_acct表空間間創(chuàng)建回滾段段表空間創(chuàng)建臨時表表空間北京郵電大大學軟件學學院郭郭文明2003.06段段存儲分配配設置在數(shù)據(jù)庫中中,大量使使用的段包包括表段和和索引段,,還有回滾滾段、臨時時段。表的的邏輯定義義信息放在在DBA_TABLES和DBA_TAB_COLUMNS中,,索引的定定義信息放放在DBA_INDEXS和和DBA_IND_COLUMNS中中。從存儲儲管理角度度看,表和和索引都屬屬于段,只只是類型不不同而已,,有關(guān)段及及存儲定義義的系統(tǒng)數(shù)數(shù)據(jù)字典有有DBA_SEGMENTS和DBA_EXTENTS等。在應用系統(tǒng)統(tǒng)中,對大大量使用的的段的規(guī)劃劃主要是它它們的存儲儲方案的設設計,每個段由由區(qū)間組成成。每個段段使用的空空間由它的的存儲參數(shù)數(shù)決定,在在CREATETABLE、CREATEINDEX、CREATECLUSTER、CREATEROLLBACK等命令中中都涉及到到STORAGE參參數(shù)。北京郵電大大學軟件學學院郭郭文明2003.06段段存儲分配配設置如果在創(chuàng)建建段的命令令中不指定定STORAGE參參數(shù),則使使用它所在在表空間的的缺省參數(shù)數(shù)。表空間間的存儲參參數(shù)或段的的存儲參數(shù)數(shù)設計不合合理將直接接影響數(shù)據(jù)據(jù)庫的性能能,甚至直直接影響到到數(shù)據(jù)庫的的正常運行行。對存儲參數(shù)數(shù)的確定問問題,前面面的討論中中已經(jīng)說明明,應根據(jù)據(jù)實際初始始數(shù)據(jù)量的的估算和數(shù)數(shù)據(jù)的動態(tài)態(tài)變化情況況以及段的的性質(zhì)等多多方面來決決定。注意,ORACLE數(shù)據(jù)庫在在創(chuàng)建回滾滾段之后,,狀態(tài)為脫脫機,因此此必須由DBA將其其狀態(tài)改為為聯(lián)機,方方可使用。。北京郵電大大學軟件學學院郭郭文明2003.06段段存儲分配配設置段存儲分配配設置舉例例:createtablepat_master(pat_idvarchar2(10),namevarchar2(8),…)pctfree10pctused60storage(initial16Mnext16Mminextents1maxextentsunlimitedpctincrease0)tablespacetsp_acct;createindexpat_master_indexonpat_master(pat_id)pctfree20storage(initial4Mnext4Mminextents1maxextentsunlimitedpctincrease0)tablespacetsp_acct;createpublicrollbacksegmentrbs_publictablespacetsp_publicstorage(initial4Mnext4M);Alterrollbacksegmentrbs_publiconline;創(chuàng)建pat_master表表創(chuàng)建pat_master_index索引創(chuàng)建回滾段段北京郵電大大學軟件學學院郭郭文明2003.06數(shù)數(shù)據(jù)塊利用用設置數(shù)據(jù)塊空間間利用參數(shù)數(shù)可以控制制表段和索索引段中的的空間使用用。分兩類類:控制并并發(fā)性的參參數(shù)(INITRANS和MAXTRANS)、控制數(shù)數(shù)據(jù)空間使使用的參數(shù)數(shù)(PCTFREE和PCTUSED)??梢允褂肐NITRANS和和MAXTRANS來確定一一個數(shù)據(jù)庫庫塊上活動動事務的個個數(shù)。INITRANS是每每個塊的初初始化事務務入口數(shù),,數(shù)據(jù)段和和索引段的的INITRANS的缺省值值分別為1和2,增增大其值則則允許多個個事務同時時操作數(shù)據(jù)據(jù)塊。MAXTRANS是在在每個塊的的最大事務務入口,缺缺省值為最最大值255。北京郵電大大學軟件學學院郭郭文明2003.064.4.2.4數(shù)據(jù)塊塊利用設置通過選擇適當當?shù)腜CTFREE和PCTUSED可以提高高性能和空間間利用。對于于改動較少的的表,在設置置數(shù)據(jù)塊空間間利用參數(shù)時時,PCTFREE適當當降低。對于于經(jīng)常改動的的表,尤其是是數(shù)據(jù)行長度度增加的改動動,應該適當當提高PCTFREE的的設置,以免免發(fā)生行轉(zhuǎn)移移。數(shù)據(jù)行長長度增加這類類應用的一個個例子:醫(yī)療療信息系統(tǒng)中中,病案首頁頁表中行的信信息開始長度度可能不大(許多字段值值為空),但但隨著病人住住院的過程,,行的信息不不斷增加。北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計在ORACLE中,DBA定義訪問問數(shù)據(jù)庫的用用戶名,安全全域定義作用用于用戶的有有關(guān)安全方面面的設置。安全域包括::驗證機制、、表空間限額額、默認表空空間、臨時表表空間、帳戶戶鎖、資源限限制、直接權(quán)權(quán)限、角色權(quán)權(quán)限8個方面面,如下頁圖。。ORACLE的安全性性設計圍繞用用戶的安全域域展開。北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計AccountlockingAuthenticationmechanismRoleprivilegesDirectprivilegesResourcelimitsTablespacequotasTemporarytablespaceDefaulttablespaceSecuritydomain默認表空間臨時表空間表空間限額資源限額直接權(quán)限角色權(quán)限驗證機制帳戶鎖北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計安全域內(nèi)容1)驗證機制制:用戶訪問問數(shù)據(jù)庫可以以通過數(shù)據(jù)庫庫、操作系統(tǒng)統(tǒng)、網(wǎng)絡這三三種方式中的的一種進行驗驗證,一個用用戶究竟使用用何種驗證方方式,根據(jù)具具體需求決定定。2)表空間限限額:表空間間限額,可以以控制一個數(shù)數(shù)據(jù)庫的用戶戶對數(shù)據(jù)庫中中表空間的物物理存儲空間間的分配數(shù)量量。3)默認表空空間:定義用用戶在創(chuàng)建段段時的存儲位位置,當用戶戶創(chuàng)建段時,,如果指定存存儲表空間,,則使用定義義段時指定的的表空間,否否則使用這一一默認表空間間。北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計安全域內(nèi)容4)臨時表空空間:當用戶戶執(zhí)行排序操操作時,臨時時表空間定義義臨時段分配配的位置。5)帳戶鎖::帳戶鎖可以以防止非法用用戶對系統(tǒng)的的登錄。6)資源限制制:對用戶使使用資源進行行一定的限制制。7)直接權(quán)限限:通過GRANT直接接授予用戶的的系統(tǒng)權(quán)限和和對象權(quán)限。。8)角色權(quán)限限:通過GRANT將系系統(tǒng)權(quán)限和對對象權(quán)限授予予角色,再將將角色授予用用戶,使用戶戶間接獲得權(quán)權(quán)限。北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計口令和資源配置文件是命命名的一組口口令和資源限限制的設置集集合。Oracle中存存在一個名為為DEFAULT的配置置文件,默認認配置文件中中的所有項目目都不受限制制,如果創(chuàng)建建用戶時沒有有指定配置文文件子句,則則系統(tǒng)將DEFAULT指定給該用用戶。Oracle中允許DBA修改DEFAULT和用戶定義義的配置文件件,用ALTERPROFILE命令。允許許刪除DEFAULT和和定義的配置置文件,用DROPPROFILECASCADE命命令。創(chuàng)建用戶時需需確定用戶名名和驗證機制制、指定默認認表空間和臨臨時表空間、、確定有關(guān)表表空間的限額額、指定用戶戶的配置文件件。ORACLE應用系統(tǒng)中中一般定義一一系列的用戶戶和配置文件件、定義一系系列的角色,,然后將角色色和配置文件件授予(或指指定給)用戶戶。北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計權(quán)限和角色Oracle大約有100多種的系系統(tǒng)權(quán)限,包包括諸如創(chuàng)建建表空間的系系統(tǒng)范圍級操操作權(quán)限、諸諸如創(chuàng)建表的的用戶模式內(nèi)內(nèi)對象管理權(quán)權(quán)限和諸如創(chuàng)創(chuàng)建任意表的的任意模式內(nèi)內(nèi)對象管理權(quán)權(quán)限。系統(tǒng)權(quán)權(quán)限和對象權(quán)權(quán)限可以通過過GRANT或REVOKE語句授授予用戶或收收回。角色是被命名名的一組相關(guān)關(guān)的權(quán)限,角角色是屬于系系統(tǒng)范圍的,,既不屬于某某個用戶,也也不屬于某個個模式??梢砸园严到y(tǒng)權(quán)限限和對象權(quán)限限授予角色,,也可以把角角色授予另一一個角色,最最終把角色授授予用戶,由由此方便Oracle的的安全管理。。使用角色的步步驟是:創(chuàng)建建角色、為角角色授予相應應的權(quán)限、將將角色授予特特定的用戶。。Oracle中有一些預預定義角色可可以使用,例例如DBA、、SELECT_CATALOG_ROLE等等,DBA可可以直接使用用。北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計應用系統(tǒng)的用用戶應用系統(tǒng)的安安全設計一般般要對用戶進進行分類,然然后根據(jù)用戶戶類型的不同同,對其進行行設置、維護護及管理。數(shù)據(jù)庫管理員員(DBA)):默認的數(shù)據(jù)據(jù)庫管理員internal、sys和system均具具有DBA權(quán)權(quán)限。數(shù)據(jù)庫庫打開、關(guān)閉閉、恢復等操操作時,需使使用internal;;修改數(shù)據(jù)庫庫重要參數(shù)時時使用sys;其他一般般管理應使用用system。所有者(OWNER):對大型的應應用系統(tǒng),往往往根據(jù)不同同的用戶所屬屬將對象進行行劃分,這樣樣不同的用戶戶擁有不同的的數(shù)據(jù)庫對象象,創(chuàng)建數(shù)據(jù)據(jù)庫對象的用用戶稱為對象象的所有者((模式)。此此類用戶需要要有RESOURCE的的權(quán)限。一般用戶(USER):一般用戶即即應用系統(tǒng)的的最終用戶。。此類用戶對對數(shù)據(jù)庫而言言僅需要有CONNECT的權(quán)限即即可,但此類類用戶的角色色權(quán)限和對象象使用權(quán)限需需要根據(jù)具體體工作和應用用進一步規(guī)劃劃和設計。北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計應用系統(tǒng)的一一般用戶應用系統(tǒng)中除除創(chuàng)建一系列列數(shù)據(jù)庫對象象外,還要創(chuàng)創(chuàng)建一系列的的應用程序,,不同的應用用程序執(zhí)行不不同的操作。。對于一般用用戶來講,使使用數(shù)據(jù)庫系系統(tǒng)是通過使使用用戶管理理應用程序開開始的,往往往限制其使用用一些應用程程序的權(quán)力。。對于這種情情形,處理辦辦法是:在數(shù)數(shù)據(jù)庫和應用用程序之間建建立用戶管理理應用程序?qū)訉哟危瑢γ恳灰粋€用戶,授授予相應的數(shù)數(shù)據(jù)庫權(quán)限和和使用應用程程序的權(quán)限。。一般用戶的配配置:系統(tǒng)級級權(quán)限僅限于于角色CONNECT,,對象級權(quán)限限僅限于相關(guān)關(guān)應用系統(tǒng)的的自定義角色色,應用程序序使用權(quán)限僅僅限于相關(guān)應應用程序的使使用級別。北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計應用系統(tǒng)的一一般用戶在應用系統(tǒng)內(nèi)內(nèi)部進行多個個層次的檢查查和驗證:1)第一層::Oracle數(shù)據(jù)庫系系統(tǒng)層,判斷斷其能否建立立會話。2)第二層::應用程序的的使用權(quán)限,,檢查驗證用用戶能夠使用用哪些應用程程序。3)第三層::Oracle數(shù)據(jù)庫的的對象級權(quán)限限,判斷用戶戶能否操縱其其相應的對象象,對象級權(quán)權(quán)限是通過自自定義Oracle角色色來設置的。。北京郵電大學學軟件學院郭郭文文明2003.064.4.3ORACLE安全設計計在ORACLE數(shù)據(jù)庫中中,當一個個數(shù)據(jù)據(jù)庫用用戶被被創(chuàng)建建時,,系統(tǒng)統(tǒng)就為為該用用戶自自動創(chuàng)創(chuàng)建一一個與與用戶戶同名名的模模式。用戶戶和模模式的的概念念在某某種程程度上上是一一樣的的。模模式或或用戶戶可以以擁有有的對對象如如下圖圖。用用戶的的定義義應與與數(shù)據(jù)據(jù)庫的的對象象定義義結(jié)合合起來來。SchemaObjectsTables表表Triggers觸觸發(fā)器器Constraints約約束Indexes索索引Views視視圖Sequences序序列列發(fā)生生器Storedprogramunits存存儲儲過程程單元元(PL/SQL寫寫)Synonyms同同義詞詞User_defineddatatypes用戶戶定義義數(shù)據(jù)據(jù)類型型(Oracle8i以以后)Databaselinks數(shù)數(shù)據(jù)據(jù)庫連連接(分布布式數(shù)數(shù)據(jù)庫庫時使使用)北京郵郵電大大學軟軟件學學院郭郭文文明2003.06安安全設設計安全設設計舉舉例::createprofilegrace_5limitfailed_login_attempts3password_lock_timeunlimitedpassword_lift_time30password_grace_time5sessions_per_user2cpu_per_session10000idle_time60conenct_time480;createusercommidentifiedbycommdefaulttablespacedatatemporarytablespacetsp_tempquota15Mondataprofilegrace_5;grantconnect,resourcetocomm;創(chuàng)建配配置文文件創(chuàng)建用用戶授權(quán)北京郵郵電大大學軟軟件學學院郭郭文文明2003.06對對象設設計數(shù)據(jù)庫庫應用用系統(tǒng)統(tǒng)中肯肯定要要建立立大量量的模模式對對象,,這些些對象象應作作出合合理的的規(guī)劃劃,盡盡量減減少因因設計計不周周導致致性能能下降降、表表空間間不足足、用用戶權(quán)權(quán)限不不夠等等問題題的出出現(xiàn)。。表在創(chuàng)建建表時時,需需要注注意的的事項項如下下:1)對對于表表名、、列名名、約約束名名、索索引名名和聚聚集名名使用用符合合命名名規(guī)則則的并并帶有有描述述意義義的名名稱。。2)建建立相相應完完全的的、詳詳細的的文檔檔資料料。3)所所有表表都應應當規(guī)規(guī)范(規(guī)范范化至至少是是第三三泛式式)。。4)定定義允允許為為空的的列,,并保保留一一定的的存儲儲空間間。5)適適當?shù)氐厥褂糜镁奂?,,保留留一定定的存存儲空空間。。6)表表段應應放在在單獨獨的表表空間間中。。北京郵郵電大大學軟軟件學學院郭郭文文明2003.06對對象設設計表7)為為了減減少存存儲碎碎片產(chǎn)產(chǎn)生,,區(qū)間間大小小最好好是數(shù)數(shù)據(jù)塊塊的整整數(shù)倍倍。8)對對于應應用系系統(tǒng)中中頻繁繁使用用的數(shù)數(shù)據(jù)行行較少少的表表,考考慮使使用CACHE選項項,即即允許許其長長期保保持在在內(nèi)存存中,,避免免反復復讀取取,提提高性性能。。觸發(fā)器器觸發(fā)器器作為為Oracle標準準功能能的補補充提提供給給用戶戶。使使用它它通常常實現(xiàn)現(xiàn)如下下功能能:1)自自動生生成可可以派派生的的列值值。2)防防止無無效的的處理理。3)增增強復復雜的的安全全驗證證。北京郵郵電大大學軟軟件學學院郭郭文文明2003.06對對象設設計觸發(fā)器器4)增增強分分布式式環(huán)境境中跨跨節(jié)點點的引引用完完整性性。5)增增強復復雜的的業(yè)務務規(guī)則則。6)提提供透透明的的事件件登記記。7)提提供高高級的的審計計。8)維維護表表復制制的同同步。。9)采采集關(guān)關(guān)于訪訪問表表的統(tǒng)統(tǒng)計信信息。。盡管觸觸發(fā)器器可實實現(xiàn)許許多功功能,,但是是,能用其其他方方式實實現(xiàn)的的功能能盡量量避免免使用用觸發(fā)發(fā)器。過多多的觸觸發(fā)器器導致致復雜雜的內(nèi)內(nèi)部相相關(guān)性性,維維護和和管理理變得得復雜雜。特特別注注意觸觸發(fā)器器的語語句不不要太太多,不要要創(chuàng)建建遞歸歸調(diào)用用的觸觸發(fā)器器(如如一個個對象象的AFTERUPDATE的的活動動中又又有該該對象象的UPDATE操操作)。北京郵郵電大大學軟軟件學學院郭郭文文明2003.06對對象設設計索引索引一一旦建建立,,其使使用和和維護護都是是由Oracle自自動實實現(xiàn)的的。使使用它它應注注意::1)索索引可可以加加速查查詢,,但會會降低低修改改速度度,頻頻繁改改動的的表,,盡量量少建建索引引。2)索索引段段應存存儲在在獨立立的表表空間間中。。3)為為減少少存儲儲碎片片,區(qū)區(qū)間大大小應應是數(shù)數(shù)據(jù)塊塊的整整數(shù)倍倍。4)為為了避避免索索引的的建立立和改改動操操作生生成大大量的的重做做日志志,影影響系系統(tǒng)的的性能能,在在創(chuàng)建建較大大索引引時,,使用用NOLOGGING選選項。。5)由由于索索引項項相對對于數(shù)數(shù)據(jù)項項要短短,使使一個個數(shù)據(jù)據(jù)塊中中容納納索引引的數(shù)數(shù)量要要比數(shù)數(shù)據(jù)行行多,,為了了提高高索引引在數(shù)數(shù)據(jù)塊塊一級級上操操作的的并發(fā)發(fā)性,,可適適當提提高INITANS參數(shù)數(shù)的值值。北京郵郵電大大學軟軟件學學院郭郭文文明2003.06對對象設設計索引6)索索引中中PCTFREE只只在創(chuàng)創(chuàng)建索索引時時使用用。對對于單單調(diào)增增加的的索引引列值值,可可以將將PCTFREE設設置得得較低低。因因為新新的索索引項項始終終是對對已經(jīng)經(jīng)存在在的索索引項項的追追加,,不需需要在在兩個個已經(jīng)經(jīng)存在在的索索引項項之間間插入入,所所以沒沒必要要預留留過多多的空空間。。如果果索引引列值值是任任意值值時,,則可可能需需要預預留較較多的的空間間。視圖對視圖圖的操操作類類似表表的使使用,,表可可以使使用的的地方方,視視圖一一般也也可使使用。。視圖圖可用用于安安全控控制和和簡化化查詢詢的目目的,,視圖圖只能能創(chuàng)建建或刪刪除,,不能能修改改。北京郵郵電大大學軟軟件學學院郭郭文文明2003.06對對象設設計序列應用系系統(tǒng)中中,經(jīng)經(jīng)常使使用順順序號號,并并發(fā)用用戶中中如何何保證證順序序號的的連續(xù)續(xù)且不不重復復。序序列發(fā)發(fā)生器器是數(shù)數(shù)據(jù)庫庫的一一種模模式對對象,,可以以解決決上述述問題題,為為應用用系統(tǒng)統(tǒng)開發(fā)發(fā)人員員提供供順序序號的的自動動管理理與維維護。。Init.ora中的的參數(shù)數(shù)SEQUENCE_CACHE_ENTRIES與序序列發(fā)發(fā)生器器有關(guān)關(guān),影影響內(nèi)內(nèi)存中中可以以保留留的順順序號號個數(shù)數(shù)。存儲過過程可以調(diào)調(diào)用存存儲過過程的的環(huán)境境有::另一一個存存儲過過程的的過程程體或或一個個觸發(fā)發(fā)器中中,一一個存存儲函函數(shù)可可以從從一個個SQL語語句中中調(diào)用用,其其使用用方式式與調(diào)調(diào)用Oracle內(nèi)內(nèi)置的的SQL函函數(shù)是是一樣樣的。。創(chuàng)建建存儲儲過程程時,,應當當注意意該存存儲過過程的的模式式歸屬屬。同義詞詞利用同同義詞詞可以以將應應用系系統(tǒng)中中模式式對象象的模模式屏屏蔽掉掉。北京郵郵電大大學軟軟件學學院郭郭文文明2003.06對對象設設計對象設設計舉舉例::createtableemp(empnonumber(5)primarykey,enamevarchar2(15)notnull,deptnonumber(3)notnullconstraintdept_fkeyreferencesdept)pctfree10pctused40tablespaceusersstorage(initial50Knext50Kmaxextents10pctincrease25);createorreplacetriggerinp_bill_detail_insertafterinsertoninp_bill_detailforeachrowbeginupdatepats_in_hospitalsettotal_costs=decode(tota
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年黨章黨史國史國情知識競賽題庫及答案(共220題)
- 《單片機技術(shù)應用》 課件
- 節(jié)能環(huán)保居間服務合同范例
- 道路交通規(guī)劃方案介紹
- 低空經(jīng)濟行業(yè)報告
- 醫(yī)院裝修大包合同參考范本
- 投資可行性分析報告包括哪些內(nèi)容
- 低空經(jīng)濟涉及的行業(yè)
- 汽車租賃股權(quán)轉(zhuǎn)讓居間合同
- 建筑節(jié)能工程施工方案
- qc工作崗位職責
- 【體能大循環(huán)】聚焦體能循環(huán)-探索運動奧秘-幼兒園探究體能大循環(huán)有效開展策略課件
- 采購人員廉潔從業(yè)課件培訓
- 2024年單招計算機試題題庫及答案
- XX藥業(yè)公司受試者日記卡
- 多組學數(shù)據(jù)的整合與分析
- 小學安全教育《平安校園 拒絕欺凌》劉偉【省級】優(yōu)質(zhì)課
- 靜脈輸液的不良反應及處理原則考核試題及答案
- 水利設施維護投標方案(技術(shù)標)
- 《建筑概論》期末考試試卷附答案
- 中國銀行供應鏈融資
評論
0/150
提交評論