db2基礎(chǔ)操作手冊(cè)_第1頁
db2基礎(chǔ)操作手冊(cè)_第2頁
db2基礎(chǔ)操作手冊(cè)_第3頁
db2基礎(chǔ)操作手冊(cè)_第4頁
db2基礎(chǔ)操作手冊(cè)_第5頁
已閱讀5頁,還剩62頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、Inspur group2 了解db2結(jié)構(gòu),特點(diǎn) 學(xué)會(huì)db2常規(guī)管理維護(hù)技能3 開關(guān)機(jī)順序 安全性管理 存儲(chǔ)管理 軟件管理 網(wǎng)絡(luò)管理4 進(jìn)程管理 任務(wù)調(diào)度 性能監(jiān)控 ha簡(jiǎn)介5BufferpoolExtended MemoryDBHEAP(LOGBUF,CATALOGCACHE_SZ)UTILITYHEAP(BACKUP,RESTORE BUFFER)Package CacheLock ListSort Heap67 創(chuàng)建實(shí)例創(chuàng)建實(shí)例 db2icrtdb2icrtdb2icrt -u db2icrt -u fenced_user_IDfenced_user_ID instance_namein

2、stance_name in in UNIX 刪除實(shí)例刪除實(shí)例 db2idrop f db2idrop f instance_nameinstance_name 列出實(shí)例列出實(shí)例 db2ilistdb2ilist 移植實(shí)例移植實(shí)例db2imigr db2imigr instance_nameinstance_name 升級(jí)實(shí)例升級(jí)實(shí)例 db2iupdt db2iupdt instance_nameinstance_name8 db2 profile registriesdb2 profile registries 操作系統(tǒng)的環(huán)境變量操作系統(tǒng)的環(huán)境變量 db2 db2 dbmdbm 配置參數(shù)配置

3、參數(shù) db2 db db2 db 配置參數(shù)配置參數(shù)Db2環(huán)境參數(shù)控制著db2的操作和功能9 可以設(shè)置不同的級(jí)別可以設(shè)置不同的級(jí)別Instance/global/user/Instance/global/user/instance node/instance profileinstance node/instance profile 使用使用db2setdb2set命令,可以顯示,修改,刪除命令,可以顯示,修改,刪除 db2set alldb2set all顯示所有設(shè)置的顯示所有設(shè)置的 db2set db2set lrlr顯示所有可以設(shè)置的顯示所有可以設(shè)置的 db2 db db2 db 配置參數(shù)

4、配置參數(shù)10 windows windows Set Set paramparam=value=value unixunix kshksh和和bshbshExport Export paramparam=value=value unixunix cshcshSetenvSetenv paramparam=value=value11 讀取讀取Db2 get database manager configuration Db2 get database manager configuration Db2 get database configuration for Db2 get database

5、 configuration for database_namedatabase_name 設(shè)置設(shè)置Db2 update Db2 update dbmdbm cfgcfg using using paramparam value valueDb2 update db Db2 update db cfgcfg for for db_namedb_name using using paramparam value value12 服務(wù)器端配置服務(wù)器端配置-設(shè)置設(shè)置db2 profile registrydb2 profile registry的參數(shù)的參數(shù)DB2COMM,DB2COMM,如:如:-D

6、b2set db2comm=Db2set db2comm=tcpiptcpip-設(shè)置實(shí)例級(jí)參數(shù)設(shè)置實(shí)例級(jí)參數(shù)-Db2 update Db2 update dbmdbm cfgcfg using using svcenamesvcename 50000 50000-修改該參數(shù),需要重起實(shí)例修改該參數(shù),需要重起實(shí)例13客戶端可供選擇方式之一客戶端可供選擇方式之一-自動(dòng)搜索自動(dòng)搜索有兩種方法:有兩種方法:known known 和和 searchsearch需要需要serverserver端的管理服務(wù)器啟動(dòng)端的管理服務(wù)器啟動(dòng)db2admin startdb2admin start-配置管理服務(wù)器配置

7、管理服務(wù)器update admin update admin cfgcfg using discover search using discover search配置實(shí)例配置實(shí)例update update dbmdbm cfgcfg using using discover_instdiscover_inst enableenable配置數(shù)據(jù)庫(kù)配置數(shù)據(jù)庫(kù)update db update db cfgcfg for for db_namedb_name using using discover_dbdiscover_db enable enable14客戶端可供選擇方式之二客戶端可供選擇方式之二

8、-概要文件概要文件15客戶端可供選擇方式之三客戶端可供選擇方式之三-手工配置手工配置編目節(jié)點(diǎn)編目節(jié)點(diǎn)Catalog Catalog tcpiptcpip node node node_namenode_name remote remote ipip地址地址Server 50000Server 50000編目數(shù)據(jù)庫(kù)編目數(shù)據(jù)庫(kù)Catalog db Catalog db db_namedb_name as at node as at node node_namenode_name16 db2cmddb2cmd-命令行交互模式,可以直接輸入命令行交互模式,可以直接輸入Db2Db2命令,操作系統(tǒng)命令前加

9、!命令,操作系統(tǒng)命令前加!-命令行模式,可以直接識(shí)別操作系統(tǒng)命令,命令行模式,可以直接識(shí)別操作系統(tǒng)命令,db2db2命令前加命令前加db2db2執(zhí)行腳本執(zhí)行腳本-Db2 f Db2 f myfile.clpmyfile.clp-腳本中用腳本中用-做注釋做注釋1718命令行選項(xiàng)命令行選項(xiàng)Db2 list command optionsDb2 list command options獲得幫助獲得幫助Db2 ?Db2 ?Db2 ? CommandDb2 ? CommandDb2 ? Db2 ? SqlnnnnSqlnnnnDb2 ? db2nnnnDb2 ? db2nnnn19可以在控制中心調(diào)用可以

10、在控制中心調(diào)用圖形化的命令行處理器,功能類似圖形化的命令行處理器,功能類似特殊的功能特殊的功能-可以得到可以得到sqlsql的執(zhí)行計(jì)劃的執(zhí)行計(jì)劃-可以將可以將sqlsql加到腳本中加到腳本中20 配置功能,可以顯示和修改實(shí)例和數(shù)據(jù)庫(kù)參數(shù)配置功能,可以顯示和修改實(shí)例和數(shù)據(jù)庫(kù)參數(shù) 備份、恢復(fù)、前滾數(shù)據(jù)庫(kù)和表空間備份、恢復(fù)、前滾數(shù)據(jù)庫(kù)和表空間 管理本地和遠(yuǎn)程數(shù)據(jù)庫(kù),可以創(chuàng)建管理本地和遠(yuǎn)程數(shù)據(jù)庫(kù),可以創(chuàng)建/ /刪除、顯示、編目遠(yuǎn)程刪除、顯示、編目遠(yuǎn)程數(shù)據(jù)庫(kù)和去掉編目數(shù)據(jù)庫(kù)和去掉編目 管理存儲(chǔ)。創(chuàng)建、修改、刪除表空間。管理存儲(chǔ)。創(chuàng)建、修改、刪除表空間。21Create database db_name

11、using codeset GBK territory zh_CN22 模式是一組數(shù)據(jù)庫(kù)對(duì)象的集合,他提供了數(shù)據(jù)庫(kù)對(duì)象的邏模式是一組數(shù)據(jù)庫(kù)對(duì)象的集合,他提供了數(shù)據(jù)庫(kù)對(duì)象的邏輯分類輯分類 如果不指定模式名,則用當(dāng)前用戶名如果不指定模式名,則用當(dāng)前用戶名切換當(dāng)前模式可以用切換當(dāng)前模式可以用set current schema xxxset current schema xxx或或set set current current sqlidsqlid xxx xxx23系統(tǒng)模式:系統(tǒng)模式:-SYSIBM SYSIBM 基本的編目信息,不建議直接訪問基本的編目信息,不建議直接訪問-SYSCAT SYSC

12、AT 編目信息的只讀視圖,所有人具有查詢權(quán)限,推薦的獲取編目信息編目信息的只讀視圖,所有人具有查詢權(quán)限,推薦的獲取編目信息的途徑的途徑-SYSSTAT SYSSTAT 編目信息可更新視圖,可以影響優(yōu)化器編目信息可更新視圖,可以影響優(yōu)化器-SYSFUN SYSFUN 用戶定義函數(shù)用戶定義函數(shù)24創(chuàng)建新表: create table tabname(col1 type1 not null primary key,col2 type2 not null,.) 根據(jù)已有的表創(chuàng)建新表: A:create table tab_new like tab_old B:create table tab_new

13、as select col1,col2 from tab_old definition only25三種表空間三種表空間-常規(guī)表空間常規(guī)表空間-長(zhǎng)表空間長(zhǎng)表空間-臨時(shí)表空間臨時(shí)表空間兩類表空間兩類表空間-DMSDMS-SMSSMS默認(rèn)產(chǎn)生三個(gè)表空間:默認(rèn)產(chǎn)生三個(gè)表空間:SYSCATSPACE,USERSPACE1,TEMPSPACE1SYSCATSPACE,USERSPACE1,TEMPSPACE126創(chuàng)建視圖:create view viewname as select statement刪除視圖:drop view viewname 注:視圖唯一能修改的是引用類型列,改變列的范圍。其他定義

14、好了都不能修改。當(dāng)視圖基于的基表drop后,視圖變?yōu)闊o效。27使用索引的主要原因有兩條: 確保數(shù)據(jù)值的惟一性 提高 SQL 查詢的性能 使用索引時(shí),能夠按一種排列好的順序更迅速地訪問數(shù)據(jù),從而避免了使用臨時(shí)存儲(chǔ)排序數(shù)據(jù)這一耗時(shí)的任務(wù)。 創(chuàng)建索引:create unique index idxname on tabname(col.) 刪除索引:drop index idxname 注:索引是不可更改的,想更改必須刪除重新建。 索引的使用都是從WHERE中的條件得出的, 從謂詞是否使用索引可以將謂詞分為可索引謂詞和不可索引謂詞, 如下圖,我們列出了索引謂詞和不可索引謂詞。28謂詞類型可索引注 釋

15、ColconY代表,=,=,=,但是不是可索引的。Col between con1 and con2Y在匹配系列中必須是最后的。Col in listY僅對(duì)一個(gè)匹配列Col is nullYCol like xyz%Y模糊匹配%在后面。Col like %xyzN模糊匹配%在前面。Col1Col2NCol1和col2來自同一個(gè)表ColExpressionN例如:c1(c1+1)/2Pred1 and Pred2YPred1和Pred2都是可索引的,指相同索引的列Pred1 or Pred2N除了(c1=a or c1=b)外,他可以被認(rèn)為是c1 in(a,b)Not Pred1N或者任何的等價(jià)

16、形式:Not between,Not in,Not like等等。可索引謂詞可索引謂詞29數(shù)據(jù)庫(kù)中數(shù)據(jù)的完整性或有效性極其重要。確保插入數(shù)據(jù)庫(kù)的數(shù)據(jù)的有效性非常困難,DB2 提供了定義某些可并入數(shù)據(jù)庫(kù)的基于規(guī)則的約束或檢查的能力。在 DB2 中,可使用以下檢查來最小化將錯(cuò)誤數(shù)據(jù)插入表中的風(fēng)險(xiǎn): 可檢查一行中的一段,看它們是否符合所關(guān)聯(lián)列的數(shù)據(jù)類型和長(zhǎng)度。例如,“Geoff” 值不匹配數(shù)據(jù)類型為 INTEGER 的列,因而帶有該值的行會(huì)被拒絕,以這種方式來確保數(shù)據(jù)庫(kù)中數(shù)據(jù)的有效性。 若表上定義了主鍵約束,表中的各行必須在一列或共同構(gòu)成主鍵的多個(gè)列中具有惟一值。若插入的行中存在與現(xiàn)有鍵相同的鍵,則

17、新行將被拒絕。 若表上已定義了惟一約束,表中的各行必須遵循此約束,即具有惟一值或構(gòu)成惟一鍵的值組合。 若已定義了外鍵約束,表中各行的外鍵列或多個(gè)列必須具有與父表中一行的主鍵相匹配的值。在某些情況下,若一列或多個(gè)列定義為外鍵的一部分,而這個(gè)外鍵可為空,則空值也是可接受的。 若列上已定義了檢查約束,各行必須遵循此約束。例如,EMPLOYEE 表的 SALARY 列上的檢查約束可能會(huì)阻止應(yīng)用程序或用戶插入工資低于 0 的新員工記錄或行。插入表的任何 salary 值小于 0 的行都會(huì)被拒絕,從而最小化將錯(cuò)誤數(shù)據(jù)插入表中的風(fēng)險(xiǎn)。 3031 32 3334盡可能設(shè)置為盡可能設(shè)置為not nullnot

18、null,可以通過,可以通過defaultdefault的方式來解決的方式來解決insert nullinsert null的情況的情況查詢查詢 is nullis null35是一個(gè)數(shù)字型的字段,當(dāng)新行插入時(shí),是一個(gè)數(shù)字型的字段,當(dāng)新行插入時(shí),db2db2自動(dòng)產(chǎn)生一個(gè)唯一的數(shù)字自動(dòng)產(chǎn)生一個(gè)唯一的數(shù)字一個(gè)表中只能有一個(gè)列被定義有該屬性一個(gè)表中只能有一個(gè)列被定義有該屬性可以定義成可以定義成alwaysalways或或defaultdefault的方式的方式-AlwaysAlways方式,只能有方式,只能有db2db2產(chǎn)生,不允許應(yīng)用提供值產(chǎn)生,不允許應(yīng)用提供值-DefaultDefault方式,

19、可以由應(yīng)用提供值,不能保證唯一性方式,可以由應(yīng)用提供值,不能保證唯一性36 select distinct column-list select distinct column-list from table-list from table-list where where group by having group by having order by order by asease/ease/ease3738保留行表-左外連接中左邊的表。 -右外連接中右邊的表。 -全外連接中全部的表。替換 NULL 的表-左外連接中右邊的表 -右外連接中左邊的表 -全外連接中全部的表 39 404142

20、子查詢可以由內(nèi)連接和外連接代替,推薦做法子查詢可以由內(nèi)連接和外連接代替,推薦做法 inin、existexist可以由內(nèi)連接代替可以由內(nèi)連接代替select select projno,projname,d.deptno,deptnameprojno,projname,d.deptno,deptname from department d from department d left outer join project p on left outer join project p on p.deptnop.deptno= =d.deptnod.deptno; ;select select p

21、rojno,projnameprojno,projname from department where from department where deptnodeptno in in(select (select deptnodeptno from project); from project); not in not in、not existnot exist可以由外連接代替可以由外連接代替select select projno,projname,d.deptno,deptnameprojno,projname,d.deptno,deptname from department d fr

22、om department d left outer join project p on left outer join project p on p.deptnop.deptno= =d.deptnod.deptnowhere where jname is null; is null;select select projno,projnameprojno,projname from department where from department where deptnodeptno not in not in(select (select deptnodept

23、no from project); from project);43 內(nèi)建函數(shù)內(nèi)建函數(shù)-列函數(shù)列函數(shù): :avg,sum,countavg,sum,count, ,-操作函數(shù)操作函數(shù):+ :+ -類型轉(zhuǎn)換函數(shù)類型轉(zhuǎn)換函數(shù)decimaldecimal-其他其他 用戶自定義函數(shù)用戶自定義函數(shù)UDFUDF441、類型轉(zhuǎn)化函數(shù):、類型轉(zhuǎn)化函數(shù): 轉(zhuǎn)化為數(shù)字類型的:decimal, double, Integer, smallint,realHex(arg):轉(zhuǎn)化為參數(shù)的16進(jìn)制表示。 轉(zhuǎn)化為字符串類型的:char, varcharDigits(arg):返回arg的字符串表示法,arg必須為decim

24、al。 轉(zhuǎn)化為日期時(shí)間的:date, time,timestamp2、時(shí)間日期:、時(shí)間日期:year, quarter, month, week, day, hour, minute ,seconddayofyear(arg):返回arg在年內(nèi)的天值Dayofweek(arg):返回arg在周內(nèi)的天值days(arg):返回日期的整數(shù)表示法,從0001-01-01來的天數(shù)。 midnight_seconds(arg):午夜和arg之間的秒數(shù)。Monthname(arg):返回arg的月份名。Dayname(arg):返回arg的星期。45煙草產(chǎn)品事業(yè)部培訓(xùn)中心煙草產(chǎn)品事業(yè)部培訓(xùn)中心3、字符串函

25、數(shù):、字符串函數(shù):length,lcase, ucase, ltrim, rtrimCoalesce(arg1,arg2.):返回參數(shù)集中第一個(gè)非null參數(shù)。Concat (arg1,arg2):連接兩個(gè)字符串a(chǎn)rg1和arg2。insert(arg1,pos,size,arg2):返回一個(gè),將arg1從pos處刪除size個(gè)字符,將arg2插入該位置。left(arg,length):返回arg最左邊的length個(gè)字符串。locate(arg1,arg2,):在arg2中查找arg1第一次出現(xiàn)的位置,指定pos,則從arg2的pos處開始找arg1第一次出現(xiàn)的位置。posstr(arg1

26、,arg2):返回arg2第一次在arg1中出現(xiàn)的位置。repeat(arg1 ,num_times):返回arg1被重復(fù)num_times次的字符串。replace(arg1,arg2,arg3):將在arg1中的所有arg2替換成arg3。right(arg,length):返回一個(gè)有arg左邊length個(gè)字節(jié)組成的字符串。space(arg):返回一個(gè)包含arg個(gè)空格的字符串。substr(arg1,pos,):返回arg1中pos位置開始的length個(gè)字符,如果沒指定length,則返回剩余的字符。464、數(shù)學(xué)函數(shù):、數(shù)學(xué)函數(shù): Abs, count, max, min, sumC

27、eil(arg):返回大于或等于arg的最小整數(shù)。Floor(arg):返回小于或等于參數(shù)的最小整數(shù)。Mod(arg1,arg2):返回arg1除以arg2的余數(shù),符號(hào)與arg1相同。Rand():返回1到1之間的隨機(jī)數(shù)。Power(arg1,arg2):返回arg1的arg2次方。Round(arg1,arg2):四舍五入截?cái)嗵幚恚琣rg2是位數(shù),如果arg2為負(fù),則對(duì)小數(shù)點(diǎn)前的數(shù)做四舍五入處理。Sigh(arg):返回arg的符號(hào)指示符。-1,0,1表示。truncate(arg1,arg2):截?cái)郺rg1,arg2是位數(shù),如果arg2是負(fù)數(shù),則保留arg1小數(shù)點(diǎn)前的arg2位。5、其他:

28、、其他:nullif(arg1,arg2):如果2個(gè)參數(shù)相等,則返回null,否則,返回參數(shù)1煙草產(chǎn)品事業(yè)部培訓(xùn)中心煙草產(chǎn)品事業(yè)部培訓(xùn)中心47數(shù)據(jù)庫(kù)備份數(shù)據(jù)庫(kù)備份 是數(shù)據(jù)庫(kù)的一個(gè)完整的副本。除了數(shù)據(jù)外,備份副本還包含關(guān)是數(shù)據(jù)庫(kù)的一個(gè)完整的副本。除了數(shù)據(jù)外,備份副本還包含關(guān)于表空間、容器、數(shù)據(jù)庫(kù)配置、日志控制文件和恢復(fù)歷史文件于表空間、容器、數(shù)據(jù)庫(kù)配置、日志控制文件和恢復(fù)歷史文件的信息。注意,備份不會(huì)存儲(chǔ)數(shù)據(jù)庫(kù)管理器配置文件或注冊(cè)表的信息。注意,備份不會(huì)存儲(chǔ)數(shù)據(jù)庫(kù)管理器配置文件或注冊(cè)表變量。只有數(shù)據(jù)庫(kù)配置文件才會(huì)得到備份。變量。只有數(shù)據(jù)庫(kù)配置文件才會(huì)得到備份。要執(zhí)行備份,需要要執(zhí)行備份,需要 S

29、YSADMSYSADM、SYSCTRL SYSCTRL 或或 SYSMAINT SYSMAINT 權(quán)限權(quán)限48要為數(shù)據(jù)庫(kù)要為數(shù)據(jù)庫(kù) sample sample 執(zhí)行完整的離線備份,并將備份副本存儲(chǔ)在執(zhí)行完整的離線備份,并將備份副本存儲(chǔ)在 d:mybackups d:mybackups 目錄中,可以目錄中,可以使用以下命令:使用以下命令: BACKUP DATABASE sample TO d:mybackupsBACKUP DATABASE sample TO d:mybackups要使用其他選項(xiàng)為數(shù)據(jù)庫(kù)要使用其他選項(xiàng)為數(shù)據(jù)庫(kù) sample 執(zhí)行完整離線備份,可以使用以下命令:執(zhí)行完整離線備份

30、,可以使用以下命令:(1) BACKUP DATABASE sample (2) TO /db2backup/dir1, /db2backup/dir2 (3) WITH 4 BUFFERS(4) BUFFER 4096 (5) PARALLELISM 2 我們來更仔細(xì)觀察前面的命令:我們來更仔細(xì)觀察前面的命令: 1.表明要備份的數(shù)據(jù)庫(kù)的名稱(或別名)。表明要備份的數(shù)據(jù)庫(kù)的名稱(或別名)。 2.指定用于存儲(chǔ)備份的位置。指定用于存儲(chǔ)備份的位置。 3.表明在備份操作期間可以使用多少個(gè)內(nèi)存緩沖區(qū)。使用多個(gè)緩沖區(qū)可以提高性能。表明在備份操作期間可以使用多少個(gè)內(nèi)存緩沖區(qū)。使用多個(gè)緩沖區(qū)可以提高性能。 4

31、.表明每個(gè)緩沖區(qū)的大小。表明每個(gè)緩沖區(qū)的大小。 5.決定使用多少媒介讀決定使用多少媒介讀/寫進(jìn)程寫進(jìn)程/線程來進(jìn)行備份。線程來進(jìn)行備份。49DB2 事務(wù)日志對(duì)于恢復(fù)來說是至關(guān)重要的。它們跟蹤數(shù)據(jù)庫(kù)對(duì)象和數(shù)據(jù)上發(fā)生的變化。 主日志文件和輔助日志文件主日志文件和輔助日志文件主日志文件 是在建立第一個(gè)數(shù)據(jù)庫(kù)連接或者數(shù)據(jù)庫(kù)活動(dòng)時(shí)立即分配的。輔助日志文件 是在需要時(shí)動(dòng)態(tài)分配的。活動(dòng)日志活動(dòng)日志 如果以下兩個(gè)條件之一得到滿足,則一個(gè)日志被認(rèn)為是活動(dòng)的(active): 它包含關(guān)于尚未被提交或回滾的事務(wù)的信息。 它包含關(guān)于已經(jīng)被提交但是其更改還沒有被寫(具體化)到數(shù)據(jù)庫(kù)磁盤的事務(wù)的信息。 在線歸檔日志在線歸

32、檔日志 離線歸檔日志離線歸檔日志 501.1.配置日志空間配置日志空間 DB2DB2數(shù)據(jù)庫(kù)通過日志文件維護(hù)數(shù)據(jù)的完整性和一致性。數(shù)據(jù)庫(kù)通過日志文件維護(hù)數(shù)據(jù)的完整性和一致性。DB2 DB2 數(shù)數(shù)據(jù)庫(kù)的日志空間可通過如下公式計(jì)算:據(jù)庫(kù)的日志空間可通過如下公式計(jì)算:日志空間日志空間 = = (主日志文件(主日志文件 + +輔助日志文件)輔助日志文件) * * 日志文件尺寸日志文件尺寸 其中:其中:主日志文件由參數(shù)主日志文件由參數(shù) LOGPRIMARY LOGPRIMARY 控制,控制,二級(jí)日志文件由參數(shù)二級(jí)日志文件由參數(shù) LOGSECOND LOGSECOND 控制控制日志文件尺寸由參數(shù)日志文件尺寸

33、由參數(shù) LOGFILSIZ LOGFILSIZ 控制控制2. 2. 正確的處理日志滿正確的處理日志滿根據(jù)實(shí)際的情況配置以上相關(guān)參數(shù)。根據(jù)實(shí)際的情況配置以上相關(guān)參數(shù)。如果出現(xiàn)日志空間滿的情況,如果出現(xiàn)日志空間滿的情況,DB2 DB2 會(huì)將系統(tǒng)掛起。會(huì)將系統(tǒng)掛起。 這時(shí),應(yīng)這時(shí),應(yīng)該增加該增加 LOGSECOND LOGSECOND 參數(shù),而不要嘗試參數(shù),而不要嘗試 db2stop force db2stop force 或者或者 killkill。51一個(gè)數(shù)據(jù)庫(kù)的日志記錄的類型是由數(shù)據(jù)庫(kù)參數(shù) LOGARCHMETH1 決定的。當(dāng) LOGARCHMETH1 為 OFF(默認(rèn)值)時(shí),歸檔日志記錄被禁

34、用,循環(huán)日志記錄被啟用。為了啟用歸檔日志記錄,可以將 LOGARCHMETH1 設(shè)置為以下值中的任何一個(gè)值:LOGRETAIN:日志文件將被保留在活動(dòng)日志目錄中USEREXIT:日志的歸檔和檢索是由用戶提供的用戶出口程序自動(dòng)執(zhí)行的,這個(gè)出口程序必須由 db2uext2 調(diào)用。這個(gè)程序用于將在線歸檔日志移動(dòng)到與活動(dòng)日志目錄不同的一個(gè)目錄中,或者移動(dòng)到另一個(gè)媒介上。當(dāng)在 ROLLFORWARD 操作期間需要某些離線歸檔日志時(shí),這個(gè)程序還可以用于將離線歸檔日志取出到活動(dòng)日志目錄中。在 Windows 下,db2uext2 必須存儲(chǔ)在 sqllibbin 目錄中,在 UNIX 下,db2uext2 必

35、須存儲(chǔ)在 sqllib/adm 目錄中DISK:directory_name:與 USEREXIT 使用相同的算法。DB2 不調(diào)用用戶出口程序,而是自動(dòng)將日志文件從活動(dòng)日志目錄歸檔到指定的目錄TSM:management class name:與 USEREXIT 使用相同的算法。日志被歸檔到本地 Tivoli Storage Manger (TSM) 服務(wù)器上。management class name 參數(shù)是可選的。如果沒有指定該參數(shù),則使用默認(rèn)的管理類VENDOR:library_name:與 USEREXIT 使用相同的算法。日志是使用指定供應(yīng)商的庫(kù)來歸檔的由于向后兼容的原因,數(shù)據(jù)庫(kù)配

36、置文件仍然包含參數(shù) LOGRETAIN 和 USEREXIT。從 8.2 版開始,這兩個(gè)參數(shù)已經(jīng)被 LOGARCHMETH1 取代。如果更新 USEREXIT 或 LOGRETAIN 參數(shù),那么 LOGARCHMETH1 將自動(dòng)被更新,反之亦然。52在線備份在線備份BACKUP DATABASE sample ONLINE TO /dev/rdir1, /dev/rdir2BACKUP DATABASE sample ONLINE TO /dev/rdir1, /dev/rdir2由于在線備份允許用戶在執(zhí)行備份的同時(shí)訪問數(shù)據(jù)庫(kù),因此這些用戶作出由于在線備份允許用戶在執(zhí)行備份的同時(shí)訪問數(shù)據(jù)庫(kù),因

37、此這些用戶作出的更改很可能不會(huì)存儲(chǔ)在備份副本中。因此,僅僅憑借在線備份還不足以的更改很可能不會(huì)存儲(chǔ)在備份副本中。因此,僅僅憑借在線備份還不足以進(jìn)行恢復(fù),另外還需要備份操作期間收集到的相應(yīng)的日志。進(jìn)行恢復(fù),另外還需要備份操作期間收集到的相應(yīng)的日志。當(dāng)在線備份完成時(shí),當(dāng)在線備份完成時(shí),DB2 DB2 強(qiáng)制關(guān)閉當(dāng)前活動(dòng)日志(并將其歸檔),因此很強(qiáng)制關(guān)閉當(dāng)前活動(dòng)日志(并將其歸檔),因此很容易在備份完成時(shí)收集當(dāng)前活動(dòng)日志。容易在備份完成時(shí)收集當(dāng)前活動(dòng)日志。為了將日志也備份到備份副本中,可以使用為了將日志也備份到備份副本中,可以使用 BACKUP DATABASE BACKUP DATABASE 命令的命

38、令的 INCLUDE LOG INCLUDE LOG 選項(xiàng)。這樣可以確保即使丟失了日志,也仍然可以使用備份選項(xiàng)。這樣可以確保即使丟失了日志,也仍然可以使用備份鏡像中包含的日志來恢復(fù)到最小的時(shí)間點(diǎn)上。鏡像中包含的日志來恢復(fù)到最小的時(shí)間點(diǎn)上。例如,要對(duì)例如,要對(duì) sample 數(shù)據(jù)庫(kù)和日志進(jìn)行在線備份,并以數(shù)據(jù)庫(kù)和日志進(jìn)行在線備份,并以 /dev/rdir1 作作為目標(biāo)目錄,可以發(fā)出:為目標(biāo)目錄,可以發(fā)出:BACKUP DATABASE sample ONLINE TO /dev/rdir1 INCLUDE LOGS 53使用一個(gè)備份文件作為輸入,輸出是一個(gè)新的或已有的數(shù)據(jù)庫(kù)。要恢復(fù)到已有的數(shù)據(jù)庫(kù)

39、,需要 SYSADM、SYSCTRL 或 SYSMAINT 權(quán)限。要恢復(fù)到新的數(shù)據(jù)庫(kù),則需要 SYSADM 或 SYSCTRL 權(quán)限。54要執(zhí)行 sample 數(shù)據(jù)庫(kù)的恢復(fù),可以使用以下命令: (1)RESTORE DATABASE sample (2) FROM C:DBBACKUP (3) TAKEN AT 20060314131259 (4) WITHOUT ROLLING FORWARD (5) WITHOUT PROMPTING 上面的例子中: 1.表明要恢復(fù)的數(shù)據(jù)庫(kù)鏡像的名稱。 2.指定要從中讀取輸入備份文件的位置。 3.如果該目錄中有多個(gè)備份鏡像,該選項(xiàng)將基于時(shí)間戳(備份名稱的一

40、部分)標(biāo)識(shí)特定的備份。 4.如果一個(gè)數(shù)據(jù)庫(kù)啟用了歸檔日志記錄,那么當(dāng)該數(shù)據(jù)庫(kù)被恢復(fù)時(shí),它將自動(dòng)被置于 rollforward pending 狀態(tài)。這一行告訴 DB2 不要將該數(shù)據(jù)庫(kù)置于 rollforward pending 狀態(tài)。 5.當(dāng)執(zhí)行 RESTORE 時(shí),您將看不到任何提示。 55備份鏡像中包括日志文件,那么可以使用 RESTORE DATABASE 命令的 LOGTARGET 選項(xiàng)恢復(fù)日志文件。為了使用 C:DBBACKUP 目錄中的備份鏡像恢復(fù) SAMPLE 數(shù)據(jù)庫(kù),并將日志文件恢復(fù)到 C:DB2NODE0000SQL00001SQLOGDIR 目錄,可以發(fā)出:RESTORE

41、DATABASE sample FROM C:DBBACKUP LOGTARGET C:DB2NODE0000SQL00001SQLOGDIR 也可以通過使用 LOGS 關(guān)鍵字只恢復(fù)日志文件,而不恢復(fù)數(shù)據(jù)庫(kù): RESTORE DATABASE sample LOGS FROM C:DBBACKUP LOGTARGET C:DB2NODE0000SQL00001SQLOGDIR 56Db2move dbname export sn db2inst1 -u username p password Db2move dbname export sn db2inst1 -u username p pas

42、sword Db2move dbname import sn db2inst1 -u username p passwordDb2move dbname import sn db2inst1 -u username p password57EXPORT 實(shí)用程序使用一條 SQL SELECT 語句或 XQUERY 語句將數(shù)據(jù)從數(shù)據(jù)庫(kù)表提取到一個(gè)文件中。數(shù)據(jù)可以被導(dǎo)出到 DEL、IXF 或 WSF 文件中。建議在 export 中包括 MESSAGES 子句,以捕獲導(dǎo)出過程中遇到的錯(cuò)誤、警告和包含有用信息的消息。 要想成功地調(diào)用 EXPORT 實(shí)用程序,必須擁有 SYSADM 或 DBADM 權(quán)

43、限,或者擁有 EXPORT 命令中所訪問的表或視圖上的 CONTROL 或 SELECT 特權(quán)。 一個(gè)簡(jiǎn)單的導(dǎo)出的例子。下面的命令將 SELECT 語句的結(jié)果導(dǎo)出到一個(gè) DEL 格式的文件中。消息文件 msg.out 用于記錄有用的信息和遇到的錯(cuò)誤或警告:EXPORT TO myfile.del OF DEL MESSAGES msg.out SELECT , staff.dept, org.location FROM org, staff WHERE org.deptnumb = staff.dept; 58 IMPORT 實(shí)用程序用一個(gè)輸入文件將數(shù)據(jù)填充到一個(gè)表中,輸入

44、文件的文件類型可以是 ASC、DEL、IXF 或 WSF。目標(biāo)是一個(gè)表、一個(gè)類型化表(typed table)或者一個(gè)視圖。但是,不能導(dǎo)入到系統(tǒng)表、臨時(shí)表和物化查詢表。 例子:IMPORT FROM emp.ixf OF IXF MESSAGES msg.out CREATE INTO employee IN datatbsp INDEX IN indtbsp59下面顯示的 IMPORT 命令具有五個(gè)不同的選項(xiàng):IMPORT FROM file_name OF file_type MESSAGES message_file INSERT | INSERT_UPDATE | REPLACE |

45、REPLACE_CREATE | CREATE INTO target_table_name INSERT 選項(xiàng)將導(dǎo)入的數(shù)據(jù)插入表中。目標(biāo)表必須已經(jīng)存在。 INSERT_UPDATE 將數(shù)據(jù)插入表中,或者更新表中具有匹配主鍵的行。目標(biāo)表必須已經(jīng)存在,并且定義了一個(gè)主鍵。 REPLACE 選項(xiàng)刪除所有已有的數(shù)據(jù),并將導(dǎo)入的數(shù)據(jù)插入到一個(gè)已有的目標(biāo)表中。 使用 REPLACE_CREATE 選項(xiàng)時(shí),如果目標(biāo)表已經(jīng)存在,則導(dǎo)入實(shí)用程序刪除已有的數(shù)據(jù),并插入新的數(shù)據(jù),就像 REPLACE 選項(xiàng)那樣。如果目標(biāo)表還沒有定義,那么首先創(chuàng)建這個(gè)表以及它的相關(guān)索引,然后再導(dǎo)入數(shù)據(jù)。正如您可能想像的那樣,輸入文件

46、必須是 PC/IXF 格式的文件,因?yàn)槟欠N格式包含對(duì)導(dǎo)出表的結(jié)構(gòu)化描述。如果目標(biāo)表是被一個(gè)外鍵引用的一個(gè)父表,那么就不能使用 REPLACE_CREATE。 CREATE 選項(xiàng)首先創(chuàng)建目標(biāo)表和它的索引,然后將數(shù)據(jù)導(dǎo)入到新表中。該選項(xiàng)惟一支持的文件格式是 PC/IXF。還可以指定新表所在表空間的名稱。60 LOAD LOAD 實(shí)用程序是用于為表填充數(shù)據(jù)的另一種方法。該實(shí)用實(shí)用程序是用于為表填充數(shù)據(jù)的另一種方法。該實(shí)用程序?qū)⒏袷交捻撁嬷苯訉懭氲綌?shù)據(jù)庫(kù)中。這種機(jī)制允許比程序?qū)⒏袷交捻撁嬷苯訉懭氲綌?shù)據(jù)庫(kù)中。這種機(jī)制允許比 IMPORT IMPORT 實(shí)用程序更有效地移動(dòng)數(shù)據(jù)。實(shí)用程序更有效地移動(dòng)數(shù)

47、據(jù)。LOAD FROM input_source OF input_type MESSAGES LOAD FROM input_source OF input_type MESSAGES message_file INSERT | REPLACE | TERMINATE | RESTART message_file INSERT | REPLACE | TERMINATE | RESTART INTO target_tablenameINTO target_tablename 61LOAD 可以以四種不同的模式執(zhí)行:INSERTINSERT 模式將輸入數(shù)據(jù)添加到一個(gè)表中,而不更改已有的表數(shù)據(jù)。 REPLACEREPLACE 模式刪除表中所有已有的數(shù)據(jù),然后用輸入數(shù)據(jù)填充這個(gè)表。 TERMINATETERMINATE 模式終止裝載操作,并回滾到它開始時(shí)所在的時(shí)間點(diǎn)。一個(gè)例外是,如果指定了 REPLACE 模式,那么表將被刪節(jié)。 RESTARTRESTART 模式用于重新開始之前被中斷的裝載命令。它將自動(dòng)從最近的一致點(diǎn)繼續(xù)。要使用這個(gè)模式,可以指定與前一個(gè) LOAD 命令相同的選項(xiàng),但是這一次加上 RESTART。它使實(shí)用程序可以發(fā)現(xiàn)在裝載處理中生成

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(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)論