目录
1.创建db2用户和赋予用户DB2数据库权限
useradd jldb //创建db2用户
passwd jldb // 设置密码
gpasswd -a jldb db2iadm1 // 把jldb用户添加到db2iadm1用户组
db2 connect to jldb // 连接到jldb数据库 切换db2实例管理员操作
db2 grant connect on database to user jldb // 赋予jldb用户jldb数据库的connect权限
db2 connect reset // 关闭连接
db2 connect to jldb // 切换jldb用户,连接db数据库测试
2.导出表结构和表数据
注:所有命令都必须在db2inst1用户执行
db2look -d db2Name -e -t tableName-o ddl.sql //导出指定表结构
db2look -d db2Name -z tableSpaceName -e -o tableSpaceDDL.sql // 导出整个表空间(tableSpace)表结构和数据
db2look -d db2name -e -a -x -i user -w pass -o db2name.sql // 导出整个用户表结构
// 导出多张指定表数据,导出的DB2数据会以ixf以及msg文件保存下来
db2move db2Name export -tn tableName1,tableName2 -sn schemaName
// db2move导出整库表数据,提前创建好指定文件夹
db2move db_name export -u user_name -p password
// db2move导出指定模式下表数据
db2move db_name export -sn schema_name -u user -p pass
3.导入表结构和表数据
// 导入表结构
db2 -tvf test.sql -z test.log
// db2move导入所有表的数据
db2move db_name import -io replace -u user_name -p password
// 导入ixf以及msg类型的数据
db2move db2Name import
// 单表数据导入
db2 import from tab1.ixf of ixf insert into <schema_name>.<table_name>
注:导入表结构时,需注意,table中是否存在tablespaces,是否已创建等
例:
db2 create BUFFERPOOL testBUFFER SIZE 1000 PAGESIZE 32K
db2 "create regular tablespace testSpace pagesize 32k managed by database using(file '/home/db2inst1/test/ts' 5g) bufferpool testBUFFER"
db2 "create SYSTEM TEMPORARY TABLESPACE testBUF PAGESIZE 32K MANAGED BY database USING (file '/home/db2inst1/epay/tts' 1g) BUFFERPOOL testBUFFER" //临时表空间