db2常用命令 下载本文

1. Load时表挂起状态

set INTEGRITY for \解锁

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_8 immediate size 232768 automatic 缓冲池调整为自动调整功能。

ALTER BUFFERPOOL SIZE ALTER BUFFERPOOL SIZE BF_32

6. Select bpname,npages from sysibm.sysbufferpools -2为自动调整状态

7. 通过将 self_tuning_mem 设置为 ON 来对数据库启用自调整功能。可以使用 UPDATE DATABASE

CONFIGURATION 命令、SQLFUPD API 或通过控制中心中的更改数据库配置参数窗口来将 self_tuning_mem 设置为 ON 8. ?要对由内存配置参数控制的内存区域启用自调整功能,请使用 UPDATE DATABASE CONFIGURATION 命令、

SQLFUPD API 或通过控制中心中的更改数据库配置参数窗口将相关配置参数设置为 AUTOMATIC。

?要对缓冲池启用自调整功能,请将缓冲池大小设置为 AUTOMATIC。可以使用 ALTER BUFFER POOL 语句(对于现有缓冲池)或 CREATE BUFFER POOL 语句(对于新缓冲池)来完成此操作。如果在 DPF 环境中将缓冲池大小设置为 AUTOMATIC,就不应该在 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

runstats on table pdata. T05_BKOP_FTRANS_INFO_HST with distribution and detailed indexes all

--对字段做长度调整PRC_TB_T05_BKOP_FTRANS_INFO_HST

ALTER table tab_name alter column column_name set data type VARCHAR(50);

reorg table TT_TABLE;

db2 \/home/db2inst1/db2inst1/TB_ORG_TYPE.del of del modified by codepage=1386 coldel0x1D select * from BIR.TB_ORG_TYPE fetch first 10 rows only\ db2 \from /home/db2inst1/db2inst1/TB_LOG_SQL.del of del modified by identitymissing norowwarnings codepage=1386 coldel0x1D fastparse insert into bir.TB_LOG_SQL_test\ db2 “import from /home/db2inst1/db2inst1/aaaaa.txt of del modified by identitymissing insert into bir.TB_LOG_SQL_test”

load from 2.txt of del modified by identityignore insert into table2; load from 3.txt of del modified by identityoverride insert into table3; 这个参数只能用load,不能使用import

Identityignore 导入以后插入就会覆盖

Identitymissing 接着序号导入 db2 \from /home/db2inst1/db2inst1/DATA_SOURCE/2013-06-25/2013-06-25_XDXT_CODE_LIBRARY.del of del modified by DELPRIORITYCHAR codepage=1386 coldel0x1D REPLACE INTO sdata.xdxt_CODE_LIBRARY \

对字段中有换行符的情况做上面的关键字处理。

db2 update db cfg for bdw using NEWLOGPATH /dev/u01/logs

db2 update monitor switches using bufferpool on lock on sort on statement on table on uow on;

db2 get snapshot for bufferpools on BDW >bufferpools.log;

Update db cfg using SHEAPTHRES_SHR automatic

alter table student_class add constraint if_student foreign key(student_id) references student(student_id) ON DELETE cascade ON UPDATE RESTRICT;

alter table test_sub add constraint main_id_cons FOREIGN KEY(main_id) REFRENCES TEST_MAIN alter table test_tab drop constraint main_id_cons db2常用命令 分卷压缩

zip -s 4m google.zip 合卷

cat ziptest.z* > google_bak.zip

解压

unzip google_bak.zip

tar -czf - proc | split -b 2m -d - proc.tar.gz #分卷压缩proc目录,并保持每个压缩包的大小不超过2m字节。命令执行后,会生成proc.tar.gz00、proc.tar.gz01等文件

cat proc.tar.gz* | tar -xzf - #将各个分卷压缩包解压到当前目录

cat proc.tar.gz* > proc.tar.gz #将各个分卷压缩包合成为一个proc.tar.gz文件 0.进入db2命令环境 db2cmd

1.启动db2 db2start;

2.关闭db2 db2stop;

db2stop force;

3.创建数据库

db2 create db ;

db2 create db using codeset GBK territory CN;

db2 Create database using codeset IBM-eucCN territory CN; 这样可以支持中文。

4.删除数据库(执行此操作要小心) db2 drop db

如果不能删除,断开所有数据库连接或者重启db2。

5.断开数据库连接

db2 force application all

6.连接数据库

db2 connect to user using

7.断开数据库连接

断开当前数据库连接:db2 connect reset 或者:db2 disconnect current

断开所有数据库的连接:db2 disconnect all

8.备份数据库

db2 backup db

备注:执行以上命令之前需要断开数据库连接

9.恢复数据库

db2 restore db

10.导出数据文件

db2move export [-sn <模式名称,一般为db2admin>] [-tn <表名,多个之间用逗号分隔>]; 更多时候用下面这种方式:

db2 export to test.ixf of ixf select * from

11.导入数据文件 db2move import

db2 import from text.ixf of ixf create into ;(表不存在) db2 import from text.ixf of ixf insert into ;(表已经存在)

12.建立映像:

db2 catalog tcpip node nodename remote 10.0.2.3 server 50000 db2 catalog db dbname at node nodename

13.撤销映像:

db2 uncatalog db dbname

14.列出数据库中所有db: db2 list db directory

15.获取建表脚本:

db2look -d dbname -e -t tablename -a -x -i userId -w password -o filename.sql

-d: 数据库名:这必须指定

-e: 抽取复制数据库所需要的 DDL 文件

-u: 创建程序标识:若 -u 和 -a 都未指定,则将使用 $USER -z: 模式名:如果同时指定了 -z 和 -a,则将忽略 -z -t: 生成指定表的统计信息 -h: 更详细的帮助消息

-o: 将输出重定向到给定的文件名 -a: 为所有创建程序生成统计信息

-m: 在模拟方式下运行 db2look 实用程序 -c: 不要生成模拟的 COMMIT 语句 -r: 不要生成模拟的 RUNSTATS 语句

-l: 生成数据库布局:数据库分区组、缓冲池和表空间。 -x: 生成排除对象的原始定义器的“授权”语句 DDL -xd: 生成包括对象的原始定义器的“授权”语句 DDL -f: 抽取配置参数和环境变量

-td: 将 x 指定为语句定界符(缺省定界符为分号(;)) -p: 使用简单文本格式

-s: 生成 postscript 文件

-g: 使用图形来显示索引的页取装对

-i: 登录到数据库驻留的服务器时所使用的用户标识 -w: 登录到数据库驻留的服务器时所使用的密码 -noview: 不要生成 CREATE VIEW ddl 语句 -wrapper: 为适用于此包装器的联合对象生成 DDL -server: 为适用于此服务器的联合对象生成 DDL -nofed: 不要生成 Federated DDL

-fd: 为 opt_buffpage 和 opt_sortheap 以及其它配置和环境参数生成 db2fopt语句。