DB2實用命令總結

jst143發表於2011-03-18

db2 force application all : 強制停止所有資料庫連結
            db2stop force : 停止DB2
            db2start : 啟動資料庫
   
             SET INTEGRITY FOR [ MView Table Name ] IMMEDIATE CHECKED :
             REFRESH TABLE     [ MView Table Name ]     對建立的MView物化檢視進行refresh操作。


            1. 檢視本地節點目錄
              命令視窗中輸入:db2 list node directory

            2. 編目一個TCP/IP節點
              命令視窗:db2 catalog tcpip node remote
            server ostype
           

            3. 取消節點編目
              db2 uncatalog node

 

            1. 檢視本地節點目錄
              命令視窗中輸入:db2 list node directory

            2. 編目一個TCP/IP節點
              命令視窗:db2 catalog tcpip node remote
            server ostype
           

            3. 取消節點編目
              db2 uncatalog node

            4. 檢視系統資料庫目錄
              db2 list database directory

            5. 檢視本地資料庫目錄
              db2 list database directory on
             
            在本地資料庫目錄中有而系統資料庫目錄中沒有的資料庫不能訪問,可以在控制中心中選中右鍵單擊選擇新增,然後輸入需要新增的資料庫名稱或者點選重新整理按鈕選擇資料庫,加入資料庫後即可以訪問。

            6. 編目資料庫
              db2 catalog database as at node

            7. 取消資料庫編目
              db2 uncatalog database

            8. 測試遠端資料庫的連線
              db2 connect to user using

            9. 任何使用者均可通過設定Current Schema專用暫存器為特定的資料庫連線設定預設模式,初始預設值為當前會話使用者的許可權ID。
              set schema =
              可以由使用者互動式的使用,也可在應用程式中使用,如果用Dynamicrules
            Bind選項繫結包,這個語句就沒有作用。此語句不在事務控制之下。

            10. 內碼表的設定
              在建立資料庫時設定字符集
              create database using codeset territory
           
              例:
              create database dbtest using codeset IBM-437 territory US
             
            也可以設定整個資料庫的內碼表,在win2000/NT/xp中,在我的電腦--&gt屬性--&gt高階--&gt環境變數中新增變數DB2CODEPAGE
            = ,例:DB2CODEPAGE = 437 或 DB2CODEPAGE = 1386。或者在IBM
            DB2命令視窗輸入 db2set DB2CODEPAGE=1386,設定後需要重新啟動DB2生效。

            11. DB2低版本資料到高版本的遷移
              先將低版本資料備份使用恢復功能匯入高版本資料庫,然後在命令視窗輸入 db2 migrate database

            12. 表名或模式中含有引號時訪問表
              命令視窗:db2 select * from \"tabschema\".\"tabname\"
              命令列處理器:db2=> select * from "tabschema"."tabname"

            13. 匯出資料庫的表結構生成DDL檔案
              命令視窗:db2look -d -e -c -o
             
            14. 執行指令碼檔案
              命令視窗:db2 -tvf
             
            15. 內碼表的轉換

            16. 獲取當前DB2的版本
              select * from sysibm.sysversions

            17. DB2表的欄位的修改限制?
              只能修改VARCHAR2型別的並且只能增加不能減少
              alter table alter column set data type
            varchar(SIZE)

            18. 如何檢視錶的結構?
              describe table
              or
              describe select * from .

            19. 如何快速清除一個大表?
              ALTER TABLE TABLE_NAME ACTIVE NOT LOGGED INITALLY WITH EMPTY TABLE

            20. 如何檢視資料庫的儲存過程?
              SELECT * FROM SYSCAT.PROCEDURES

            21. 如何檢視錶的約束?
              SELECT * FROM SYSCAT.CHECKS WHERE TABNAME =

            22. 如何檢視錶的引用完整約束?
              SELECT * FROM SYSCAT.REFERENCES WHERE TABNAME =

            23. 如何知道BUFFERPOOLS狀況?
              select * from SYSCAT.BUFFERPOOLS

            24. 如何在命令列下檢視修改例項和資料庫配置引數?
              檢視例項配置引數:   db2 get dbm cfg
              修改例項配置引數:   db2 update dbm cfg using 引數名 新值

              檢視資料庫配置引數:   db2 get db cfg for
              修改資料庫配置引數:   db2 update db cfg for using 引數名 新值

            25. 如何修改緩衝區?
              增加緩衝區:   create bufferpool size
            [pagesize 4096] {[not] EXTENDED STORAGE}
              修改緩衝區:   alter bufferpool size {[not]
            EXTENDED STORAGE}
              刪除緩衝區:   drop   bufferpool

              如果緩衝區大小設定為 -1 表示緩衝池的頁面數目由資料庫配置引數buffpage決定。
              注意: 資料庫配置引數buffpage僅對緩衝區大小設定為 -1 的緩衝池起作用。

            26. 多個欄位時如何不通過使用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. 檢視當前連線到資料庫的應用
              db2 list application [show detail]

            28. 如何確認DB2資料庫的一致性
              db2dart /DB
              /DB表示檢查整個資料庫的一致性

            29. 測試SQL語句的效能
              db2batch -d -f [-a userid/passwd] [-r
            ]
              -r 選項表示將查詢結果輸出到一個檔案中。
            30. 匯出某個表的資料
              export to
            如:匯出使用者表
              export to c:\user.ixf of ixf select * from user

            31. 匯入資料
              import from
            如:匯入使用者表。匯入時可以直接建立新表。如果有該表存在也可以用INSERT 插入,或者用UPDATE更新
              import from c:\user.ixf of ixf [Create/Insert into / update]
            tablename

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23577591/viewspace-689943/,如需轉載,請註明出處,否則將追究法律責任。