db2_learn

遇到的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

打赏

取消

感谢您的支持!

扫码支持
扫码支持