#1linux系统连接db2数据库
db2
connect to dbtest(数据库名称)
然后就可以直接写sql
1 启动数据库实例命令
db2start
关闭数据库
db2stop
2 数据库表结构、视图、存储结构导出
db2look -d 数据库名称 -e -a -x -i 数据库用户名 -w 密码 -o 生成的sql文件名
如:db2look -d mydatabase -e -a -x -i username -w passwd -o file.sql
输入db2look可查看相应参数
3 数据库数据导出和导入
####数据导出:
db2move数据库名称export -u数据库用户名-p密码
如:db2move mydatabase export -u username -p passwd
每张表会生成对应的 ixf 和 msg 文件,在生成的EXPORT.out文件中查看表数据是否导出成功。
####数据导入:
db2move 数据库名称 load –lo(具体参数可选) replace -u 数据库用户名 -p 密码
如:db2move mydatabase load –lo replace -u username -p passwd
##########################
db2 list db directory 列出所有数据库
db2 list active databases 列出所有活动的数据库
db2 list tables for all 列出当前数据库下所有的表
db2 list tables for schema btp 列出当前数据库中schema为btp的表
db2 list tablespaces show detail 显示数据库空间使用情况
###导入表结构
#db2 -tvf test.sql
###清除表中数据
db2 “delete from btpoper”
db2 “delete from btpoper where brhid=‘907020000’ or brhid=‘907010000’”
db2 connect reset 断开数据库连接
db2 terminate 断开数据库连接
db2 force applications all 断开所有数据库连接
###数据导入与导出
导出表结构
db2look -d zx -e -a -x -i db2inst1 -w db2inst1 -o /tmp/createdb.sql
导出表数据
db2move zx export
导出的数据是很多msg和iixf文件,所以最好先新建目录export_data再执行上面语句
导入表结构
切换到新建好的目录export_data下执行下面两条命令
db2 -tvf createdb.sql
db2move 库名 import
指定编码格式导入数据
(1)导出时就选择导出编码为1208的数据文件
导出:db2 “export to data.del of del modified by codepage=1208 select * from tab1”
导入:db2 “load from data.del of del insert into tab1”
(2)导入时提醒数据库数据文件编码为1386,数据自动转为数据库自己的编码(1208)
导出:db2 “export to data.del of del select * from tab1”
导入:db2 “load from data.del of del modified by codepage=1386 insert into tab1”
关于编码
export与import的时候一定要注意设置codepage,否则导入之后可能会出现乱码问题(国内程序员最头疼的问题)
export、import之前设置codepage
db2set db2codepage=1208(utf-8)
db2默认codepage:1368(GBK)
导出单个表数据(只能导出一个表)
db2 export to test.txt of del select * from test
导入单个表数据
db2 import from test.txt of del insert into test