文档库 最新最全的文档下载
当前位置:文档库 › db2 load 命令

db2 load 命令

db2 load 命令
db2 load 命令

当DB2 的数据库启用了前滚恢复模式,即将日志由循环日志方式改为归档日志,以便用户在进行恢复操作时,可在恢复了数据库或表空间的备份后,再通过前滚归档日志中的事务,恢复数据库备份时间点之后提交的事务,最大程度的保护数据库的数据。

而DB2 的LOAD 实用程序为实现快速导入数据的功能,除采用了通过直接向数据库中写入格式化的数据页装载数据,导入过程中不激活触发器,不会检查参考完整性和表检查约束当等方式外,还最小化了记录事务日志的操作。在LOAD 的LOAD、BUILD、DELETE 和INDEX COPY 四个处理阶段中,仅在DELETE 阶段记录对每个删除事件记日志,即只对每个违反唯一约束的行的删除操作记日志,因此整个LOAD 操作仅记录了极少的日志。

由于LOAD 最小化了日志的记录,有因启用了前滚恢复的数据库在恢复在线备份时需要归档日志的特性,对于这种数据库的LOAD 操作,为避免执行LOAD 操作后,表在使用ROLLFORWARD 命令前滚归档日志的过程中因缺少日志而被置为非正常状态,DB2 为LOAD 命令提供了如下选项:

·COPY NO(缺省)

·COPY YES

·NONREVERABLE

为更清楚地说明这些选项的作用,这里将以举例的方式进行说明。而在开始操作之前,首先了解一下DB2 备份操作所产生的映象文件的形式和命名特点:

在UNIX 环境下是文件的形式:

Databasealias.Type.Instancename.Nodename.Catnodename.Timestamp.number

在Windows 环境下是子目录及文件的形式:

Databasealias.Type\Instancename\Node0000\Catn0000\yyyymmdd\hhmmss.number

而其中的Type 则因备份类型的不同而不同:

0 -- 数据库全备份

3 -- 表空间备份

4 -- 由LOAD 操作产生的备份

1. 进行一次数据库的全备份:

首先对已启用前滚恢复模式的SAMPLE 数据库进行一次全备份:

E:\TEST>db2 backup db sample

备份成功。此备份映像的时间戳记是:20051230174105

这时看到在当前目录下产生了一个SAMPLE.0 的子目录,表明产生的是一个数据库全备份。下面将对这些现象逐个予以举例说明:

2. 关于COPY NO:

在LOAD 操作结束时,将表所在的表空间置于“备份暂挂”状态,此时虽然其中的表可以进行SELECT 操作,但不能进行UPDATE 和DELETE 操作。为使该表状态恢复正常,除去备份暂挂状态,必须手动对其表空间执行一个BACKUP 命令。由于该选项为缺省选项,如果LOAD 命令中未指明,则默认为使用该选项,如:

E:\TEST>db2 connect to sample

E:\TEST>db2 load from staff.del of del insert into staff

E:\TEST>db2 list tablespaces

表空间标识= 2

名称= USERSPACE1

类型= 系统管理空间

内容= 任何数据

状态= 0x0020

详细解释:

备份暂挂

E:\TEST>db2 select count(*) from staff

1

-----------

70

1 条记录已选择。

E:\TEST>db2 update staff set id=335 where id=340

DB21034E 该命令被当作SQL 语句来处理,因为它不是有效的“命令行处理器”命令。在SQL 处理期间,它返回:

SQL0290N 不允许存取表空间。SQLSTATE=55039

在手动对USERSPACE1 表空间进行一次备份操作后,表空间状态将正常,再次尝试更新操作就会成功:

E:\TEST>db2 backup db sample tablespace (userspace1)

备份成功。此备份映像的时间戳记是:20051230184841

命令完成后可以在当前目录下看到产生了一个SAMPLE.3 的子目录,表明产生的是一个表

空间级的备份。

E:\TEST>db2 connect to sample

E:\TEST>db2 list tablespaces

表空间标识= 2

名称= USERSPACE1

类型= 系统管理空间

内容= 任何数据

状态= 0x0000

详细解释:

正常

而所产生这份关于表空间的备份可在数据库因前滚操作将表空间置为“复原暂挂”状态时用于将表空间状态恢复为正常,并恢复LOAD 操作对该表的修改。如当前滚数据库超过LOAD 时间点后,表空间将被置为复原暂挂状态:

E:\TEST>db2 restore db sample taken at 20051230174105

DB20000I RESTORE DA TABASE 命令成功完成。

E:\TEST>db2 rollforward db sample to end of logs and stop

SQL1271W 已恢复数据库"SAMPLE",但在节点"0"上有一个或多个表空间脱机

E:\TEST>db2 connect to sample

E:\TEST>db2 list tablespaces

表空间标识= 2

名称= USERSPACE1

类型= 系统管理空间

内容= 任何数据

状态= 0x0100

详细解释:

复原暂挂

此时可利用这一表空间级的备份进行恢复操作:

E:\TEST>db2 restore db sample tablespace (userspace1) taken at 20051230184841

DB20000I RESTORE DA TABASE 命令成功完成。

E:\TEST>db2 connect to sample

E:\TEST>db2 list tablespaces

表空间标识= 2

名称= USERSPACE1

类型= 系统管理空间

内容= 任何数据

状态= 0x0080

详细解释:

前滚暂挂

E:\TEST>db2 rollforward db sample to end of logs and stop tablespace (userspace1)

前滚状态

输入数据库别名= sample

节点数已返回状态= 1

节点号= 0

前滚状态= 未暂挂

下一个要读取的日志文件=

已处理的日志文件= -

上次落实的事务= 2005-12-30-10.47.10.000000

DB20000I ROLLFORWARD 命令成功完成。

E:\TEST>db2 connect to sample

E:\TEST>db2 list tablespaces

:

表空间标识= 2

名称= USERSPACE1

类型= 系统管理空间

内容= 任何数据

状态= 0x0000

详细解释:

正常

:

E:\TEST>db2 update staff set id=335 where id=340

DB20000I SQL 命令成功完成。

可见表空间状态已正常,表也可执行更新操作了。

3. 关于COPY YES:

在LOAD 操作结束时,DB2 自动对表所在的表空间进行一次备份操作,因而LOAD 结束后,表所在的表空间不会再处于“备份暂挂”状态,而为“正常”状态。但由于要进行备份操作,所以这种LOAD 操作的时间会较没有备份的长。如:

E:\TEST>db2 connect to sample

E:\TEST>db2 load from staff.del of del insert into staff copy yes to .

E:\TEST>db2 list tablespaces

:

表空间标识= 2

名称= USERSPACE1

类型= 系统管理空间

内容= 任何数据

状态= 0x0000

详细解释:

正常

:

E:\TEST>db2 select count(*) from staff

1

-----------

105

1 条记录已选择。

此时可在当前目录下看到一个SAMPLE.4 的子目录,表明产生的是一个由LOAD 操作生成的备份,而这份备份将在数据库进行前滚恢复操作时用于重新创建LOAD 操作对数据库的修改。如:

E:\TEST>db2 restore db sample taken at 20051230174105

DB20000I RESTORE DA TABASE 命令成功完成。

E:\TEST>db2 rollforward db sample to end of logs and stop

前滚状态

输入数据库别名= sample

节点数已返回状态= 1

节点号= 0

前滚状态= 未暂挂

下一个要读取的日志文件=

已处理的日志文件= S0000002.LOG - S0000003.LOG

上次落实的事务= 2005-12-30-11.48.26.000000

DB20000I ROLLFORWARD 命令成功完成。

E:\TEST>db2 connect to sample

E:\TEST>db2 list tablespaces

:

表空间标识= 2

名称= USERSPACE1

类型= 系统管理空间

内容= 任何数据

状态= 0x0000

详细解释:

正常

:

E:\TEST>db2 select count(*) from staff

1

-----------

105

1 条记录已选择。

这表明在SAMPLE.4 下的备份被用于了前滚恢复操作,而重新创建了LOAD 操作对数据库插入的记录。

4. 关于NONRECOVERABLE:

该选项会将LOAD 操作标志为不可恢复,即数据库不能通过后续的前滚操作而被恢复。LOAD 操作结束后,数据库既不会处于“备份暂挂”状态,也不会产生任何的备份。

E:\TEST>db2 connect to sample

E:\TEST>db2 load from staff.del of del insert into staff nonrecoverable

E:\TEST>db2 list tablespaces

:

表空间标识= 2

名称= USERSPACE1

类型= 系统管理空间

内容= 任何数据

状态= 0x0000

详细解释:

正常

:

虽然LOAD 之后表空间和表的状态都正常,但如果今后需要执行前滚命令恢复数据库时,前滚操作将跳过LOAD 事务的处理,而将LOAD 的表标记为无效,是对表的任何操作都不能进行。如:

E:\TEST>db2 restore db sample taken at 20051230174105

DB20000I RESTORE DA TABASE 命令成功完成。

E:\TEST>db2 rollforward db sample to end of logs and stop

前滚状态

输入数据库别名= sample

节点数已返回状态= 1

节点号= 0

前滚状态= 未暂挂

下一个要读取的日志文件=

已处理的日志文件= S0000002.LOG - S0000003.LOG

上次落实的事务= 2005-12-30-12.19.55.000000

DB20000I ROLLFORWARD 命令成功完成。

E:\>db2 connect to sample

E:\TEST>db2 list tablespaces

:

表空间标识= 2

名称= USERSPACE1

类型= 系统管理空间

内容= 任何数据

状态= 0x0000

详细解释:

正常

:

E:\>db2 select * from staff

ID NAME DEPT JOB YEARS SALARY COMM

------ --------- ------ ----- ------ --------- ---------

SQL1477N 不能存取表"LIWENLI.STAFF"。SQLSTATE=55019

这表明该表已不可操作,此时只有将表删除,重新构建,或使用LOAD 操作时间点之后所做的数据库全备份或表空间备份来恢复该表。

5.关于注册表变量DB2_LOAD_COPY_NO_OVERRIDE的介绍:

另外DB2 还提供了一个注册表变量:DB2_LOAD_COPY_NO_OVERRIDE,可将LOAD 的缺省选项COPY NO 设置为NONRECOVERABLE 或COPY YES。具体使用方法举例为: 设置为COPY YES 的方法:

E:\TEST>db2set DB2_LOAD_COPY_NO_OVERRIDE="COPY YES TO E:\TEST"

E:\TEST>db2 terminate

E:\TEST>db2set

DB2_LOAD_COPY_NO_OVERRIDE=COPY YES TO E:\TEST

:

E:\TEST>db2 load from staff.del of del insert into staff

SQL27966W DB2_LOAD_COPY_NO_OVERRIDE 注册表变量值"COPY YES TO E:\TEST" 将覆盖在Load 中指定的COPY NO 参数。

:

:

设置为NONRECOVERABLE 的方法:

E:\TEST>db2set DB2_LOAD_COPY_NO_OVERRIDE=NONRECOVERABLE

E:\TEST>db2 terminate

E:\TEST>db2set

DB2_LOAD_COPY_NO_OVERRIDE=NONRECOVERABLE

:

E:\TEST>db2 load from staff.del of del insert into staff

SQL27966W DB2_LOAD_COPY_NO_OVERRIDE 注册表变量值"NONRECOVERABLE" 将覆盖在Load 中指定的COPY NO 参数。

:

:

通过上述对LOAD 的COPY NO,COPY YES 和NONRECOVERABLE 参数,以及DB2 注册表变量DB2_LOAD_COPY_NO_OVERRIDE 的详细和举例说明,到此我们已经掌握了它们的功能和使用方法。由于LOAD 操作几乎不记日志的特性,在对启用了前滚恢复的数据库实现LOAD 操作时应注意从中选择适当的选项,以保证执行了LOAD 操作的表的可用性。

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)) 结果:

db2look命令详解

db2look 今天整理了一下db2look命令参数说明 db2look Command syntax | |>>-db2look-- -d--DBname--+-----+--+--------------+--------------> | '- -e-' '- -u--Creator-' | |>--+-------------+--+-------------------------------------+-----> | '- -z--schema-' '-+----------------+--+-------------+-' | | .-------. | '- -tw--Tname-' | | V | | | '- -t----Tname-+-' | |>--+----------------+--+-----+--+------------+--+-----+---------> | | .-------. | '- -h-' '- -o--Fname-' '- -a-' | | V | | | '- -v----Vname-+-' | |>--+-----------------------+--+-----+--+-----+--+------+--------> | '- -m--+-----+--+-----+-' '- -l-' '- -x-' '- -xd-' | '- -c-' '- -r-' | |>--+-----+--+-----------------+--+-----+--+-----+--+-----+------> | '- -f-' '- -td--delimiter-' '- -p-' '- -s-' '- -g-' | |>--+----------+--+----------------------------+-----------------> | '- -noview-' '- -i--userid-- -w--password-' | |>--+------------------+--+---------+---------------------------><

常用命令

服务器开始加电,等待片刻会自动引导操作系统,操作系统初始化完毕后会出现登录界面,输入正确的用户名: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) 以指定分隔符“|”加载:

Linux使用命令行安装DB2【详解】

DB2 ESE V9.7文本方式安装主要流程: (1)解压安装包,检查安装先决条件 (2)执行安装程序 (3)注册license(Express-C版无需注册) (4)创建3个用户组和3个用户,分别是实例用户、受限用户、管理用户 (5)创建一个管理服务器 (6)创建一个实例 (7)配置DB2访问协议 (8)配置DB2实例默认端口号 一、安装前准备工作 1、将下载的安装文件上传到待安装的LINUX 机器,解压缩v9.7_linuxx64_server.tar.gz 文件到某个目录 [root@redflag11012601 app]# ll v*gz -rw-r--r-- 1 root root 810576392 05-03 19:44 v9.7_linuxx64_server.tar.gz [root@redflag11012601 app]# tar xzf v9.7_linuxx64_server.tar.gz 2、解压产生两个目录server和db2 [root@redflag11012601 app]# cd server [root@redflag11012601 server]# ll

总计 64 drwxr-xr-x 6 bin bin 4096 2009-11-16 db2 -r-xr-xr-x 1 bin bin 5340 2009-11-16 db2ckupgrade -r-xr-xr-x 1 bin bin 5293 2009-11-16 db2_deinstall -r-xr-xr-x 1 bin bin 5163 2009-11-16 db2_install -r-xr-xr-x 1 bin bin 5127 2009-11-16 db2ls -r-xr-xr-x 1 bin bin 5145 2009-11-16 db2prereqcheck -r-xr-xr-x 1 bin bin 5145 2009-11-16 db2setup drwxr-xr-x 15 bin bin 4096 2009-11-16 doc -r-xr-xr-x 1 bin bin 5181 2009-11-16 installFixPack server 的子目录有多个可执行的脚本,其中db2prereqcheck是先决条件检查,db2setup 是图形界面安装程序,db2_install是命令行方式安装。还有一个db2目录,保存了需要安装的二迚制文件。 3、执行db2prereqcheck查看是否缺少先决条件 [root@redflag11012601 server]# ./db2prereqcheck 如果没有返回任何结果,表明系统符合DB2 安装的先决条件,可以进入下一步安装。如果返回信息,请按信息提示修改配置,然后再次运行,直到没有错误提示。 二、安装DB2数据库软件

在db2上建立数据库分区的步骤和命令

本文简单介绍了在DB2上建立数据库分区的步骤和涉及到的命令等,供大家参考! AD:创建database partition 1、创建需要建立数据库分区的db instance 可使用命令建立db instance: db2icrt -s ESE -u db2admin,aaa123456 -h ANWENHAO DBINSTANCENAME 创建完成对应的instance 后需要重启DB2。 2、将新建的db instance加入到DB2中: CATALOG LOCAL NODE DB2INST1 INSTANCE DB2INST1 SYSTEM ANWENHAO OSTYPE NT; 3、在命令行中设置当前需要操作的dbInstance。 set db2instance=db2inst1 db2 get instance

db2 attach to db2inst1 4、创建DBPartition db2start dbpartitionnum 1 ADD DBPARTITIONNUM HOSTNAME ANWENHAO PORT 1 COMPUTER ANWENHAO USER db2admin PASSWORD aaa123456 WITHOUT TABLESPACES 5、创建完成后需要重新启动db2。DB2在此时会增加一个database partition并进行redistribution。 以上操作即完成database partition。 创建database partition group CREATE DATABASE PARTITION GROUP "NODE1" ON DBPARTITIONNUMS (1); COMMENT ON DATABASE PARTITION GROUP "NODE1" IS 'ANWENHAO _1';

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 load 命令

当DB2 的数据库启用了前滚恢复模式,即将日志由循环日志方式改为归档日志,以便用户在进行恢复操作时,可在恢复了数据库或表空间的备份后,再通过前滚归档日志中的事务,恢复数据库备份时间点之后提交的事务,最大程度的保护数据库的数据。 而DB2 的LOAD 实用程序为实现快速导入数据的功能,除采用了通过直接向数据库中写入格式化的数据页装载数据,导入过程中不激活触发器,不会检查参考完整性和表检查约束当等方式外,还最小化了记录事务日志的操作。在LOAD 的LOAD、BUILD、DELETE 和INDEX COPY 四个处理阶段中,仅在DELETE 阶段记录对每个删除事件记日志,即只对每个违反唯一约束的行的删除操作记日志,因此整个LOAD 操作仅记录了极少的日志。 由于LOAD 最小化了日志的记录,有因启用了前滚恢复的数据库在恢复在线备份时需要归档日志的特性,对于这种数据库的LOAD 操作,为避免执行LOAD 操作后,表在使用ROLLFORWARD 命令前滚归档日志的过程中因缺少日志而被置为非正常状态,DB2 为LOAD 命令提供了如下选项: ·COPY NO(缺省) ·COPY YES ·NONREVERABLE 为更清楚地说明这些选项的作用,这里将以举例的方式进行说明。而在开始操作之前,首先了解一下DB2 备份操作所产生的映象文件的形式和命名特点: 在UNIX 环境下是文件的形式: Databasealias.Type.Instancename.Nodename.Catnodename.Timestamp.number 在Windows 环境下是子目录及文件的形式: Databasealias.Type\Instancename\Node0000\Catn0000\yyyymmdd\hhmmss.number 而其中的Type 则因备份类型的不同而不同: 0 -- 数据库全备份 3 -- 表空间备份 4 -- 由LOAD 操作产生的备份 1. 进行一次数据库的全备份: 首先对已启用前滚恢复模式的SAMPLE 数据库进行一次全备份: E:\TEST>db2 backup db sample 备份成功。此备份映像的时间戳记是:20051230174105

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 <表空间名>"

相关文档