遇到的db2日常知识点
DB2客户端连接远程数据库
编目节点: db2 "catalog tcpip node P570 remote 10.0.12.34 server 50000"
编目数据库: db2 "catalog database BANK as BANK at node P570"
查看节点编目 db2 list node directory
查看数据库编目 db2 list database directory
连接远程BANK数据库 db2 connect to BANK user baninst using bankinst
目录缓存刷新 db2 terminate
将表数据导出为del数据文件
db2 "export to temp_table.dat of del modified by codepage=1386
select ltrim(rtrim(userid)),ltrim(rtrim(username)),'|' from temp_table" > table_export.log
这里最后加了个'|'来帮助分割数据文件中一条条记录,即|记录一|记录二|记录三|
将itf/del数据数据文件导入DB2数据库
db2"load from '/path/filename.ixf' of ixf insert/replace into tablename"
insert为追加插入,replace为清空插入
数据转换工具
不同类型数据库之间数据转换,表到表,比较常用db2-->oracle oracle-->db2
Data Integration - Kettle
DB2 SQL 常用操作
db2 connect to sample 连接到sample数据库
db2 describe table table_name 查看指定表结构
db2 drop table table_name 删除表
db2 -tvf path/file_name 执行脚本文件
db2 alter table table_name alter column col_name set data type varchar(20) 修改表字段的字段类型大小
db2 list application show detail 查看当前连接到数据库的应用
DB2数据库备份恢复
mkdir db2_bak 建立备份文件夹
db2 backup database example_database_name with 2 buffers buffer 1024 parallelism 1 without prompting; 进去文件夹执行备份命令
等待数据库备份结束
将备份生成的备份文件上传到服务器的/home/db2inst1/db2_bak文件中
建立对应的数据库example_database_name
db2 restore db sample from /home/db2inst1/db2_bak taken at 20150529184633 with 2 buffers buffer 1024 parallelism 1 without prompting; 数据库恢复
"20150529184633"为备份时的时间 “001”为不了解
"sample"为数据库名,恢复的目标数据库名必须与备份文件中的数据库名相同
"/home/db2inst1/db2_bak"为备份文件所在文件夹
DB2表字段修改
alter table XXX alter column XXX drop not null 删除字段非空属性
alter table XXX alter column XXX set not null 添加字段非空属性
alter table XXX add column XXXX varchar(100) 添加一个新字段
alter table XXX drop column XXX 删除一个字段
alter table XXX alter column XXX set data type varchar(100) 增加字段的长度
转载请注明 from tomsun28