


版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第一章DB2UDB概況1.1、DB2UDB勺產品家族UDB(UniversalDatabase)的前身為DB2是舊M公司開發的關系型數據庫管理系統。從其誕生之日開始,DB2就定位于要為各種規模的企業提供穩定、高效的數據管理支持。可以說,DB2是當前適用范圍最廣泛的數據庫產品。我們對DB2產品的劃分通常分為兩種方法:一種方法是按其所能支持的硬件和操作系統平臺進行劃分,另一種方法是按其所能支持的用戶規模的不同進行劃分。DB2產品幾乎覆蓋了當前所有流行的硬件和操作系統平臺。在大型機操作系統上,有DB2forOS/390、DB2forMVS/ESA、DB2forVSE和DB2forVM等多種產品;在由
2、舊M公司設計的小型機AS/400±,DB2已經嵌入在操作系統OS/400之中,成為其不可分割的一部分。DB2對UNIX操作系統的支持同樣十分廣泛,可以在AIX、HP-UXSolaris、SCO-UNIXSINIX等多種系統上找到其相應的版本。另外,在PC操作系統上,DB2可以對Window9x、WindowsNT以及OS/2等多種操作系統提供支持。UDB6.1還增加了對Linux操作系統的支持。以上我們所提到的只是DB2服務器所能運行的平臺,DB2的客戶端所能支持的平臺更為廣泛,除了以上提到的所有平臺之外,DB2的客戶端還能運行在Dos、Windows3.x、MacOS以及SGI公司
3、的IRIS系統之上。UDB產品除了能夠對各種硬件和操作系統平臺進行支持之外,為了適應不同用戶群的需要,UDB提供了不同級別的產品,對小到個人用戶,大到跨國企業的不同需求提供支持。以下是對UDB6.1版本不同級別產品的特點介紹:UDB衛星版:是專門為移動用戶設計的小型數據庫產品。適合于偶爾連接DB2控制服務器來與公司系統交換數據的單用戶系統。它既能允許用戶對本地數據進行各種修改,又可以接受遠程衛星控制器的集中管理,減輕本地用戶的管理負擔。該版本只能運行在Windows平臺。(該版本屬于UDB6.1版本新增版本)UDB個人版:是專門為個人用戶設計的功能完備的個人數據庫產品,允許用戶在本地建立數據庫
4、、更改數據、開發應用程序從本地對數據庫管理系統進行存取以及通過內置的客戶端對遠程數據庫服務器進行管理。該版本的限制在于不能對遠程應用程序提供全面支持。該版本可以運行在Windows、OS/2以及Linux平臺。UDB工作組版:適用于小型局域網的數據管理需求。具有UDB個人版的全部功能,并能夠對遠程應用程序提供全面支持。該版本可以運行在Windows、OS/2以及Linux平臺。(UD"作組版5.0可以運行在UNIX平臺)UD廊業版:簡稱為UDBEE,適用于企業級的數據管理需求。具有UDBT作組版的全部功能,并能夠利用對稱多處理(SMP技術提高系統性能。在它的程序包中,包含了DB2Co
5、nnect企業版,允許Intel平臺和UNIX平臺的客戶端應用程序訪問大型機和AS/400上的數據庫服務。UDB企業版可以運行在WindowsOS/2、Linux以及UNIX平臺。UD廊業擴展版:簡稱為UDBEEE適用于大規模的企業應用。大規模的企業應用的基本要求是穩定(宕機時間短)和高效(處理速度快),UDB企業擴展版能夠利用群集(cluster)和大規模并行處理(MPP技術提高系統的穩定性和性能。UD井富的產品線給用戶提供了極大的選擇余地。是構造企業信息系統的基石。1.2、對DB的存取方法對DB的存取可以通過SQL語言和UDB內置的API兩種手段來實現。不過這兩種手段不是能夠相互替代的。S
6、QL語言是國際標準,各數據庫廠商在實現時一般會有一定程度的擴展。SQL語言主要是完成對數據的查詢和更改、數據庫對象的建立及權限的控制等功能。而API主要是針對數據庫的管理任務,比如數據的備份和恢復、數據庫服務的啟動和停止等工作。在一個應用程序中,可能既需要用到SQL語言來完成對數據的存取,同時又需要調用API來完成管理工作。1.3、從WE既存取UDBInternet的廣泛使用帶來了從WEB寸企業數據進行存取的要求。如果開發人員要開發基于Web的UDB應用程序,可以使用以下方法:1.3.1、通過JDBC來存取UDBJDBC是SUN司提供的利用JAVA語言對關系型數據庫進行存取的標準。在WEBh我
7、們可以通過編寫JAVAApplet或者JAVAServlet來實現對UD副存取。其中Applet運行在客戶端,只需要一個支持JAVA的瀏覽器(如IE和Netscape等)即可運行,客戶端不需要安裝其它軟件。Applet可以通過指定端口與服務器端的JDBC服務器進行通信,提供對數據的存取。Servlet是適應當今瘦客戶機發展方向的一種編程模式,具有效率高,可移植性好等特點。Servlet運行在WEES艮務器端,需要Servlet引擎(如WebsphereApplicationServer)的支持,服務器端通常還需要安裝Run-timeClient組件。1.3.2、通過Net.Data來存取UDB
8、Net.Data是舊M公司開發的通過WEB寸關系型數據庫進行存取的工具。它提供了一種宏語言的開發和執行環境,同時具有HTML的簡易性和SQL語言的功能。開發人員可以按照Net.Data的語法編寫Net.Data宏,WEB用戶可以通過HTML頁面上的鏈接來調用相應的Net.Data宏,Net.Data解釋器會對其進行分析,可以提取Net.Data宏中的SQL成分,提交給數據庫,然后按照Net.Data宏中規定的格式將數據庫管理器傳回的結果格式化成HTML頁面,傳遞給瀏覽器。1.3.3、其它方法除了以上提到的方法之外,還有很多其他的解決方案。如ActiveServerPage、PHP等,具體的選擇
9、要看實際的需要。1.4、實例的概念和管理1.4.1 、實例的概念:數據庫管理器(DatabaseManager)是提供數據庫管理控制功能的程序。實例(Instance)就是邏輯的數據庫管理器,是真正的數據庫管理器在內存中的映象。實例提供了一個可標識的數據庫服務器的環境。在安裝了UDB的工作站上可以同時創建和運行多個實例,每個實例都有自己的內存空間,并具有單獨的權限控制。一般來說,在一臺機器上運行多個實例基于以下幾種考慮:對數據庫環境進行調試和開發的需要如果直接在提供正式數據服務的實例內部對進行各種調試和開發,有可能會影響系統的性能,甚至會使整個系統崩潰。這時用戶可以創建一個新的實例,在新的實例
10、內進行調試和開發,因為各個實例都有自己的內存空間,一個實例中的工作不會干擾其他實例正常的數據庫服務。出于對安全性的考慮。因為每個實例有單獨的權限控制,我們可以為不同的實例設定不同的管理人員,加強安全性的控制。比如你可以把你的個人信息存放在由你控制的實例中,其他的實例擁有者無權查看。出于優化的考慮不同的數據庫可能會需要不同的數據庫管理器的配置參數來達到最優的性能,如果把它們放到同一個實例中,不能滿足需要。當然,系統中的實例不是越多越好,如果在系統中創建的實例過多,不僅會造成額外的資源消耗(內存、硬盤空間等),也會增大管理開銷。每個實例在創建后都會有自己的配置文件,文件內的參數會影響該實例的性能。
11、數據庫在建立時還會自動地產生一組系統編目表,系統編目表實際上就是DB2數據庫的數據字典,它詳盡地描述了數據的物理結構和邏輯結構。在系統編目表中保存著各種數據庫對象的定義、用于查詢優化的統計信息以及系統授權信息。是一個數據庫中極其重要的組成部分。1.4.2 、實例的管理:要創建一個實例,可以使用db2icrt命令,命令語法如下:db2icrt-aAuthType-pPortName-sInstType-uFencedIDInstName其中:-aAuthType是實例的認證類型(可以為SERVERCLIENT、DCS、DCKSERVER_ENCRYPT)CS_ENCRYPTDCE_SERVER_
12、ENCRYPT勺一種)。-pPortName是此實例要使用的端口名或端口號。-sInstType是要創建的實例的類型(eee、ee或client)。-uFencedID是用戶名,被隔離UDF和被隔離的存儲過程將在該用戶名之下運行。InstName是實例的名稱。要列出當前系統上創建的所有實例,可以使用db2ilist命令。要刪除某個實例,可以使用db2idrop命令。1.4.3 、實例級的操作在DB2中,某些任務只能在實例級別上執行。比如,創建數據庫,更新數據庫管理器配置參數等工作。這時候,就需要應用程序連接到特定的實例之上,然后才能進行操作。要連接到一個實例上,用戶可以使用ATTACH令,語法
13、為:attachto實例名user用戶名using用戶口令如果用戶在執行實例級別的任務時,沒有使用ATTACH命令,則系統將使用在DB2INSTANC蝦境變量中指定的缺省實例來試圖完成該任務。1.4.4、數據庫管理服務器(DAS:UDB的數據庫管理服務器實際上也是一個實例,只不過這個實例不是用于數據服務的,而是用于管理目的。數據庫管理服務器提供以下功能:接受遠程客戶端的管理請求,將遠程的管理請求在數據庫服務器端實現允許用戶進行任務調度允許用戶對系統進行遠程監控響應DB2Discovery,為其提供系統信息數據庫管理服務器可以在系統安裝時自動生成,也可以在安裝后手工創建,在一個數據庫節點中只能有
14、一個數據庫管理服務器。1.4.5、數據庫管理服務器的使用如果沒有在安裝時創建數據庫管理服務器,可以使用命令手工創建。具體命令如下:dasicrt管理服務器的名字(UNIX平臺)db2admincreate(INTEL平臺)啟動和停止數據庫管理服務器的命令:db2adminstart啟動管理服務器db2adminstop停止管理服務器顯示當前數據庫管理服務器名:dasilist(UNIX平臺)db2admin(INTEL平臺)刪除當前數據庫管理服務器:dasidrop管理服務器的名字(UNIX平臺)db2admindrop(INTEL平臺)1.5、DB2環境變量的設置1.5.1、DB2環境變量除
15、了實例配置文件和數據庫配置文件中所包含的參數之外,還有一些配置參數對數據庫環境起到控制作用。這些配置參數分為三類:環境變量:這類變量的設置方法因操作系統的不同而有所差異。例如在WindowsNT環境中,選擇控制面板系統環境來設置;在OS/2中則要更改config.sys文件。這類變量在更改后很可能需要重新啟動系統才生效。實例級登記項:作用范圍是某一特定實例。可以用db2set命令來設置。更改后需要重新啟動該實例才生效。全局級登記項:作用范圍是整個數據庫系統。可以用db2set命令來設置。更改后需要重新啟動所有實例才生效。舉例:變量類型變量名稱變量作用環境變量DB2INSTANCE缺省的DB2實
16、例,如果沒有顯式地連接到某個實例,則所有的操作都被假定是對該實例進行的。環境變量DB2DBDFT缺省的數據庫,如果沒有顯式地連接到某個數據庫,則所有的操作都被假定是對該數據庫進行的。實例級登記項DB2COMM設置該實例用那種網絡協議與客戶端通信。全局級登記項DB2SYSTEM該DB2系統的名字。全局級登記項DB2ADMINSERVER該系統上所使用的數據庫管理服務器的名字系統在檢查系統的變量時,按照先環境變量,再實例級登記項、最后全局級登記項的順序來搜索。1.5.2、db2set命令db2set命令可以用來管理和設置DB2的登記項,命令語法如下:db2set<option>vari
17、able=value其中常用的命令選項:-g:更改全局級變量-i:instance如果更改的是實例登記項,指定該實例的名字-l:列出所有的實例登記項-lr:列出所有的登記項例子:db2setDB2ADMINSERVER顯示當前的數據庫管理服務器db2setDB2COMM=TCPIP,NETBIOS設置缺省實例的交流協議為TCP/IP和NETBIOSdb2set-all列出當前所有的登記項的值1.6、訪問控制一權限1.6.1、DB2訪問控制的層次結構DB2中的訪問控制層次如上圖所示。可以對DB2的用戶賦于不同級別的權力和各種特權。其中權力(Authorities)是對一組數據庫對象進行存取的特權
18、集,有特定的名稱。而特權(Privileges)則是對特定對象訪問的權利。權力(Authorities)分為以下級別:(1)、SYSADM系統管理該權限是一個實例中的最高權限。可以完成一個實例范圍內任何管理工作。可以通過實例配置變量中的SYSADM_GRO郵來指定一個用戶組擁有該權限。如果該參數為空,在WindowsNT環境下,創建該實例的用戶擁有該權限;在UNIX環境下,與實例同名的用戶擁有該權限。(2)、SYSCTRL系統控制該權限可以完成系統中的管理功能,但不能訪問數據。但擁有該權限的用戶可以創建數據庫,并管理自己創建的數據庫中的數據。可以通過實例配置變量中的SYSCTRL_GROUP來
19、指定一個用戶組擁有該權限、SYSMAINT系統維護該權限只能完成系統中與維護有關的任務,但不能訪問數據,而且擁有該權限的用戶不能創建數據庫。可以通過實例配置變量中的SYSMAINT_GROUP數來指定一個用戶組擁有該權限。、DBADM-數據庫管理該權限是數據庫級的權限,可以完成數據庫的管理工作。該權限可以通過SQL語句授予。四種級別的權力對比如下:功能SYSADMSYSCTRLSYSMAINTDBADM移植數據庫可以更改實例配置參數可以賦予或撤消DBADM-限可以指定SYSCTRL!可以指定SYSMAINT!可以更改數據庫目錄可以可以中斷應用程序可以可以創建/刪除數據庫可以可以創建/刪除表空間
20、可以可以利用恢復建立一個數據庫可以可以更改數據庫配置參數可以可以可以備份數據庫和表空間可以可以可以恢復一個存在的數據庫可以可以可以執行前滾恢復可以可以可以啟動/停止實例可以可以可以恢復表空間可以可以可以使用TRACED具可以可以可以獲取實例和數據庫的快照信息可以可以可以查詢表空間狀態可以可以可以可以更改日志歷史文件可以可以可以可以休止表空間可以可以可以可以使用RUNSTATS:具可以可以可以可以對表做LOAD可以可以讀日志文件可以可以可以創建/刪除/激活事件監視器可以可以可以第二章DB2的圖形用戶界面2.1、DB2的圖形界面概述在UDB之前的DB2產品中,提供給用戶的圖形界面很少。大部分的管理
21、工作和操作只能通過手工鍵入命令的方式來實現。UDB的出現改變了這一現狀,它提供了豐富的圖形化工具,使得管理工作變得更加輕松。2.2、DB2的圖形化工具2.2.1、客戶端配置工具一CCA要對遠程數據庫進行存取,首先要設置從客戶端到遠程數據庫的網絡連接。這個過程是一個比較復雜的過程,需要用戶對網絡參數、配置命令要有一定程度的了解。CCA就是一個用來幫助用戶設置從客戶端到遠程數據庫連接,減輕用戶負擔的工具。它提供了三種配置方法供用戶選擇:a、人工方法該方法對用戶的要求較高,需要用戶了解要連接的數據庫服務器的相關信息,例如使用那些網絡協議、要連接的數據庫的名稱等。用戶可以通過CCA供的界面輸入網絡連接
22、所需信息,完成連接配置。b、自動搜索方法該方法不需要用戶有任何網絡知識,它會自動利用一種叫DB2Discovery的機制在局域網中自動搜索DB2服務器。它會與遠程數據庫節點上的數據庫管理服務器(DA0進行通訊,然后將數據庫管理服務器搜集的信息返回。用戶可以根據返回信息選擇要連接的數據庫。c、載入配置文件方法該方法允許從要連接的數據庫所在的服務器端或者從已經配置成功的客戶端生成一個配置文檔。在文檔中包含了相應的配置信息,用戶可以在CCA中載入該文檔,完成連接配置。用戶可以通過以上任一種方法進行網絡配置,完成對遠程的數據庫的連接,CLI/ODBC數據源的配置,將應用程序綁定到數據庫上等工作。CCA
23、除了可以從DB2桌面的文件夾中進行存取,也可以在命令行下鍵入db2cca命令存取。具體界面如下圖。2.2.2、產品信息和文檔UDB提供了豐富的幫助信息。幾乎所有的信息都可以通過信息中心(InformationCenter)來存取。在信息中心中,我們可以按照以下幾種方法獲取相關信息:任務:獲取完成特定任務所需的信息書籍:UD璇機提供了許多技術手冊,如管理員手冊、開發人員手冊等等。用戶可以通過這些聯機手冊來查找信息。疑難:可以根據你遇到的疑難錯誤來查找相應的解決方法。樣例程序:可以查找到各種語言、各種接口進行數據庫編程的例子。Web信息:指引你到相關Web站點上獲取相應的信息。除了這幾種手段以外,
24、信息中心還提供了強大的搜索工具,幫助你在聯機手冊中進行全文檢索,找到匹配的關鍵詞。信息中心除了可以從DB2桌面的文件夾中進行存取,也可以在命令行下鍵入db2ic命令存取。具體界面見下圖。蜻金河時SHg耽零-解苔於行任矗蘋而尋F氐M拆R天霜,焦命里壬>佝寮珈&甘gwE三IaKTnr*SltqlBnS攵IT:莎里別二I豆Tiff幸畦在謬玉斤序雪曲識用F矗電諾專記ii芭說璃SCL胃勺JS寰寧婚ISl十如|1坑古堂奇曲哽法6TLJMi«理n-SPKwi!士HE此商乏察*史做四FFI式寸理YEBAtft>1禪魅告軍(Mfi>雋K飾皓*陽出蕓成同用fttl-Br母丹&q
25、uot;ilajs逐史WllftW京乂閔了踣愁走眺|叫1_由S?房下和H用FHW.;fi式仟棵N"翌壬皿甫«8場庵H用二啜工利市市引何積日用=依予*率悝素習特&*圖:捋予0F*熟蕓庫尸廈恥抵間看甲剌悔西容不M厚KE崛京f化時均*在4更畦加加R«ir岑EHMVCi.l胃臥除了信息中心之外,還有一個小程序一第一步(FirstStep)來幫助新用戶按照一系列的步驟來熟悉數據庫操作。它可以幫助用戶建立一個樣例數據庫,查看樣例數據庫中的內容,以及對樣例數據庫進行操作。FirstStep除了可以從DB2桌面的文件夾中進行存取,也可以在命令行下鍵入db2steps命令存
26、取。具體界面如下圖。皿顯枷心Ui&JluA34!rlUJiffl<»”肇首JO戶,,«jU_0搟射。tiff*5W3M甲物L扣nwm3'3褶D*s_4M金0心31.-.二mF我口園:-勃莓王Hj卜如頃TuTm;l£Fare3L_'-t-iDUETisEa.DEFMP1W.3UETJSFS制CUPACT<qu&r呻口,-UBC3號用敬-._|呂_hiL-ILrlr;二1那5二二)SEOi-T_|建雄曲3三|宜用旭孕理告二I聞minima1n*tfp*芻rSCOLCP.EYSlT強冬翌TBCOLFR.5YBITFTECA.S
27、彌ELU.5T5ITMCA.n£yecon'Jt.gL.Tastgdaw.nr&ir到心.zl2.2.3、命令中心(CommandCenter)命令中心是用于輸入DB2命令的圖形化工具。可以說,命令中心就是一個圖形化的命令行處理器(CLP),我們可以在命令中心中輸入DB2命令或調用現成的命令腳本,執行后查看輸出結果。命令中心可以將已輸入的命令作為腳本保存在腳本中心中,也可以對保存在腳本中心中的腳本加以調度。另外,命令中心一個非常有用的功能是允許用戶通過它查看SQL語句的存取計劃,存取計劃中包含著SQL語句執行情況的統計結果,用戶可以通過命令中心為SQL語句生成存取計劃
28、,并以可視化的形式表現出來。命令中心可以通過系統菜單(WindowsNT操作系統)或控制中心(ControlCenter)來調用,也可以通過在命令行下鍵入db2cctr命令來執行。具體界面如下圖。R工具砸口,>口口堀51司;畫>t=姑丈r耳wJUgJ*Iffarq2.2.4、腳本中心(ScriptCenter)腳本中心的主要功能有:創建、編輯、保存和運行命令腳本(可以包括DB2命令和操作系統命令)運行一個以前保存的腳本文件對一個以前保存的命令腳本進行調度,指定其在特定的時間的運行,被調度的作業將以暫掛作業的形式將在下面介紹的日志工具中被監控。腳本中心的優點在于可以將命令以文件的方式
29、存放,重復利用,并且腳本中可以直接包含操作系統命令(在CLP中如果要執行操作系統命令需要在命令的前面加"!”)。腳本的運行狀態也可以在日志工具中查看到。腳本中心的具體界面如下圖。2.2.5、日志(Journal)通過日志可以查看幾類信息:作業信息包括暫掛作業(PendingJob)信息、正在運行的作業(RunningJob)信息以及已經完成的作業的信息。對于PendingJob,可以對其進行重新調度、顯示與它相關的腳本或立即運行它。恢復歷史信息提供了對數據庫進行的備份、恢復過程的詳細信息,比如:備份的時間、備份的類型等,這些信息實際都被保存在一個稱為恢復歷史文件的文件當中。警報信息包
30、含了系統發出的警報信息。系統信息包含了UD或據庫管理器生成的信息。日志除了包含以上信息以外,也可以對已經被腳本中心調度的作業重新進行調度。日志的具體界面見下圖。2.2.6、警報中心(AlertCenter)警報中心搜集所有數據庫管理器發出的警告信息,管理人員可以根據這些警告信息對某些系統錯誤進行分析。查找出系統的潛在問題。可將“警報中心”設置為自動打開,顯示已超過其閾值并因此處于警報或警告狀態的各種受監控對象。閾值的設置用可從“控制中心”調用的“性能監控程序”來完成。圖符的顏色指示警告的嚴重性。紅色圖符指示報警信號。黃色圖符指示警告。并顯示為性能變量返回的數據。1.2.7、許可證中心(Lice
31、nseCenter)許可證中心可以對UDB的許可證信息提供集中管理,可以允許用戶增添、更改和刪除UDB產品的許可證。用戶也可以瀏覽當前安裝在UDB系統上的許可證信息,比如:產品名稱、產品的版本、過期時間及允許的用戶數目等信息。具體界面見下圖。項啊*隆工具歌物回口jg知Ml建,F3U5落瞌茗膈MLWTzl*產昌故與皿中A應訐雌|場,|7r*-|尸苦OB2"UK煎丈回旦61EI酶日略廷錄炭注徹氏IP簞暗并伺用聲g集用2.2.8、控制中心(ControlCenter)控制中心是UDB的管理工具的核心,絕大多數的管理任務和對其他管理工具的存取都可以通過控制中心來完成。具體界面如下圖。控制中心
32、有如下組成部分:菜單條:菜單條在屏幕的頂部。從菜單條選擇菜單允許您執行許多功能,如關閉DB2工具、存取圖形工具以及存取聯機幫助和產品信息。可通過單擊菜單條上的每一項來熟悉這些功能通過菜單的方式完成對控制中心的存取。工具欄:位于菜單條下方的一組圖形按鈕,通過點擊可以調用其他的管理工具,如命令中心、腳本中心等以上所提到的工具對象窗格:對象窗格位于屏幕的左邊窗格中,它按照UD啜據庫對象的層次關系(UDB系統-實例一數據庫-數據庫內部對象)對系統進行組織,以樹狀的形式顯示。用戶可以方便地從中找到要管理的對象。對象窗格中的某些對象包含其他對象。對象左面的加號(+)指示該對象是折疊的。可單擊加號展開它。當
33、展開對象后,在它的左面會出現一個減號(-)。要折疊此對象,單擊減號。內容窗格:位于屏幕的右邊窗格中。此窗格顯示在對象窗格中選定對象包含的所有對象,例如,若您在對象窗格中選擇表文件夾,數據庫中所有的表都將出現在“內容”窗格中。若您選擇數據庫文件夾,內容窗格會變為實例中的所有數據庫。用戶可以在對象窗格或內容窗格中選擇要操作的對象,按鼠標右鍵按出彈出式菜單,能對該對象所進行的所有操作幾乎都包含在菜單中。控制中心除了可以從DB2桌面的文件夾中進行存取,也可以在命令行下鍵入db2cc命令存取。2.2.9、工具設置(ToolSettings)工具設置可以用來更改某些系統工具的設置,比如設定SQL語句之間的
34、分隔符、如果DB2實例沒有啟動,是否需要在UDB工具啟動的時候自動啟動實例。工具設置可以從工具欄上的圖形按鈕存取。具體界面如下圖。2.2.10、快速向導(SmartGuides)UDB中很多任務的完成涉及到很多術語和參數,如果用戶對這些信息不是很了解,會影響到任務的完成效果。為了能夠對這些用戶提供幫助,UDB中提供了很多快速向導。這些快速向導可以針對不同的任務向用戶提出一些比較淺顯的問題,根據用戶對問題的回答設定相應的參數。幫助用戶完成相應的任務。UDB中提供的快速向導分為以下幾類:對象創建類:在創建數據庫、表空間和表時提供幫助。數據庫管理任務:在備份和恢復數據庫時提供幫助。多點更改:在分布式
35、環境下,對涉及到多數據庫更改的事務進行控制。性能調節:幫助用戶對系統性能進行調節。具體的快速向導有:創建數據庫快速向導:允許用戶創建數據庫、分配存儲空間以及選擇基本性能選項。要調用它,選擇對象窗格中的“數據庫”圖符,單擊鼠標按鈕2,然后選擇創建->使用SmartGuide創建數據庫。創建表快速向導:此快速向導幫助用戶使用預定義的列模板來設計列,創建表的主關鍵字并將一個或多個表空間分配給表。要調用它,選擇“表”圖符,單擊鼠標按鈕2,然后選擇創建->使用SmartGuide創建表。創建表空間快速向導:此快速向導允許用戶創建一個新的表空間并設置存儲及性能選項。要調用它,選擇“表空間”圖符
36、,單擊鼠標按鈕2,然后選擇創建->使用SmartGuide創建表空間。索引快速向導:該快速向導幫助用戶確定對給定的一組SQL語句,要創建或刪除哪些索引,才能使給定的語句性能最優。要調用它選擇“索引”圖符,單擊鼠標按鈕2,然后選擇創建->使用SmartGuide創建索引。性能配置。此快速向導幫助您根據有關數據庫的用途來調諧數據庫。然后它對數據庫和實例建議新的配置參數,并在需要時自動應用它們。要調用它,選擇相應數據庫的圖符,單擊鼠標按鈕2,然后選擇使用SmartGuide配置。復原數據庫快速向導:此快速向導帶您經歷恢復數據庫的全過程。要調用它,選擇相應數據庫的圖符,單擊鼠標按鈕2,然后
37、選擇復原->使用SmartGuide復原數據庫。備份數據庫快速向導:它詢問用戶關于數據庫中的數據、數據庫的可用性以及可恢復性要求等基本問題。然后它建議一個備份方案、創建作業腳本并調度它。要調用它,選擇相應數據庫的圖符,單擊鼠標按鈕2,然后選擇備份->使用SmartGuide備份數據庫。配置多站點更新快速向導:該快速向導幫助用戶在分布式環境下,對涉及到多數據庫更改的事務進行控制。要使用它,選擇相應實例,單擊鼠標按鈕2,然后選擇多站點更新->使用SmartGuide配置。2.2.11、通用工具選項除了以上提供的工具之外,UDBS有幾個其它相關工具選項。例如:顯示SQL(ShowS
38、QL)顯示命令(ShowCommand)如果某個工具生成了SQL語句,比如創建表、索引等工具,那么在該工具界面上將有顯示SQL按鈕可用。類似地,生成DB2命令的工具將有顯示命令按鈕可用。單擊這兩個按鈕之一,可以查看該工具根據用戶在圖形界面中所做選擇而生成的SQL語句或DB2命令。幫助用戶了解該界面是如何工作的。另外該選項也允許用戶將語句或命令另存為腳本以備將來使用。若用戶希望再次運行相同的語句或命令,可以不必重新輸入SQL語句或DB2命令。一旦SQL語句或DB2命令已保存到腳本中,用戶可以調度腳本、編輯此腳本進行更改或創建類似的腳本而不必重新輸入語句或命令。顯示相關對象(ShowRelated
39、)顯示相關項顯示表、索引、視圖、別名、觸發器、表空間、“用戶定義函數”以及“用戶定義類型”之間的直接關系。顯示相關對象可以幫助用戶了解一個對象與哪些對象相關,分析數據庫的結構以及判斷可能執行的操作會造成的影響。例如,如果用戶希望刪除有從屬視圖的表,顯示相關項會告訴用戶如果進行刪除操作后,哪些視圖將變為無效視圖。從“控制中心”的內容窗格中的很多對象中,單擊鼠標按鈕2。都會看到“顯示相關對象”的選項。第三章數據移動3.1、數據移動概述在數據庫的使用過程中,經常需要將一個數據庫中的數據遷移到另外的一個數據庫中。為了實現這種功能,我們可以使用數據庫復制技術,這種技術在大多數的關系型數據庫中都有相應的實
40、現,不過這種方法對管理的要求較高,而且需要網絡的連接。更常用的方法是利用某種類型的外部文件作為中介,將一個數據庫中的某個表中的數據導出到一個外部文件中,然后把該文件中的數據導入到另外一個數據庫中。DB2中實現以上功能的主要工具有三個:EXPORTIMPORTLOAQ其中EXPORT功能是將表中的數據導出到外部文件中;而IMPORTSLOAD的功能是將外部文件中的數據導入到一個表中。IMPORTSLOAD勺功能類似,但在實現手段上有很大差異。能夠被DB2所支持用作數據移動的中間文件的格式有四種:非定界ASCII碼文件(ASCII)、定界ASCII碼文件(DELASCII)、WS咬件和PC/IXF
41、文件。其特點是:ASCII:純文本格式,每個數據列之間中有分隔符,但數據行之間沒有分隔符。ASCII文件不能被EXPORT持。、DEL:純文本格式,數據列之間有分隔符,數據行之間也有分隔符。WSF:Lotus1-2-3工作表格式。WS成件不能被LOADt持。PC/IXF:一種非常通用的格式,被多種數據庫管理系統所支持。可以用作在異種數據庫中進行數據轉移。3.2、EXPORT功能和使用EXPORT用于將一個表或多個表中的數據導出到外部文件中。下面是EXPORT勺一個例子:db2connecttosampledb2exporttomyfileofixfmessagesmsgselectstaff.
42、name,staff.dept,org.locationformorg,staff,whereorg.deptname=staff.dept在該例中,staff和org中的相應數據將被輸出到myfile文件中,該文件為PC/IXF格式。注意事項:在做EXPORTS前,首先要連接到相應的數據庫上。因為要對表或視圖(EXPOR咬持對視圖進行操作)進行SELECT作,執行EXPORT勺用戶至少要有相關表或視圖上的SELECT限。如果使用PC/IXF文件,文件中將包含表中的索引定義。可以通過DB2Connect將主機上的數據導出到外部文件中。3.3、IMPORT勺功能和使用IMPORT可以被看作是EX
43、PORT勺逆過程,用于將數據從外部文件中導入到數據庫之中。下面是一個IMPORT勺例子:db2connecttomusicdbdb2importfromartexprtofixfmessagesartmsgcreateintoartistsin<tablespace>indexin<indextablespace>longin<longtablesapce>在該例中,artexprt文件的數據被導入到表artists中,這個表在IMPORT前并不存在,系統將根據artexprt文件的格式創建表后,再進行數據導入。注意事項:在做IMPORTS前,首先要連接到相
44、應的數據庫上。因為要對表或視圖(IMPORT持對視圖進行操作)進行修改操作,執行EXPORT勺用戶至少要有相關表或視圖上的相關權限(依據導入模式的不同而不同)。比如,使用INSERT模式,至少要有相應表上的INSERT權限;如果使用CREATE莫式,則需要數據庫上的CREATETAB限。如果使用CREATE莫式,必須使用PC/IXF文件進行數據導入。可以通過DB2Connect向主機上的數據庫導入數據。3.4、LOAD勺功能和使用3.1、LOAD既述LOAD勺功能與IMPOR樓似,但實現的方式有很大區別。其操作方式更加貼近底層。LOAD把要導入的數據格式化成數據頁,利用并行I/O寫入存儲介質。
45、在LOAD過程中,只進行極少量的日志記錄,而且不進行約束檢查。因此,LOAD導入的速度要比IMPORT快很多,尤其是數據量比較的的時候,LOAD勺速度優勢十分明顯。LOAM以從三種格式的文件進行數據導入,分別是非定界ASCII碼文件、定界ASCII碼文件和IXF文件格式。LOAD支持WSFt件作為數據導入文件。3.4.2、LOAD勺三個階段與IMPORT!比,LOAW然在速度上有明顯的優勢,但對管理上的要求比較高。LOAD可以分成三個階段。第一個階段叫LOAD階段。在這個階段中,數據被導入到表中,如果表上有索引存在,LOAD等按照索引定義搜集索引關鍵字,然后進行排序。如果有不符合表定義的數據行
46、,LOAD務會把它們放到一個文件(DUMPFILE中,同時在消息文件(MESSAGEFILE)中進行記錄。如果在命令中指定了SAVECOUNT數,LOAD務每隔一定數目的數據行進行一次保存。第二個階段叫BUILD階段。在這個階段中,LOAD會利用在LOAD介段搜集的索引關鍵字構造索引。如果表上沒有索引,這個過程將被忽略。另外,如果表上定義了唯一性約束,LOAD會在這個階段進行檢查。如果有違反唯一性約束的數據行,LOAD將會把它們拷貝到一個特殊的表一例外表(ExceptionTable)中。相應的信息會保存在信息文件(MESSAGEFILE中。第三個階段叫DELETE階段。在這個階段中,所有違反
47、唯一性約束的行將被從表中刪除。3.4.3、異常情況的處理由于某些操作的失敗,表空間可能處于某種異常狀態。表空間的狀態可以通過DB2LISTTABLESPACES如果狀態的編碼為0x0000,表明表空間狀態正常,否則表明表空間處于某種異常狀態。比如0x0008表明表空間處于裝載掛起(LOADPENDING狀態,0x010表明表空間處于刪除掛起(DELETEENDING狀態,0x020表明表空間處于備份掛起(BACKUPENDING狀態。上面提到的幾個狀態都是在LOAD±程中有可能發生的。我們下面就來探詢其原因及解決辦法。3.4.4.1、LOADPENDING態如果LOA弟于用戶的錯誤而
48、沒有運行,比如指定的數據輸入文件不存在或者要載入數據的表不存在,則對表空間的狀態不會有任何影響。如果LOADfe向表中導入數據的時候出現了錯誤,LOA繪終止,同時將要導入數據的表所在的表空間置于LOADPENDIN啾態。如果表空間處于LOADPENDING除了使用LOA皿具對表空間進行操作來消除LOADPENDIN猷態以外,不能對該表空間進行其他操作。出現了LOADPENDIN猷態以后,應該對LOA時成的MESSAGE件進行檢查,查看是在LOAD勺哪一個階段出現的問題。然后可以使用LOAD的RESTARTS®重新進行LOADLOAD會自動的從上一個一致性點進行恢復。比如指定了SAVE
49、COUNT為100,在導入到531行記錄時出現異常終止,則LOA繪從第501條記錄重新開始導入。如果是在LOAE程中的BUILD階段和DELETED段時出現了錯誤,LOAD會從這兩個階段的起始點重新開始。如果利用RESTART項后,LOA葫它夠成功,則LOADPENDING狀態可以被消除。如果使用RESTART項仍然不能成功,則可以使用TERMINATE項來終止LOAD過程,同時消除LOADPENDING犬態。如果我們在終止LOA明使用了INSERT選項,貝U可以將表恢復到LOAD以前的狀態。如果我們使用的是REPLACE項,則表中的數據被清空。3.4.4.2、BACKUPPENDINGLOA
50、DPENDING狀態是LOAD失敗后出現的異常狀態。但即使LOAD成功了,也不能保證表空間處于正常狀態,這取決于LOAD時選擇的復制選項。如果我們選擇的是COPYYES缺省選項),則LOAD成功后會將表空間置成BACKUPPENDIN秩態,需要對該表空間進行備份才能消除;如果我們選擇的是COPYYES則系統在LOAD過程中自動對載入的數據進行備份,LOAD成功后表空間處于正常狀態;如果我們選擇的是NONRECOVERABLE系統在LOAC程中不對載入數據進行備份,在LOAg功后也不把表空間置于BACKUPPENDING。之所以LOAD要提供幾種復制選項的原因是由于出于數據完整性的考慮。我們在前
51、面已經介紹過,LOACR做很少的日志,導入的數據不被記錄在日志之中。如果在LOAD以后,數據庫崩潰了,LOADH入的數據將無法得到恢復,造成數據的不完整。如果使用COPYNO選項,系統會強制用戶在LOAD之后對表空間進行備份,如果以后需要對數據庫進行恢復,則可以從中恢復LOAL入的數據;如果使用COPY丫£馳項,貝U系統在LOAD過程中會自動對導入的數據進行備份,可以用于日后的恢復;如果使用NONRECOVERAB,則等于用戶明確表示日后不想恢復LOAD#入的數據,這個選項一般用于接收數據導入的表被用于只讀操作,如果需要對數據進行恢復,重新進行LOAD可以。3.5、IMPORf!LO
52、AD勺對比IMPORT和LOAg功能上相似,但在實現方式和使用上有很大不同,我們將通過下表將這兩中工具進行一下對照。IMPORTLOAD說明在導入大里數據時速度較使在導入大量數據時速度明顯比IMPORTSLOAD將數據格式化成數據貝的形式直接寫入數據庫如果使用IXF文件格式,表和索引可以不存在在導入數據之前,表和索引必須存在IMPORTS以在導入數據時創建表和索引支持WSFt件格式不支持WSFt件格式能夠對表和視圖進行IMPORTLOAD勺對象必須是表在進行IMPORTS,其他程序能夠對表進行存取在進行LOADB寸,其他程序不能對表進行存取LOAD#導入數據的表所在表空間置為排它狀態導入的所有
53、數據都被日志所記錄LOADR做極少量的日志IMPORT激活觸發器LOAM會激活觸發器IMPORT可以使用COMMITCOUNT數指定每隔一定數目的數據行就進行一次提交,如果IMPORT敗,可以從最后的一次提交點重新開始。LOAD可以使用SAVECOUN參數指定每隔一定數目的數據行就進行一次保存,如果LOAD敗,可以從最后的一次提交點重新開始。TIMPORT使用的是數據庫內部的臨時表空間LOAD使用的是數據庫以外的臨時空間所有的約束在IMPORTS程中都將被總結在LOAD±程中只檢查唯一性約束LOAD關閉約束檢查,需要在LOA斯用SETINTEGERITY消除表上的CHECKPENDI
54、NG在IMPORTS程中,當每一行被導入時,索引關鍵字被插入到索引中在LOAD過程中,LOAD在LOA晰段搜集索引關鍵字,在BULID階段統一生成索引如果需要重新搜集統計信息,在IMPORTS使用RUNSTAT工具如果需要重新搜集統計信息,可以在LOAD使用RUNSTATC具,也可以在LOAD±程中進行搜集在LOAM直接搜集統計信息會延長LOA所需時間IMPORT能夠被DB2Connect支持LOAD能夠被DB2Connect支持數據導入文件必須在執行IMPORT勺節點上數據導入文件必須在要導入數據的數據庫所在的節占上八、_L-IMPORTS需要備份根據復制選項的不同,可能需要進行備
55、份IMPORT入的數據在日志中會有記錄第四章數據庫恢復在防止關鍵數據的丟失當中,恢復用戶自己的環境十分重要。有一些工具可以幫助用戶管理自己的環境和保證用戶可以對自己的數據實施充分的恢復措施。我們將討論在關系數據庫系統中的日志存檔概念,因為它屆丁數據庫的恢復功能的組成部分。日志文件是由DB2用來確保數據庫完整性,即使當出現某些不可預見的問題引起用戶系統癱瘓時,比如發生斷電故障,也能做到這一點。要充分理解日志工作的目的,首先解釋活楚工作單元(unitofwork)和事務(transaction)這兩個概念。4.1工作單元為了確保數據庫中數據的一致性,應用程序經常必須立即實施一些變更。類似,它必須禁
56、止所有的變更。這就叫做工作單元(unitofwork)。工作單元是應用程序進程內可恢復的操作序歹0。工作單兀是應用程序用來確保在數據庫中不引入不一致數據的基本機制。在任何時刻,應用程序進程都有一個工作單元,而應用程序進程的生存期可能涉及許多工作單元。4.2事務在象DB2®樣的關系數據庫中,工作單元被稱為事務(transaction)。事務是應用程序進程內的一個可恢復的SQ賺作序列。對數據庫的任何一次讀或寫都是在某次事務內完成的。任何一個成功地與數據庫相連接的應用程序都自動地啟動一個事務。應用程序必須通過發出一條SQLCOMMIT托確認)或SQLROLLBACK(回)語句去結束該事務。SQL的COMMITS句告訴數據庫管理員立即對數據庫實施事務中的所有數據庫變動(插入、更新、刪除)。SQL的ROLLBACKS句告訴數據庫管理器不實施這些變動,但將受到影響的行返回到開始該事務之前的原有狀態。4.3日志文件的使用為了確保用戶數據的完整性,DB2已經實施提前寫日志存檔模式。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫學科研課題申報書
- 2025年注冊會計師備考的資源利用與試題及答案
- 銀行從業資格證考試切入點分析試題及答案
- 精心準備2025年特許金融分析師考試試題及答案
- 項目管理考試的心理素質要求試題及答案
- 財務與審計的關聯與差異試題及答案
- 項目目標驗證與跟蹤機制的構建試題及答案
- 注冊會計師計算題試題及答案解析
- 教師課題研申報書
- 理財師與投資者的信任關系2025年國際金融理財師考試試題及答案
- 注冊會計師財務成本管理章節練習題三
- 第十一單元課題1化學與人體健康-2024-2025學年九年級化學人教版(2024)下冊
- 《子宮內膜異位》課件
- 文旅場所安全培訓課件
- 《商標侵權案例分析》課件
- 腦梗死的護理查房
- 導游講解的常用技巧教案
- 算法設計與分析 課件 6.3-貪心法應用-活動安排問題
- 車位租賃協議
- 肺結節診治中國專家共識(2024年版)解讀
- 地震監測設備使用安全檢查表
評論
0/150
提交評論