DB2數(shù)據(jù)庫(kù)命令大全
DB2數(shù)據(jù)庫(kù)命令非常多,能夠?qū)崿F(xiàn)的功能也各不一樣。下面就為您詳細(xì)介紹一些常用的DB2數(shù)據(jù)庫(kù)命令,希望可以讓您對(duì)DB2數(shù)據(jù)庫(kù)命令有更多的認(rèn)識(shí)。
1. 查看本地節(jié)點(diǎn)目錄
命令窗口中輸入:db2 list node directory
2. 編目一個(gè)TCP/IP節(jié)點(diǎn)
命令窗口:db2 catalog tcpip node <node_name> remote <hostname|ip_address> server <svcname|port_number> ostype <OS2|AIX|WIN95|NT|HPUX|SUN|MVS|OS400|VM|VSE|SCO|SGI|LINUX|DYNIX>
3. 取消節(jié)點(diǎn)編目
db2 uncatalog node <node_name>
4. 查看系統(tǒng)數(shù)據(jù)庫(kù)目錄
db2 list database directory
5. 查看本地?cái)?shù)據(jù)庫(kù)目錄
db2 list database directory on <盤(pán)符>
在本地?cái)?shù)據(jù)庫(kù)目錄中有而系統(tǒng)數(shù)據(jù)庫(kù)目錄中沒(méi)有的數(shù)據(jù)庫(kù)不能訪(fǎng)問(wèn),可以在控制中心中選中 <數(shù)據(jù)庫(kù)> 右鍵單擊選擇添加,然后輸入需要添加的數(shù)據(jù)庫(kù)名稱(chēng)或者點(diǎn)擊刷新按鈕選擇數(shù)據(jù)庫(kù),加入數(shù)據(jù)庫(kù)后即可以訪(fǎng)問(wèn)。
6. 編目數(shù)據(jù)庫(kù)
db2 catalog database <db_name> as <db_alias> at node <node_name>
7. 取消數(shù)據(jù)庫(kù)編目
db2 uncatalog database <db_name>
8. 測(cè)試遠(yuǎn)程數(shù)據(jù)庫(kù)的連接
db2 connect to <db_alias> user <user_id> using <password>
9. 任何用戶(hù)均可通過(guò)設(shè)置Current Schema專(zhuān)用寄存器為特定的數(shù)據(jù)庫(kù)連接設(shè)置默認(rèn)模式,初始默認(rèn)值為當(dāng)前會(huì)話(huà)用戶(hù)的權(quán)限ID。
set schema = <schema name>
可以由用戶(hù)交互式的使用,也可在應(yīng)用程序中使用,如果用Dynamicrules Bind選項(xiàng)綁定包,這個(gè)語(yǔ)句就沒(méi)有作用。此語(yǔ)句不在事務(wù)控制之下。
10. 代碼頁(yè)的設(shè)置
在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)設(shè)置字符集
create database <db_name> using codeset <codeset> territory <territiry>
例:
create database dbtest using codeset IBM-437 territory US
也可以設(shè)置整個(gè)數(shù)據(jù)庫(kù)的代碼頁(yè),在win2000/NT/xp中,在我的電腦--> 屬性--> 高級(jí)--> 環(huán)境變量中添加變量DB2CODEPAGE = <codepage> ,例:DB2CODEPAGE = 437 或 DB2CODEPAGE = 1386?;蛘咴贗BM DB2命令窗口輸入 db2set DB2CODEPAGE=1386,設(shè)置后需要重新啟動(dòng)DB2生效。
11. DB2低版本數(shù)據(jù)到高版本的遷移
先將低版本數(shù)據(jù)備份使用恢復(fù)功能導(dǎo)入高版本數(shù)據(jù)庫(kù),然后在命令窗口輸入 db2 migrate database <db_name> 。
12. 表名或模式中含有引號(hào)時(shí)訪(fǎng)問(wèn)表
命令窗口:db2 select * from \ "tabschema\ ".\ "tabname\ "
命令行處理器:db2=> select * from "tabschema ". "tabname "
13. 導(dǎo)出數(shù)據(jù)庫(kù)的表結(jié)構(gòu)生成DDL文件
命令窗口:db2look -d <db_name> -e -c -o <file_name>
14. 執(zhí)行腳本文件
命令窗口:db2 -tvf <file_name>
15. 代碼頁(yè)的轉(zhuǎn)換
16. 獲取當(dāng)前DB2的版本
select * from sysibm.sysversions
17. DB2表的字段的修改限制?
只能修改VARCHAR2類(lèi)型的并且只能增加不能減少
alter table <tb_name> alter column <col_name> set data type varchar(SIZE)
18. 如何查看表的結(jié)構(gòu)?
describe table <tb_name>
or
describe select * from <schema> . <tb_name>
19. 如何快速清除一個(gè)大表?
ALTER TABLE TABLE_NAME ACTIVE NOT LOGGED INITALLY WITH EMPTY TABLE
20. 如何查看數(shù)據(jù)庫(kù)的存儲(chǔ)過(guò)程?
SELECT * FROM SYSCAT.PROCEDURES
21. 如何查看表的約束?
SELECT * FROM SYSCAT.CHECKS WHERE TABNAME = <tb_name>
22. 如何查看表的引用完整約束?
SELECT * FROM SYSCAT.REFERENCES WHERE TABNAME = <tb_name>
23. 如何知道BUFFERPOOLS狀況?
select * from SYSCAT.BUFFERPOOLS
24. 如何在命令行下查看修改實(shí)例和數(shù)據(jù)庫(kù)配置參數(shù)?
查看實(shí)例配置參數(shù): db2 get dbm cfg
修改實(shí)例配置參數(shù): db2 update dbm cfg using 參數(shù)名 新值
查看數(shù)據(jù)庫(kù)配置參數(shù): db2 get db cfg for <db_name>
修改數(shù)據(jù)庫(kù)配置參數(shù): db2 update db cfg for <db_name> using 參數(shù)名 新值
25. 如何修改緩沖區(qū)?
增加緩沖區(qū): create bufferpool <buf_name> size <number of pages> [pagesize 4096] {[not] EXTENDED STORAGE}
修改緩沖區(qū): alter bufferpool <buf_name> size <number of pages> {[not] EXTENDED STORAGE}
刪除緩沖區(qū): drop bufferpool <buf_name>
如果緩沖區(qū)大小設(shè)置為 -1 表示緩沖池的頁(yè)面數(shù)目由數(shù)據(jù)庫(kù)配置參數(shù)buffpage決定。
注意: 數(shù)據(jù)庫(kù)配置參數(shù)buffpage僅對(duì)緩沖區(qū)大小設(shè)置為 -1 的緩沖池起作用。
26. 多個(gè)字段時(shí)如何不通過(guò)使用select子句使用in/not in
select * from tabschema.tabname where (colA, colB, colC) [not] in (values (valueA1, valueB1, valueC1), (valueA2, valueB2, valueC2), ...(valueAn, valueBn, valueCn))
27. 查看當(dāng)前連接到數(shù)據(jù)庫(kù)的應(yīng)用
db2 list application [show detail]
28. 如何確認(rèn)DB2數(shù)據(jù)庫(kù)的一致性
db2dart <db_name> /DB
/DB表示檢查整個(gè)數(shù)據(jù)庫(kù)的一致性
29. 測(cè)試SQL語(yǔ)句的性能
db2batch -d <db_name> -f <file_name> [-a userid/passwd] [-r <outfile_name> ]
-r 選項(xiàng)表示將查詢(xún)結(jié)果輸出到一個(gè)文件中。
30. 導(dǎo)出某個(gè)表的數(shù)據(jù)
export to <Derectry> <filme>
如:導(dǎo)出用戶(hù)表
export to c:\user.ixf of ixf select * from user
31. 導(dǎo)入數(shù)據(jù)
import from
如:導(dǎo)入用戶(hù)表。導(dǎo)入時(shí)可以直接建立新表。如果有該表存在也可以用INSERT 插入,或者用UPDATE更新
接上31 導(dǎo)入數(shù)據(jù)
執(zhí)行導(dǎo)入:import from c:\user.ixf of ixf [Create/Insert into / update] tablename
32.查詢(xún)鎖表
select * from table(snapshot_lock( 'ssfx ',-1)) as lock
【編輯推薦】