当前位置:文档之家› db2常用命令

db2常用命令

db2常用命令
db2常用命令

一、常用命令

1. 启动实例

db2start

2. 停止实例

db2stop

3. 删除一个实例

db2idrop -f instance_name

4. DB2 配置文件注册库

要列举所支持的全部 DB2 配置文件注册库(db2set -lr)

要设置 DB2 配置文件注册库(db2set registry_variable=value)

例子:单一值的示例: db2set DB2COMM=TCPIP

多个值的示例:db2set DB2COMM=TCPIP. NPIPE. LOCAL

显示服务器上当前设置: db2set –all

[e] 表示为当前会话或环境所设置的注册库

[u] 表示用户级注册库

[n] 表示节点级注册库

[i] 表示实例级注册库

[g] 表示全局级注册库

5. DB2数据库管理器配置参数

存在两个配置“级别”:实例级别和数据库级别

实例级别:db2 get database manager configuration

数据库级别:db2 get database configuration for database_name

设置您的数据库管理器或数据库配置参数的值

db2 update database manager configuration using parameter new_value

db2 update database configuration for database_name using parameter new_value

为显式指定这种立即生效的行为. 可将 immediate 关键字附加到 update 命令中:

db2 update database manager configuration using parameter new_value immediate

db2 update database configuration for database_name using parameter new_value immediate

若您选择将此更改延迟至实例重启或数据库激活时. 则应指定 deferred 关键字:

db2 update database manager configuration using parameter new_value deferred

db2 update database configuration for database_name using parameter new_value deferred

6. 远程连接

db2 catalog tcpip node mynode remote ipaddress server 50000

db2 catalog database sample as mysamp at node mynode

db2 attach to nodename user username using password

附加到实例后. 您可在该实例上执行管理任务. 例如:

创建和删除数据库

?检索、更新和重置数据库管理器及数据库配置参数

?管理数据库监控程序

?备份、还原和前滚数据库

?强制用户和应用程序与实例中定义的数据库断开连接

7. 查看节点或者数据库

db2 list node directory

db2 list database directory

8. 查看活动数据库

db2 get connection state

9. 查看当前连接数和数据库

db2 list active databases

10. 判断自己拥有哪些权限和数据库级特权

db2 get authorizations

11. 查看表空间使用状况

db2 list tablespaces show detail

12. 建立数据库

CREATE DATABASE dbname ON G: ALIAS DB2_GCB

13. 连接数据库

db2 connect to dbname user cis using db2admin

14. 重新连接

db2 connect reset

15. 中断数据库连接

db2 disconnect dbname

16. 中断所有数据库连接

db2 force application all

17. 察看版本

db2level

19. 查看应用

db2 LIST APPLICATION

20. 杀死应用

db2 kill application

21. 强迫所有应用程序从数据库断开

db2 force applications all

21. 锁表

db2 lock table test in exclusive mode

22. 共享

db2 lock table test in share mode

23. 显示当前用户所有表

db2 list tables

24. 列出所有的系统表

db2 list tables for system

25. 显示当前活动数据库

db2 list active databases

26. 查看命令选项

db2 list command options

27. 系统数据库目录

db2 LIST DATABASE DIRECTORY

28. 表空间

db2 list tablespaces

29. 表空间容器

db2 LIST TABLESPACE CONTAINERS FOR

30. 显示用户数据库的存取权限

db2 GET AUTHORIZATIONS

31. 信息帮助

例:? SQL30081

32. SQL 帮助(说明 SQL 语句的语法)

help statement

例如. help SELECT

33. SQLSTATE 帮助(说明 SQL 的状态和类别代码) ? sqlstate 或 ? class-code

34. 检查 DB2 数据库管理程序配置

db2 get dbm cfg

35. 对一个数据库项取消编目

db2 uncatalog database dbname

36. 对一个节点项取消编目

db2 uncatalog node nodename

37. 列出您已经安装的并获得许可的 DB2 产品

db2licm –l

38. 显示语法

db2 ?

39. 创建数据库

DB2 CREATE DATABASE DataBaseName

40. 删除数据库(提示:需谨慎执行该命令)

DB2 DROP DATABASE DataBaseName

41. 数据库备份(完全离线备份)

--简明式

DB2 BACKUP DB DataBaseName

--复杂式

DB2 BACKUP DB DataBaseName USER User_Name USING PassWord to BackUp_Dir_Name 42. 查看数据库备份历史

DB2 LIST HISTORY BACKUP ALL FOR DataBaseName

43. 数据库备份(离线增量备份)

--第一步:启用数据库增量备份功能(重要)

DB2 UPDATE DB CFG FOR DataBaseName USING TRACKMOD YES

--第二步:执行离线增量备份前需要完全备份一次(重要)

DB2 BACKUP DB DataBaseName

--第三步:执行离线增量备份

DB2 BACKUP DB DataBaseName INCREMENTAL

44. 恢复数据库备份(离线完全备份恢复)

--简明式1(进入备份文件所在DIR. 例如:C:\TEST.0\)

DB2 RESTORE DATABASE DataBaseName

--简明式2(假定备份文件所在DIR为 C:\TEST.0\)

DB2 RESTORE DATABASE TEST FROM C:\ TAKEN AT 20060302143417

--复杂式

DB2 RESTORE DATABASE source_db_name USER user_name USING password

FROM backup_dir_name TAKEN AT backup_file_create_time

TO driver_letter INTO new_db_name

45. 恢复数据库备份(离线增量备份)

-----------------第一种方法. 手动恢复-----------------

--第一步:恢复目标增量备份映像文件(假定数据库名称为Test. 时间戳记为 20060302143909)

DB2 RESTORE DATABASE TEST INCREMENTAL FROM C:\ TAKEN AT 20060302143909

--第二步:恢复最近的一次完全备份文件

DB2 RESTORE DATABASE TEST INCREMENTAL FROM C:\ TAKEN AT 20060302143909

--第三步:恢复自最近的一次完全备份之后的第一次增量备份映像文件. 依次类推

DB2 RESTORE DATABASE TEST INCREMENTAL FROM C:\ TAKEN AT 20060302144033

--第四步:恢复自第N次增量备份映像文件. 直至再次恢复目标增量备份映像文件为止。

--例如. 需要恢复第一次增量备份映像文件. 则需要首先恢复第一次增量备份映像.

--然后恢复至最近的一次完全备份映像文件. 最后再恢复至第一次增量备份映像文件。

--注意:目标增量备份映像文件会被还原两次(重要)

-----------------第二种方法. 自动恢复-----------------

--执行自动恢复增量备份数据库时. 系统自动执行手动恢复增量备份数据库的一系列命令。

DB2 RESTORE DATABASE TEST INCREMENTAL AUTOMATIC FROM C:\ TAKEN AT 20060302144033

46. 提高 INSERT INTO 性能的一个写法

INSERT INTO TableName(Col_1. Col_2……) Values(V1. V2……);

--可以写为如下样式. 提高性能

INSERT INTO TableName(Col_1. Col_2……) Values(V1. V2……). (V3. V4……);

47. 删除物理表(删除所有数据以及表. 提示:需谨慎执行该命令)

db2 DROP TABLE TableName;

48. 删除表中的数据(提示:需谨慎执行该命令)

--方法1

db2 DELETE FROM TableName;

--方法2(同 MS SQL SERVER 的 Truncate Table. 不记录日志清空数据. 很快)

db2 ALTER TABLE TableName ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE

--其他方法

--补充说明. 当一个表数据量非常大的时候. 执行该语句将导致DBMS性能下降. 日志爆增. 所以建议 --先DROP该表. 然后用DDL重新CREATE该表将不会对性能造成太大影响。

--当然. 还有一种方法是导入一张不含记录的空表来覆盖源表. 变相实现删除所有数据功能

49. 修改表. 使该表数据变动不记录日志(提示:将不可回滚数据. 不推荐)

db2 ALTER TABLE TableName ACTIVATE NOT LOGGED INITIALLY

50. 控制查询返回的行数(假定为前50行)

db2 SELECT * FROM TableName FETCH FIRST 50 ROWS ONLY

51.在查询结果中显示行号

--示例

SELECT row_number()over(). Col_1. Col_2…… FROM TableName

52.字段空值替换函数

--如果字段 Col_1 (数字型)为空. 则替换为 0

COALESCE(Col_1. 0)

--如果字段 Col_1 (字符串型)为空. 则替换为 'NullString'

COALESCE(Col_1. 'NullString')

--如果字段 Col_1 (时间型)为空. 则替换为 'NullString'

COALESCE(Col_1. '2000-01-01 00:00:00.000000')

53. 得到表的描述信息

db2 DESCRIBE TABLE TableName

54. 输出重定向到文件中

db2 -r D:\test\texcomm.del "select * from texcomm"

db2 -z D:\test\texcomm2.del "select * from texcomm"

db2 "select * from texcomm" > D:\test\texcomm3.del(输入都在同一行)

55. 修改表空间大小. 扩充容器

db2 ALTER TABLESPACE DATA_TB RESIZE ( FILE 'D:\DB2\Container\TestDB\UserData\UserData'

30000 )

select tbspace. index_tbspace from syscat.tables where tabname = upper('temridx')

alter tablespace TS_EXT16_1 resize(file 'D:\DB2\Container\TestDB\UserData\UserData' 30000)

56. RESTORE 命令

此命令使用存储在备份中的内容来恢复数据库的内容。RESTORE 命令可以创建一个新的数据库。RESTORE 命令需要 SYSADM. SYSCTRL或SYSMAINT特权。RESTORE 命令要使用的备份可能包含整个数据库或一组

表空间。恢复整个数据库必须脱机进行. 恢复表空间可以联机进行. 也就是在还有应用连接到数据库时

进行。RESTORE 命令语法为:

RESTORE DB 目标数据库别名 [TABLESPACE 表空间名] [FROM 介质名] [TAKEN AT 时间]

下面是一些 RESTORE 命令的例子:

(1)从一个特定目录(/backup/mydb)中的备份来恢复 mydb 数据库。如果 mydb 不能够进行向前恢

复. 数据库将被恢复到备份时的状态. 而且可以立即使用。如果能够进行向前恢复. 数据库会被置为

向前挂起(pending)状态. 直到它被执行向前恢复命令之后才能被使用。

RESTORE DATABASE mydb FROM /backup/mydb

(2)下面的命令是对数据库 mydb 进行恢复. 并且在外部指定不进行向前恢复. 数据库可以被立即使

用。

RESTORE DATABASE mydb FROM /backup/mydb WITHOUT ROLLING FORWARD

(3)下面的例子是从一个指定的目录(/backup/mydb)中来恢复 mydb 数据库的一个指定的表空间.

此恢复要使用指定的日期和时间:

RESTORE DATABASE mydb TABLESPACE ONLINE FROM /backup/mydb TAKEN AT 20000926201226

db2 restore database docean4 user cis using db2admin from D:\DOCEAN4 to D into DOCEAN4

without rolling forward

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命令看看是否有些文件系统没有空间.

db2 update db cfg for DNTTK using LOGFILSIZ 512

db2 update db cfg for DNTTK using LOGPRIMARY 20

db2 update db cfg for DNTTK using LOGSECOND 10

db2 migrate database DNTTK

Q:SQL1117N

A: db2 rollforward db dbname to end of logs and complete

Q:SQL1032N出错的解决

第一种SQL1032N出错,是某天DB2的实例突然无法启动了,用db2start就提示大概如下的出错信息:

12/30/2004 11:28:39 0 0 SQL1042C 发生意外的系统错误。

SQL1032N 未发出启动数据库管理器的命令。 SQLSTATE=57019。

WINDOWS不能在本地计算机启动DB2-DB2-0.的原因

查看事件管理器,有这样的记录:

DB2-DB2-0服务因4294959296服务性错误而停止.来源SERVICE CONTROL 事件ID:7024

原因:License到期了。

在db2cmd界面下运行db2licm -l,可以很明显的看到许可证已经过期了。

第二种SQL1032N出错,跟前面的差不多

也是在启动实例的时候出现如上的SQL1032N错误。在windows NT服务中无法启动DB2-DB0服务,同时提示:

出错1069,登陆失败错误。

这个错误比较简单,是用来启动服务的用户名或密码错误。只需要在服务的属性中,选择登陆选项卡,选择用户,并填好密码,重新启动服务就可以了。

第三种SQL1032N出错:

最开始,是突然DB2的客户端连接不上server了,提示如下:

C:\Documents and Settings\Administrator>;db2 connect to fjdldw user install using install3211 SQL30081N 检测到通信错误。正在使用的通信协议:"TCP/IP"。正在使用的通信API:"SOCKETS"。检测到错误的位置:"10.142.12.1"。检测到错误的通信函数:"connect"。协

议特定的错误代码:"10061"、"*"、"*"。 SQLSTATE=08001

我本来还以为真是什么TCP/IP协议的问题,去查找了很多与SQL30081N错误相关的信息,都无法解决问题。后来到了在服务器上检查,发现DB2实例未起来。

用db2start命令,仍是提示:

D:\Program\SQLLIB\BIN>;db2start

12/30/2004 11:28:39 0 0 SQL1042C 发生意外的系统错误。

SQL1032N 未发出启动数据库管理器的命令。 SQLSTATE=57019

用db2 get dbm cfg查看配置文件,因未作过其他操作,所以没有什么异常

查看相应实例下的db2diag.log文件,摘取真正有用的部分出错日志:

Failed to create the memory segment used for communication with fenced routines. If re-

starting db2, ensure no db2fmp processes were on the instance prior to start. Otherwise, you can aju st this value through DB2_FMP_COMM_HEAPSZ db2set value, or by decreasing your ASLHEAP SZ setting.

依据ensure no db2fmp processes were on the instance prior to start,将任务管理器里的db2fmp 进程全部杀掉,然后重新启动实例。db2start,OK!

SQL2542N

SQL常用命令汇总

SQL常用命令汇总 SQL是结果化查询语言(Structured Query Language)的缩写,其功能包括数据查询、数据定义、数据操纵和数据控制四个部分。SQL简洁、功能齐全,已成为目前应用最广的关系数据库语言。 一、SQL的发展及标准化 1.SQL的发展 SQL是当前最为成功、应用最为广泛的关系数据库语言,其发展主要经历了以下几个阶段; (1)1974年,由Chamberlin和Boyce提出,当时称为SEQUEL(Structured English Query Language); (2)1976年,IBM公司对SEQUEL进行了修改,并将其用于本公司的SYSTEM R关系数据库系统中; (3)1981年,推出了商用关系数据库SQL/DS,并将其名字改为SQL,由于SQL功能强大,简洁易用,因此得到了广泛的应用; (4)今天,SQL广泛应用于各种大型数据库,如Sybase,INFORMIX,SQL Server,Oracle,DB2,INGRES等,也用于各种小型数据库,如FoxPro,Access等。 2.SQL标准化 随着关系数据库系统和日益广泛,SQL的标准化工作也在紧张地进行着,二十多年来已制订了多个SQL标准:SQL-86,SQL-89,SQLL2和SQL-99。 二、SQL的基本概念 1.基本表——一个关系对应一个表。基本表是独立存在的表,不是由其他的表导出的 表。 2.视图——是一个或几个基本表导出的表,是一个虚拟的表。它本身不独立存在于数 据中,数据库中只存放视图对应的数据,这些数据仍存放在导出视图的基本表中。 当基本表中的数据发生变化时,从视图中查询出来的数据也随之改变。 三、SQL的主要特点 SQL有如下几个特点。 (1)SQL是类似于英语的自然语言,简洁易用。 (2)SQL是一种非过程语言。 (3)SQL是一种面向集合的语言。 (4)SQL既是自含式语言,又是嵌入式语言;可独立使用,也可以嵌入到宿主语言中。 (5)SQL是数据库查询(Query)、数据定义(Definition)、数据操纵(Manipulation)和数据控制(Control)四种功能。 创建数据表 语法格式:CREA TE TABLE<表名>(<列定义>[{,<列定义>|<表约束>}]) 例:create table s(xingm c(8),xueh c(8),chengj c(3)) 结果:

常用命令

服务器开始加电,等待片刻会自动引导操作系统,操作系统初始化完毕后会出现登录界面,输入正确的用户名:root和密码:zclroot就可以进入X 图形桌面环境了。 1.启动应用,数据库和数据交换 1).在数据库(SDB)机器上启动数据交换,在#号切到db2inst1用户: su –db2inst1 dbstart (启动数据库) 2)启动websphere:点击屏幕左下角的终端程序(贝壳状图标),然后在#后面输入 /opt/IBM/WebSphere/AppServer/bin/startServer.sh server1 提示进程号则表示启动成功,大约需要五分钟,注意:最后面是数字1不是字母l,server1前面有个空格,注意大小写字母 注:相应的停止websphere的命令为: #/opt/IBM/WebSphere/AppServer/bin/stopServer.sh server1 注意:如果在启动websphere的时候提示: ADMUO116I:正在文件 /opt/IBM/WebSphere/AppServer/bin/startServer.log 中记录工具信息 ADMUO128I:正在启动具有default概要文件的工具 ADMU3100I:正在从服务器读取配置:server1 ADMU3028I:在端口8880上检测到冲突。可能的原因:a) 已经有一个服务器server1的实例在运行b) 一些其他程序在使用端口8880 ADMU3027E:可能已经有一个服务器的实例在运行:server1

ADMU0111E:由于错误 Com.ibm.websphere.management.exception.AdminExcetption: ADMU3027E: 可能已经有一个服务器的实例在运行:server1 ,程序推出。 ADMU1211I:要获取故障的全部跟踪,使用–trace选项。 此时表示应用W ebsphere已经启动了,不需要再进行启动。 注意:如果在停止websphere的时候提示: ADMUO116I:正在文件 /opt/IBM/WebSphere/AppServer/bin/startServer.log 中记录工具信息 ADMUO128I:正在启动具有default概要文件的工具 ADMU3100I:正在从服务器读取配置:server1 ADMUO509I:无法到达 server “server1”.服务器看上去已经停止。 ADMUO211I:在文件 /opt/IBM/WebSphere/AppServer/bin/stopServer.log 中可以看到错误的信息 表示此时:应用W ebsphere现在处在停止状态,需要启动。 3)在数据库(SDB)机器上启动数据交换,在#号切到db2inst1用户: su –db2inst1 >cd server >showsjjh (查看数据交换,如果有四行表示数据交换已经启动。) > stopsjjh (停止数据交换) >showsjjh (查看数据交换,到没有命令行显示为止) >loadsjjh (启动数据交换) >showsjjh (查看数据交换信息) 出现如上四条信息为正常启动了数据交换 2.重启及开关机命令 #reboot重新启动计算机 #shutdown -r now 重新启动计算机,停止服务后重新启动计算机 #shutdown -h now 关闭计算机,停止服务后再关闭系统 #halt 关闭计算机,强制关闭 一般用shutdown -r now,在重启系统是关闭相关服务,shutdown -h now也是如此。 3.备份 #su –db2inst1 >db2 force applications all (切断目前所有与数据库的连接,可以多执行几次) >db2 backup db sino to /db2log (备份目录) 若备份成功会返回提示,并生成一个时间戳,所谓时间戳就是一串记录当前“年月日时分秒”的数字,形如20070212152930,也包含在新生成的备份文件的文件名里。 压缩命令 tar -cvfz sino20070317(压缩后的文件名).tar.gz 被压缩的文件名

db2常用命令+常见问题处理

1.db2常用命令大全 EXPORT TO D:\PRINTXML.IXF OF IXF 近一年来在项目开发中使用到了IBM的DB2 9.1的数据库产品,跟Oracle 相比一些命令有很大的区别,而它最大的功能是支持xml存储、检索机制,通过XPath进行解析操作,使开发人员免于对xml文件在应用进行解析处理,先对其常用命令进行一下汇总,以免遗忘。 注意:在执行如下命令时,需要首先安装db2客户端并通过在运行中输入db2cmd进行初始化 一、基础篇 1、connect to <数据库名> --连接到本地数据库名 db2 connect to <数据库名> user <用户名> using <密码> --连接到远端数据库 2、force application all --强迫所有应用断开数据库连接 3、db2 backupdb db2name<数据库名称> --备份整个数据库数据 db2 restore db --还原数据库 4、list application --查看所有连接(需要连接到具体数据库才能查看) 5、db2start --启动数据库 db2stop --停止数据库 6、create database <数据库名> using codeset utf-8 territory CN --创建数据库使用utf-8编码 7、db2 catalog 命令 catalog tcpip node <接点名称> remote <远程数据库地址> server <端口号> --把远程数据库映射到本地接点一般为50000 db2 catalog db<远程数据库名称> as <接点名称> at node PUB11 --远程数据库名称到本地接点 db2 CONNECT TO <接点名称> user <用户名> using <密码> --连接本地接点访问远程数据库 8、数据库导出 db2look -d <数据库名> -u <用户> -e -o <脚本名称>.sql --导出数据库的表结构,其中用户空间一般为db2admin/db2inst1

DB2常用SQL语句集

DB2常用SQL语句集 1、查看表结构: describe table tablename describe select * from tablename 2、列出系统数据库目录的内容: list database directory 3、查看数据库配置文件的内容: get database configuration for DBNAME 4、启动数据库: restart database DBNAME 5、关闭表的日志 alter table TBLNAME active not logged inially 6、重命名表 rename TBLNAME1 to TBLNAME2 7、取当前时间 select current time stamp from sysibm.sysdummy1 8、创建别名 create alias ALIASNAME for PRONAME(table、view、alias、nickname) 9、查询前几条记录 select * from TBLNAME fetch first N rows 10、联接数据库 db2 connect to DB user db2 using PWD 11、绑定存储过程命令 db2 bind BND.bnd 12、整理优化表 db2 reorgchk on table TBLNAME db2 reorg table TBLNAME db2 runstats on table TBNAME with distribution and indexes all 13、导出表 db2 export to TBL.txt of del select * from TBLNAME db2 export to TBL.ixf of ixf select * from TBLNAME 以指定分隔符‘|’下载数据: db2 "export to cmmcode.txt of del modified by coldel| select * from cmmcode”14、导入表 db2 import from TBL.txt of del insert into TBLNAME db2 import from TBL.txt of del commitcount 5000 insert into TBLNAME db2 import from TBL.ixf of ixf commitcount 5000 insert into TBLNAME db2 import from TBL.ixf of ixf commitcount 5000 insert_update into TBLNAME db2 import from TBL.ixf of ixf commitcount 5000 replace into TBLNAME db2 import from TBL.ixf of ixf commitcount 5000 create into TBLNAME (仅IXF) db2 import from TBL.ixf of ixf commitcount 5000 replace_create into TBLNAME (仅 IXF) 以指定分隔符“|”加载:

db2常见考试命令应用考试题

一选择题(每题1.5分,共45分) 1) 下面的哪个数据库版本可以访问OS/390 上的DB2 UDB 数据库? a) DB2 Connect Personal Edition b) DB2 Universal Database Workgroup Edition c) DB2 Personal Developer's Edition d) DB2 Universal Developer's Edition 2) 下面的哪个工具可以编目一个数据库信息? a) Journal 日志工具 b) Alert Center 警告中心 c) License Center 许可证中心 d) Client Configuration Assistant 客户端配置助手 3) 下面的哪个工具可以重组数据回收表中被删除的行所占有的资源? a)reorg b) db2look c) db2move d) runstats 4) USE这个特权的用途是? a) query data in a table. b) load data into a table. c) create tables within a table space. d) create table spaces within a database. 5) 如果创建数据库则需要下面的哪两个权限? a) DBADM b) SYSADM c) DBCTRL d) SYSCTRL e) SYSMAINT 6) 编目一个远程数据库是指: a) 在PC或者Unix 机器上执行编目,目的是为了识别DB2数据库管理器所在的服务器 b) 在PC或者Unix机器上编目,目的是为了让用户和应用程序可以识别DB2数据库 c) 从不在DB2中编目,仅当每个节点上的数据库被允许编目时编目,所以自动编目那个节点就可以自动编目数据库N d) 在PC或者UNIX机器上编目是为了打开在DB2数据库中的目录表,这样当前的用户可以访问这个数据库中的一组可以被访问的数据表。 7) 给出下面的语句

DB 2 常用命令

DB 2 常用命令 一、加载数据: 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

db2常用命令

1.Load时表挂起状态 set INTEGRITY for "EDWDATA"."F_PR_ALS_CUSTOMER_RELATIVE" IMMEDIATE CHECKED 解锁 2.对指定表列设置自增列 Alter table bir.TB_LOG_PAGE_t alter column logid set not null; Alter table bir.TB_LOG_PAGE_t alter column logid set generated GENERATED ALWAYS AS IDENTITY (START WITH 802144, INCREMENT BY 1, CACHE 20, MINVALUE 1, MAXVALUE 2147483647, NO CYCLE, NO ORDER) 3.ALTER TABLE bir.z88_job_log ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE 4.RUNCATE TABLE tabname IMMEDIATE 5.DB2 LIST DATABASE PARTITION GROUPS SHOW DETAIL 查看数据库分区情况 db2 alter bufferpool CRM_BF_8immediate size 232768automatic 缓冲池调整为自动调整功能。 ALTER BUFFERPOOL SIZE ALTER BUFFERPOOL SIZE BF_32 6.Select bpname,npages from sysibm.sysbufferpools -2为自动调整状态 7.通过将self_tuning_mem 设置为ON 来对数据库启用自调整功能。可以使用UPDATE DATABASE CONFIGURA TION 命令、SQLFUPD API 或通过控制中心中的更改数据库配置参数窗口来将self_tuning_mem 设置为ON 8.?要对由内存配置参数控制的内存区域启用自调整功能,请使用UPDATE DATABASE CONFIGURATION 命令、 SQLFUPD API 或通过控制中心中的更改数据库配置参数窗口将相关配置参数设置为AUTOMA TIC。 ?要对缓冲池启用自调整功能,请将缓冲池大小设置为AUTOMATIC。可以使用ALTER BUFFER POOL 语句(对于现有缓冲池)或CREATE BUFFER POOL 语句(对于新缓冲池)来完成此操作。如果在DPF 环境中将缓冲池大小设置为AUTOMA TIC,就不应该在sysibm.sysbufferpoolnodes 中为该缓冲池定义任何条目。 Update db cfg using self_tuning_mem ON 启用自动调整内存 必须至少有两个内存使用者启用自调整功能才能使自调整功能有效。内存使用者包括SHEAPTHRES_SHR、PCKCACHESZ、BUFFER POOL(每个缓冲池计数为一个)、LOCKLIST 和DATABASE_MEMORY 参数设置 1.-- SORTHEAP是数据库级别参数-- 2.db2 -v update db cfg for DB_NAME using SORTHEAP 4273 3.-- SHEAPTHRES是实例级别参数-- 4.db2 -v update dbm cfg using SHEAPTHRES 0 5. db2 update dbm cfg using SHEAPTHRES_SHR 473258 db2 –v reorgchk update statistics on table all;对所有表做runstats

db2 实战常用命令

db2 force application all –断开所有链接数据库的应用 db2 list application-查看连接数据库的应用 db2 bakup db ksdbs 备份数据库 db2start db2stop启停数据库 db2 connect reset断开所有链接 scp get trans.ini -r back@10.10.9.160/home/back/bccbin \ scp local_file remote_username@remote_ip:remote_folder 或者 scp local_file remote_username@remote_ip:remote_file scp -r ip:/db/dbhome/dbguard 【1】 db2top –d ksdbs db2pd -d ksdbs -stat >stat.log 查看数据库状态(数据超大超详细) 【1】find -type f | xargs dos2unix 遍历格式转换 【1】 find . -name [A-Z]* -print 查找当前目录下以大写字母命名的文件 【1】 >db2ckbkp 检查数据库的完整性 >tee 命令 用途--显示程序的输出并将其复制到一个文件中。 【1】db2 connect reset db2 list directory db2 list active databases db2 get db cfg db2 get db cfg 【1】归档日志 db2 update db cfg for db_name using LOGRETAIN ON 更改归档目录: db2 update db cfg for db_name using LOGARCHMETH1 "disk:/archive/db_name_db_log" 在我重新连接数据库的时候提示: db2 connect to t_1 to mydb SQL1116N A connection to or activation of database "T_1" cannot be made because of BACKUP PENDING. SQLSTATE=57019 网上找了n多最后才知道 若修改数据库LOGRETAIN参数,从循环日志模式改为归档日志模式,则会导致数据库backup pending状态。

DB2常用命令小结

1、打开命令行窗口 #db2cmd 2、打开控制中心 # db2cmd db2cc 3、打开命令编辑器 db2cmd db2ce =====操作数据库命令===== 4、启动数据库实例 #db2start 5、停止数据库实例 #db2stop 如果你不能停止数据库由于激活的连接,在运行db2stop前执行db2 force application all 就可以了/db2stop force 6、创建数据库 #db2 create db [dbname] 7、连接到数据库 #db2 connect to [dbname] user [username] using [password]

8、断开数据库连接 #db2 connect reset 9、列出所有数据库 #db2 list db directory 10、列出所有激活的数据库 #db2 list active databases 11、列出所有数据库配置 #db2 get dbcfg 12、删除数据库 #db2 drop database [dbname] (执行此操作要小心) 如果不能删除,断开所有数据库连接或者重启db2 =========操作数据表命令========== 13、列出所有用户表 #db2 list tables 14、列出所有系统表 #db2 list tables for system

15、列出所有表 #db2 list tables for all 16、列出系统表 #db2 list tables for system 17、列出用户表 #db2 list tables for user 18、列出特定用户表 #db2 list tables for schema [user] 19、创建一个与数据库中某个表(t2)结构相同的新表(t1) #db2 create table t1 like t2 20、将一个表t1的数据导入到另一个表t2 #db2 "insert into t1 select * from t2" 21、查询表 #db2 "select * from table name where ..." 22、显示表结构 #db2 describe table tablename 23、修改列

DB2V9.5管理命令汇总

1、load命令相关 查看表的load情况: LOAD QUERY--TABLE--table-name 查看所有的实用程序的情况: LIST UTILITIES SHOW DETAIL db2 "list utilities show detail" 直接load表数据,不需要中间文件: LOAD FROM (SELECT * FROM T1) OF CURSOR INSERT INTO T2 2、显示数据信息 1、 LIST DATABASE DIRECTORY 2、 3、如何快速清除一个大表? 1、alter table BIFM_CIFM_2 activate not logged initially with empty table 4、bufferpool 1、select * from SYSCAT.BUFFERPOOLS 5、查看当前连接到数据库的应用 1、db2 list application [show detail] 强制停止所有数据库链接: db2 force application all或者(id) 6、原因是:表所在表空间的pagesiez为16k而系统临时表空间pagesize为4k,故而出错。select * from t_run_log order by run_time asc 不存在具有足够页大小的系统临时表空间。. SQLCODE=-1585, SQLSTATE=54048, DRIVER=4.12.55 失败的查询=> 1 总执行时间=> 0 ms 7、查看资源的锁定情况 db2pd db2pd> -db astemp -locks show detail //根据显示的锁定的表的表id,取出表的信息 select * from syscat.tables where tableid in (780,1805,1807,1808) 8、创建数组数据类型 //创建数据库中的type对象 create type intArray as integer array[] create type strArray as varchar(5000) array[] //上面创建完成后,才能进行过程变量声明 declare v_step_idArray intArray; set v_step_idArray=array[select step_id from T_RUN_STEP where run_id=v_run_id and state=1 and run_state in (0,3) order by step_id asc] 9、查看db2 Node信息 db2 list node directory 10、查看db2实例上的数据库信息 db2 list db directory

BD2常用命令

DB2 的常用命令: 1,列举出相应的schema下面的所有表。 db2 list tables for schema schemaname 举例:db2 list tables for schema db2admin 2, 列举出当前数据库的目录。 db2 list db directory 举例:db2 list db directory 3, DB2自动增长主键方法 generated always as identity(start with 1,increment by 1) 将一个字段指定为 自增长型字段,放在数据类型后。 举例:crate table students ( sno integer not null primary key generated always as identity (start with 1, increment by 1), sname char(20), sname char(30))

此时插入数据,然后查看结果,sno自动增长1. 4, 数据的导入导出: export to E:\name.txt of del select * from tableName 导出举例1: export to C:\stInfo.ixf of ixf select * from students 导出举例2: 导入举例1: db2 "import from E:\name.txt of del insert into tableName

导入举例2: db2 "import from E:\name.ixf of ixf commitcount 5000 insert /create/replace into tableName

db命令实例大全

d b命令实例大全 公司标准化编码 [QQX96QT-XQQB89Q8-NQQJ6Q8-MQM9N]

db2命令实例大全 管理命令: create database mbmst using codeset GBK territory CN 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:\ 拷贝存储过程到服务器上的C:\sqllib\function目录中 12.整理表 db2 connect to o_yd user db2 using pwd db2 reorg table ydd

DB2 简明运维手册

DB2 简明运维手册 数据库启动 数据库正常启动的流程包括两个步骤, 首先启动数据库实例,在root用户下切换到实例用户su - db2inst1,执行命令db2start 然后激活对应的数据库,执行命令: db2 activate db 数据库名。 直到出现: 则数据库成功启动。 数据库停止 停止数据库使用如下命令: 在root用户下切换到实例用户su - db2inst1,执行命令db2stop force, 直到出现: 则数据库停止成功。 数据库参数 DB2的参数分为实例级参数和数据库级参数,以及实例注册变量 实例级参数:

主要设置实例使用的TCP/IP端口,查看实例端口通过命令:db2 get dbm cfg 数据库实例注册变量: 确认设置了通信协议为TCPIP,命令如下: 如果没有设置则通过命令db2set DB2COMM=tcpip进行设置。 数据库参数 确认内存自动调整已经打开, 否则连接到数据库并执行db2 update db cfg for sample using SELF_TUNING_MEM ON设置 数据库的缺省日志参数为

如果需要修改日志参数,可以通过命令 db2 udpate db cfg for 数据库名using 参数名参数值 例如增大备用日志文件数量到50,则可以通过命令修改 创建数据库 在实例用户下,执行 db2 "create <数据库名> on <目标路径> using codeset UTF-8 territory cn" 这样创建的数据库缺省页面大小(pagesize)为4K(4096),字符集为UTF-8,如果要使用GBK字符集,则把UTF-8修改为GBK即可。 创建缓冲池(bufferpool) 为了使用与缺省页面大小不一致的表空间,例如缺省页面大小为4K,但是需要使用32K页的表空间,就必须先创建页面大小为32K的缓冲池,命令如下:db2 "create bufferpool bp32k pagesize 32768" bp32k为缓冲池的名字,通常每种页面大小创建一个缓冲池即可,例如8K页面的缓冲池可以命名为bp8k。缓冲池缺省为自动调整大小,如果需要限定使用内存,则使用alter命令,如下: db2 "alter bufferpool bp32k size <页面数量> " <页面数量>为目标内存大小/页面大小,例如要为32K的bufferpool分配2GB内存,则: <页面数量>=2 * 1024 * 1024 / 32 = 65536 创建表空间 如果创建数据库默认页面大小的表空间,并且选择系统自动管理的模式,则使用命令: db2 "create tablespace <表空间名>"

db2常用命令

一、常用命令 1. 启动实例 db2start 2. 停止实例 db2stop 3. 删除一个实例 db2idrop -f instance_name 4. DB2 配置文件注册库 要列举所支持的全部 DB2 配置文件注册库(db2set -lr) 要设置 DB2 配置文件注册库(db2set registry_variable=value) 例子:单一值的示例: db2set DB2COMM=TCPIP 多个值的示例:db2set DB2COMM=TCPIP. NPIPE. LOCAL 显示服务器上当前设置: db2set –all [e] 表示为当前会话或环境所设置的注册库 [u] 表示用户级注册库 [n] 表示节点级注册库 [i] 表示实例级注册库 [g] 表示全局级注册库 5. DB2数据库管理器配置参数 存在两个配置“级别”:实例级别和数据库级别 实例级别:db2 get database manager configuration 数据库级别:db2 get database configuration for database_name 设置您的数据库管理器或数据库配置参数的值 db2 update database manager configuration using parameter new_value db2 update database configuration for database_name using parameter new_value 为显式指定这种立即生效的行为. 可将 immediate 关键字附加到 update 命令中: db2 update database manager configuration using parameter new_value immediate db2 update database configuration for database_name using parameter new_value immediate 若您选择将此更改延迟至实例重启或数据库激活时. 则应指定 deferred 关键字: db2 update database manager configuration using parameter new_value deferred db2 update database configuration for database_name using parameter new_value deferred 6. 远程连接 db2 catalog tcpip node mynode remote ipaddress server 50000 db2 catalog database sample as mysamp at node mynode db2 attach to nodename user username using password 附加到实例后. 您可在该实例上执行管理任务. 例如: 创建和删除数据库

LVM常用命令汇总

【术语解释】 ?物理卷physical volumes(PV):物理卷处于逻辑卷管理器中的底层,任何的逻辑卷和卷组都必需依靠物理卷来建立;物理卷可以是一个完整的硬盘,也可以是硬盘中的一个分区 ?逻辑卷logical volumes(LV):逻辑卷建立在卷组之上,卷组中的空间可以建立多个逻辑卷,并且逻辑卷可以随意在卷组的空闲空间中增减,逻辑卷可以属于一个卷组,也可以属于不同的多个卷组。LV 是位于PV 上的信息的组合,在LV 上的数据可以连续或者不连续地出现在PV。 ?卷组logical volume group(VG):卷组是建立在物理卷之上,一个卷组中可以包含一个物理卷组或者多个物理卷。所有的物理卷属于一个称作rootvg 的卷组。 ?卷组描述区域Volume Group Descriptor Area (VGDA):用于描述物理卷、卷组、逻辑卷分配的所由信息。逻辑卷以及卷组相关的元数据也是保存在位于物理卷起始处的VGDA( 卷组描述符区域) 中。 1、查看lvm状态: [root@LOCALHOST ~]# pvs --partial [root@LOCALHOST ~]# vgs --partial [root@LOCALHOST ~]# lvs --partial 2、查看pv、vg、lv是否异常 [root@LOCALHOST ~]# pvs [root@LOCALHOST ~]# vgs [root@LOCALHOST ~]# lvs [root@LOCALHOST ~]# lsblk #列出所有可用块设备的信息 3、PV (物理卷) 命令: pvcreate(创建)pvmove(移动)pvdisplay(显示)pvremove(移除)pvs(显示)

DB2数据库基础入门

IBM DB2数据库基础 基本命令集合 1. 建立数据库DB2_GCB CREATE DATABASE DB2_GCB ON G: ALIAS DB2_GCB USING CODESET GBK TERRITORY CN COLLATE USING SYSTEM DFT_EXTENT_SZ 32 2. 连接数据库 connect to sample1 user db2admin using 8301206 3. 建立别名 create alias db2admin.tables for sysstat.tables; CREATE ALIAS DB2ADMIN.VIEWS FOR SYSCAT.VIEWS create alias db2admin.columns for syscat.columns; create alias guest.columns for syscat.columns; 4. 建立表 create table zjt_tables as (select * from tables) definition only; create table zjt_views as (select * from views) definition only; 5. 插入记录 insert into zjt_tables select * from tables; insert into zjt_views select * from views;

6. 建立视图 create view V_zjt_tables as select tabschema,tabname from zjt_tables; 7. 建立触发器 CREATE TRIGGER zjt_tables_del AFTER DELETE ON zjt_tables REFERENCING OLD AS O FOR EACH ROW MODE DB2SQL Insert into zjt_tables1 values(substr(o.tabschema,1,8),substr(o.tabname,1,10)) 8. 建立唯一性索引 CREATE UNIQUE INDEX I_ztables_tabname ON zjt_tables(tabname); 9. 查看表 select tabname from tables where tabname='ZJT_TABLES'; 10. 查看列 select SUBSTR(COLNAME,1,20) as 列名,TYPENAME as 类型,LENGTH as 长度 from columns where tabname='ZJT_TABLES'; 11. 查看表结构 db2 describe table user1.department db2 describe select * from user.tables

相关主题
文本预览
相关文档 最新文档