久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

db2數據庫常用操作命令總結

156次閱讀
沒有評論

共計 9785 個字符,預計需要花費 25 分鐘才能閱讀完成。

本篇內容介紹了“db2 數據庫常用操作命令總結”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓丸趣 TV 小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

本文詳細匯總了 DB2 的常用操作命令,分享給大家。對于使用 db2 的朋友可以參考下。

DB2 數據庫管理客戶端從 v9.7 版本之后就不再帶有控制中心了,而是使用 Data Studio Client。安裝 DB2 數據庫產品期間不會應用許可證密鑰。但是,下列產品沒有激活 CD,因此會在安裝這些產品的過程中自動應用其許可證:DB2 Express-C 和 DB2 Connect 個人版。此外,DB2 個人版也是一個特殊案例。雖然 DB2 個人版具有激活 CD,但是會在安裝該產品的過程中自動應用其許可證。

注意: 執行命令前需要進入 DB2 的賬戶下:su db2inst1

修改密碼:更改相應的操作系統密碼即可,windows 上可以更改 db2admin 的密碼,linux 上更改 db2inst1 的密碼即可,db2 的數據庫密碼是和操作系統綁定的,就像大家說的只需要修改操作系統上用戶的密碼就可以了。你想改那個用戶的密碼你就在操作系統上改那個用戶的密碼。

1、打開命令行窗口

復制代碼 代碼如下:

#db2cmd

2、打開控制中心

復制代碼 代碼如下:

# db2cmd db2cc

3、打開命令編輯器

復制代碼 代碼如下:

db2cmd db2ce

一、加載數據:

1、以默認分隔符加載, 默認為“,”號

復制代碼 代碼如下:

db2 import from btpoper.txt of del insert into btpoper

2、以指定分隔符“|”加載

復制代碼 代碼如下:

db2 import from btpoper.txt of del modified by coldel| insert into btpoper

二、卸載數據:

1、卸載一個表中全部數據

復制代碼 代碼如下:

db2 export to btpoper.txt of del select * from btpoper
db2 export to btpoper.txt of del modified by coldel| select * from btpoper

2、帶條件卸載一個表中數據

復制代碼 代碼如下:

db2 export to btpoper.txt of del select * from btpoper where brhid= 907020000
db2 export to cmmcode.txt of del select * from cmmcode where codtp= 01
db2 export to cmmcode.txt of del modified by coldel| select * from cmmcode where codtp= 01

三、查詢數據結構及數據:

復制代碼 代碼如下:

db2 select * from btpoper
db2 select * from btpoper where brhid= 907020000 and oprid= 0001
db2 select oprid,oprnm,brhid,passwd from btpoper

四、刪除表中數據:

復制代碼 代碼如下:

db2 delete from btpoper
db2 delete from btpoper where brhid= 907020000 or brhid= 907010000

五、修改表中數據:

復制代碼 代碼如下:

db2 update svmmst set prtlines=0 where brhid= 907010000 and jobtp= 02
db2 update svmmst set prtlines=0 where jobtp= 02 or jobtp= 03

六、聯接數據庫

復制代碼 代碼如下:

db2 connect to btpdbs

七、清除數據庫聯接

db2 connect reset 斷開數據庫連接
db2 terminate 斷開數據庫連接
db2 force applications all 斷開所有數據庫連接

八、備份數據庫

1、db2 backup db btpdbs
2、db2move btpdbs export

復制代碼 代碼如下:

db2look -d btpdbs -e -x [-a] -o crttbl.sql

九、恢復數據庫

1、db2 restore db btpdbs without rolling forward
2、db2 -tvf crtdb.sql
crtdb.sql 文件內容:

復制代碼 代碼如下:

create db btpdbs on /db2catalog
db2 -stvf crttbl.sql
db2move btpdbs import

十、DB2 幫助命令:

db2 ?
db2 ? restroe
db2 ? sqlcode (例:db2 ? sql0803) 注:code 必須為 4 位數,不夠 4 位,前面補 0

十一、bind 命令:將應用程序與數據庫作一捆綁, 每次恢復數據庫后,建議都要做一次 bind

(1) db2 bind br8200.bnd
(2) /btp/bin/bndall /btp/bnd
/btp/bin/bndall /btp/tran/bnd

十二、查看數據庫參數:

復制代碼 代碼如下:

db2 get dbm cfg
db2 get db cfg for btpdbs

十三、修改數據庫參數:

復制代碼 代碼如下:

db2 update db cfg for btpdbs using LOGBUFSZ 20
db2 update db cfg for btpdbs using LOGFILSIZ 5120

改完后,應執行以下命令使其生效:

復制代碼 代碼如下:

db2 stop
db2 start

補充:
db2 set schema btp 修改當前模式為 btp
db2 list tablespaces show detail 查看當前數據庫表空間分配狀況
db2 list tablespace containers for 2 show detail 查看 tablespace id= 2 使用容器所在目錄
db2 list application
db2 list db directory 列出所有數據庫
db2 list active databases 列出所有活動的數據庫
db2 list tables for all 列出當前數據庫下所有的表
db2 list tables for schema btp 列出當前數據庫中 schema 為 btp 的表
db2 list tablespaces show detail 顯示數據庫空間使用情況
db2 list packages for all

db2 import from tab76.ixf of ixf commitcount 5000 insert into achact
db2 create table achact_t like achact
db2 rename table achact_t to achact
db2 insert into achact_t select * from achact where txndt =(select lstpgdt from
acmact where actno=achact.actno)
db2 get snapshot for dynaimic sql on jining

刪除一個實例:

復制代碼 代碼如下:

# cd /usr/lpp/db2_07_01/instance
# ./db2idrop InstName

列出所有 DB2 實例:

復制代碼 代碼如下:

# cd /usr/lpp/db2_07_01/bin
# ./db2ilist

為數據庫建立編目

復制代碼 代碼如下:

$ db2 catalog db btpdbs on /db2catalog

取消已編目的數據庫 btpdbs

復制代碼 代碼如下:

$ db2 uncatalog db btpdbs

查看版本

復制代碼 代碼如下:

# db2level

顯示當前數據庫管理實例

復制代碼 代碼如下:

$ db2 get instance

設置實例系統啟動時是否自動啟動。

$ db2iauto -on 自動啟動
$ db2iauto -off 不自動啟動

數據庫優化命令:

reorg、runstats

當數據庫經過一段時間使用,數據空間會變得越來越龐大。一些 delete 掉
的數據仍存放在數據庫中,占用數據空間,影響系統性能。因此需要定期
運行 reorg、runstats 命令,清除已 delete 的數據,優化數據結構。
db2 reorg table 表名
db2 runstats on table 表名 with distribution and indexes all
因為要優化的表比較多,所以在 /btp/bin 目錄下提供了一個 sh 程序 runsall,
可在當天業務結束后,運行 runsall,對數據庫進行優化

在 DB2 的開發過程中,貫穿整個開發過程還有很重要的一部分工作就是數據庫的維護;對于維護一個龐大信息系統來說是非常必要的;留一份簡易的維護手冊,以備不時之需;以下收集到的部分維護命令,以饗我們的維護工程師和項目經理。

DB2 常用命令總結

1.啟動數據庫

復制代碼 代碼如下:

db2start

2.停止數據庫

復制代碼 代碼如下:

db2stop

3.連接數據庫

復制代碼 代碼如下:

db2 connect to o_yd user db2 using pwd

4.讀數據庫管理程序配置

復制代碼 代碼如下:

db2 get dbm cfg

5.寫數據庫管理程序配置
  db2 update dbm cfg using 參數名 參數值
6.讀數據庫的配置

復制代碼 代碼如下:

db2 connect to o_yd user db2 using pwd
  db2 get db cfg for o_yd

7.寫數據庫的配置

復制代碼 代碼如下:

db2 connect to o_yd user db2 using pwd

  db2 update db cfg for o_yd using 參數名 參數值
8.關閉所有應用連接

復制代碼 代碼如下:

db2 force application all
  db2 force application ID1,ID2,,,Idn MODE ASYNC
  (db2 list application for db o_yd show detail)

9.備份數據庫

復制代碼 代碼如下:

db2 force application all
  db2 backup db o_yd to d:
  (db2 initialize tape on //./tape0)
  (db2 rewind tape on //./tape0)
  db2 backup db o_yd to //./tape0

10.恢復數據庫

復制代碼 代碼如下:

db2 restore db o_yd from d: to d:
  db2 restore db o_yd from //./tape0 to d:

11.綁定存儲過程
 

復制代碼 代碼如下:

db2 connect to o_yd user db2 using pwd
  db2 bind c:/dfplus.bnd

  拷貝存儲過程到服務器上的 C:/sqllib/function 目錄中
12.整理表

復制代碼 代碼如下:

db2 connect to o_yd user db2 using pwd
  db2 reorg table ydd
  db2 runstats on table ydd with distribution and indexes all

13.導出表數據

復制代碼 代碼如下:

db2 export to c:/dftz.txt of del select * from dftz
  db2 export to c:/dftz.ixf of ixf select * from dftz

14.導入表數據

復制代碼 代碼如下:

import from c:/123.txt of del  insert into ylbx.czyxx
db2 import to c:/dftz.txt of del commitcount 5000 messages  c:/dftz.msg insert into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 messages c:/dftz.msg insert into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 insert into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 insert_update into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 replace into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 create into dftz  (僅 IXF)
db2 import to c:/dftz.ixf of ixf commitcount 5000 replace_create into dftz  (僅 IXF)

15.執行一個批處理文件
  db2 –tf 批處理文件名
 (文件中每一條命令用;結束)
16.自動生成批處理文件
  建文本文件:temp.sql

復制代碼 代碼如下:

select runstats on table DB2. || tabname || with distribution and  detailed indexes all; from syscat.tables where
tabschema= DB2 and type= T
db2 –tf temp.sql runstats.sql

17.自動生成建表(視圖)語句
在服務器上:C:/sqllib/misc 目錄中

復制代碼 代碼如下:

db2 connect to o_yd user db2 using pwd
db2look –d o_yd –u db2 –e –p –c c:/o_yd.txt

18.其他命令

復制代碼 代碼如下:

grant dbadm on database to user bb

19

復制代碼 代碼如下:

select * from czyxx fetch first 1 rows only

20

復制代碼 代碼如下:

db2look –d ylbx –u db2admin –w –asd –a –e –o a.txt

21. 顯示當前用戶所有表

復制代碼 代碼如下:

list tables

22. 列出所有的系統表

復制代碼 代碼如下:

list tables for system

23. 查看表結構

復制代碼 代碼如下:

db2 describe select * from user.tables

24. 查看死鎖明細

復制代碼 代碼如下:

db2 get snapshot for locks on yourdatdabasename

 
用 df -k 命令看看是否有些文件系統沒有空間.

26、備份數據庫
#db2 backup db db name
備注:執行以上命令之前需要斷開數據庫連接

27、在線備份數據庫

復制代碼 代碼如下:

#db2 -v BACKUP DATABASE database name ONLINE TO path WITH 2 BUFFERS BUFFER 1024 INCLUDE LOGS WITHOUT PROMPTING

28、恢復數據庫

復制代碼 代碼如下:

#db2 restore db source db name

29、在線恢復數據庫

復制代碼 代碼如下:

#db2 RESTORE DB database name TO db path LOGTARGET logpath WITHOUT PROMPTING
#db2 ROLLFORWARD DB database name TO END OF LOGS AND STOP …

30、導出數據文件

復制代碼 代碼如下:

#db2move db name export

[-sn 模式名稱,一般為 db2admin]
[-tn 表名,多個之間用逗號分隔]
31、導入數據文件

復制代碼 代碼如下:

#db2move db name import

32、獲取 db2 數據庫管理配置環境信息

復制代碼 代碼如下:

#db2 get dbm cfg

33、. 獲取 db2 某個數據庫數據庫管理配置環境信息

復制代碼 代碼如下:

#db2 get db cfg for db name

或者:連接至某個數據庫以后執行 db2 get db cfg

34、更改 db2 日志空間的大小
備注:以下命令為了防止 db2 數據庫過份使用硬盤空間而設,僅用于開發者自己機器上的 db2,如果是服務器,則參數需要修改。

復制代碼 代碼如下:

#db2 UPDATE DB CFG FOR db name USING logretain OFF logprimary 3 logsecond 2 logfilsiz 25600;

如果頁大小是 4KB,則以上命令創建 3 個 100M 的日志文件,占用 300MB 硬盤空間。25600*4KB=102400KB。
35、創建臨時表空間

復制代碼 代碼如下:

#DB2 CREATE USER TEMPORARY TABLESPACE STMASPACE PAGESIZE 32 K MANAGED BY DATABASE USING (FILE D:\DB2_TAB\STMASPACE.F1 10000)
EXTENTSIZE 256

36、獲取數據庫管理器的快照數據

復制代碼 代碼如下:

#db2 –v get snapshot for dbm

37、顯示進行程號

復制代碼 代碼如下:

#db2 list applications show detail

38、更改 db2 日志空間的大小

備注:以下命令為了防止 db2 數據庫過份使用硬盤空間而設,僅用于開發者自己機器上的 db2,如果是服務器,則參數需要修改。
# db2 UPDATE DB CFG FOR db name USING logretain OFF logprimary 3 logsecond 2 logfilsiz 25600;
如果頁大小是 4KB,則以上命令創建 3 個 100M 的日志文件,占用 300MB 硬盤空間。25600*4KB=102400KB。

39、創建臨時表空間

復制代碼 代碼如下:

#DB2 CREATE USER TEMPORARY TABLESPACE STMASPACE PAGESIZE 32 K MANAGED BY DATABASE USING (FILE D:\DB2_TAB\STMASPACE.F1 10000) EXTENTSIZE 256

40、創建表空間

rem 創建緩沖池空間 8K

復制代碼 代碼如下:

#db2 connect to gather
#db2 CREATE BUFFERPOOL STMABMP IMMEDIATE SIZE 25000 PAGESIZE 8K

rem 創建表空間:STMA
rem 必須確認路徑正確
rem D:\DB2Container\Stma
#db2 drop tablespace stma
#db2 CREATE REGULAR TABLESPACE STMA PAGESIZE 8 K MANAGED BY SYSTEM USING (D:\DB2Container\Stma) EXTENTSIZE 8 OVERHEAD 10.5 PREFETCHSIZE 8 TRANSFERRATE 0.14 BUFFERPOOL STMABMP DROPPED TABLE recovery OFF
#db2 connect reset

41、將暫掛的數據恢復到前滾狀態

復制代碼 代碼如下:

#db2 ROLLFORWARD DATABASE TESTDB TO END OF LOGS AND COMPLETE NORETRIEVE

42、備份表空間

復制代碼 代碼如下:

#BACKUP DATABASE YNDC TABLESPACE (USERSPACE1) TO D:\temp WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING

43、創建 db2 工具數據庫

復制代碼 代碼如下:

#db2 create tools catalog systools create new database toolsdb

44、如何進行增量 / 差量備份

增量:上一次完整備份至本次備份之間增加的數據部分;
差量(delta):上次備份以來(可能是完整備份、增量備份或者差量備份)至本次備份之間增加的數據部分;

45、更新所有表的統計信息

復制代碼 代碼如下:

#db2 -v connect to DB_NAME
#db2 -v select tbname, nleaf, nlevels, stats_timefrom sysibm.sysindexes
#db2 -v reorgchkupdate statistics on table all
#db2 -v select tbname, nleaf, nlevels, stats_timefrom sysibm.sysindexes
#db2 -v terminate

46、對一張表運行統計信息

復制代碼 代碼如下:

#db2 -v runstatson table TAB_NAMEand indexes all

47、查看是否對數據庫執行了 RUNSTATS

復制代碼 代碼如下:

#db2 -v select tbname, nleaf, nlevels,stats_timefrom sysibm.sysindexes

48、更改緩沖池的大小

緩沖池中,當 syscat.bufferpools 的 npages 是 - 1 時,由數據庫的配置參數 bufferpage 控制緩沖池的大小。
將 npages 的值更改為 - 1 的命令:
#db2 -v connect to DB_NAME
#db2 -v select * from syscat.bufferpools
#db2 -v alter bufferpoolIBMDEFAULTBP size -1
#db2 -v connect reset
#db2 -v terminate
更改數據庫配置參數 BufferPages 的命令如下:
#db2 -v update db cfgfor dbnameusing BUFFPAGE bigger_value
#db2 -v terminate

49、看數據庫監視內容列表

復制代碼 代碼如下:

#db2 -v get monitor switches

50、打開某個數據庫監視內容

復制代碼 代碼如下:

#db2 -v update monitor switches using bufferpoolon

51、獲取數據庫快照

復制代碼 代碼如下:

#db2 -v get snapshot for all databases snap.out
#db2 -v get snapshot for dbm snap.out
#db2 -v get snapshot for all bufferpools snap.out
#db2 -v terminate

52、重置數據庫快照

復制代碼 代碼如下:

#db2 -v reset monitor all

53、計算緩沖池命中率

理想情況下緩沖池命中率在 95% 以上,計算公式如下:
(1 -((buffer pool data physical reads + buffer pool index physical reads)
/(buffer pool data logical reads + pool index logical reads))) *100%

54、創建 db2 實例

#db2icrt 實例名稱

55、刪除 db2 實例

#db2idrop 實例名稱

56、設置當前 db2 實例

#set db2intance=db2

57、顯示 db2 擁有的實例

#db2ilist

58、恢復離線增量備份數據庫的命令

復制代碼 代碼如下:

#DB2 RESTORE DATABASE YNDC INCREMENTAL AUTOMATIC FROM D:\backup\autobak\db2 TAKEN AT 20060314232015

59、創建樣本數據庫

在 unix 平臺,使用:
#sqllib/bin/db2sampl path
在 windows,os/ 2 平臺,使用:db2sampl e,e 是可選參數,指定將創建數據庫的驅動器

60、設置聯合數據庫為可用(默認聯合數據庫不可用)

復制代碼 代碼如下:

#db2 update dbm cfg using federated yes

61、列出數據庫中所有的表

#db2 list tables

62、數據遷移方法 1

export 腳本示例

復制代碼 代碼如下:

#db2 connect to testdb user test password test
#db2 export to aa1.ixf of ixf select * from table1
#db2 export to aa2.ixf of ixf select * from table2
#db2 connect reset

import 腳本示例

復制代碼 代碼如下:

#db2 connect to testdb user test password test
#db2 load from aa1.ixf of ixf replace into table1 COPY NO without prompting
#db2 load from aa2.ixf of ixf replace into table2 COPY NO without prompting

“db2 數據庫常用操作命令總結”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注丸趣 TV 網站,丸趣 TV 小編將為大家輸出更多高質量的實用文章!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-04發表,共計9785字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 沧源| 焦作市| 铁力市| 安徽省| 永年县| 海兴县| 西丰县| 清原| 竹北市| 越西县| 成武县| 通河县| 阜新| 高唐县| 交城县| 台江县| 天长市| 房山区| 余干县| 四子王旗| 吉隆县| 迁西县| 广德县| 嘉峪关市| 昌图县| 赞皇县| 天台县| 民县| 同江市| 航空| 东丽区| 荔波县| 社会| 宜兰市| 宜宾市| 长沙县| 汤阴县| 乾安县| 墨江| 新竹县| 七台河市|