DB2导出导入数据库


DB2 导出 数据库 :db2move ncdb export -u db2admin -p 1

NCDB 为 数据库实例 DB2ADMIN为 用户名 1 为密码


DB2恢复: db2move 实例 import –u 用户名 –p 密码
DB2导出: db2move 实例 export -u 用户名 -p 密码





--DB2备份:
--连接数据库:开始---运行----db2cmd 然后输入以下命令
db2 connnect to ncdb user db2admin using 1
--解释: ncdb为实例名称 db2admin 用户名 1 为密码
--执行导出表结构命令
db2look -d ncdb -a -e -x -o ncdb.sql
--导出命令
db2move ncdb export
--导出完成




--DB2恢复:
--创建数据库:
CREATE DATABASE NCDB ON 'c:' USING CODESET GBK TERRITORY CN COLLATE USING SYSTEM CATALOG TABLESPACE  MANAGED BY DATABASE USING ( FILE 'c:\DATA\NCDB\Catalogdata1' 128000 )  USER TABLESPACE  MANAGED BY DATABASE USING ( FILE 'c:\DATA\NCDB\Userdata1' 512000 )  TEMPORARY TABLESPACE  MANAGED BY DATABASE USING ( FILE 'c:\DATA\NCDB\Tempspace1' 768000 )
--连接数据库
connect to ncdb user db2admin using 1
--执行创建表空间语句 DB2不会自动扩展 所以建表空间时候 建议直接建大点 此处的默认为 8G 可以自行修改
CREATE Bufferpool NCUSED4 SIZE 102400 PAGESIZE 4K

CREATE Bufferpool NCUSED16 SIZE 38400 PAGESIZE 16K

CREATE REGULAR TABLESPACE NNC_DATA01 PAGESIZE 16K MANAGED BY DATABASE USING ( FILE 'c:\DATA\NCDB\nnc_data01' 8G) EXTENTSIZE 8 OVERHEAD 24.1 PREFETCHSIZE 8 TRANSFERRATE 0.9 BUFFERPOOL NCUSED16

CREATE REGULAR TABLESPACE NNC_INDEX01 PAGESIZE 4K MANAGED BY DATABASE USING ( FILE 'c:\DATA\NCDB\nnc_index01' 8G) EXTENTSIZE 32 OVERHEAD 24.1 PREFETCHSIZE 32 TRANSFERRATE 0.9 BUFFERPOOL NCUSED4

CREATE REGULAR TABLESPACE NNC_DATA02 PAGESIZE 16K MANAGED BY DATABASE USING ( FILE 'c:\DATA\NCDB\nnc_data02' 8G) EXTENTSIZE 8 OVERHEAD 24.1 PREFETCHSIZE 8 TRANSFERRATE 0.9 BUFFERPOOL NCUSED16

CREATE REGULAR TABLESPACE NNC_INDEX02 PAGESIZE 4K MANAGED BY DATABASE USING ( FILE 'c:\DATA\NCDB\nnc_index02' 8G) EXTENTSIZE 32 OVERHEAD 24.1 PREFETCHSIZE 32 TRANSFERRATE 0.9 BUFFERPOOL NCUSED4

CREATE REGULAR TABLESPACE NNC_DATA03 PAGESIZE 16K MANAGED BY DATABASE USING ( FILE 'c:\DATA\NCDB\nnc_data03' 8G) EXTENTSIZE 8 OVERHEAD 24.1 PREFETCHSIZE 8 TRANSFERRATE 0.9 BUFFERPOOL NCUSED16

CREATE REGULAR TABLESPACE NNC_INDEX03 PAGESIZE 4K MANAGED BY DATABASE USING ( FILE 'c:\DATA\NCDB\nnc_index03' 8G) EXTENTSIZE 32 OVERHEAD 24.1 PREFETCHSIZE 32 TRANSFERRATE 0.9 BUFFERPOOL NCUSED4

CREATE  USER TEMPORARY  TABLESPACE USERTEMP PAGESIZE 16 K  MANAGED BY SYSTEM  USING ( 'c:\DATA\NCDB\Usertemp1' ) EXTENTSIZE 32 OVERHEAD 10.67 PREFETCHSIZE 32 TRANSFERRATE 0.04 BUFFERPOOL  NCUSED16

CREATE  SYSTEM TEMPORARY  TABLESPACE TEMPSPACE2 PAGESIZE 16 K  MANAGED BY SYSTEM  USING (  'c:\DATA\NCDB\Tempspace2' ) EXTENTSIZE 32 OVERHEAD 10.67 PREFETCHSIZE 32 TRANSFERRATE 0.04 BUFFERPOOL  NCUSED16

--执行委派命令
db2 connect to ncdb

GRANT USE OF TABLESPACE NNC_DATA01 TO USER db2admin WITH GRANT OPTION
GRANT USE OF TABLESPACE NNC_DATA02 TO USER db2admin WITH GRANT OPTION
GRANT USE OF TABLESPACE NNC_DATA03 TO USER db2admin WITH GRANT OPTION
GRANT USE OF TABLESPACE NNC_INDEX01 TO USER db2admin WITH GRANT OPTION
GRANT USE OF TABLESPACE NNC_INDEX02 TO USER db2admin WITH GRANT OPTION
GRANT USE OF TABLESPACE NNC_INDEX03 TO USER db2admin WITH GRANT OPTION
GRANT USE OF TABLESPACE USERTEMP TO USER db2admin WITH GRANT OPTION
--重新连接
CONNECT RESET


---恢复数据库 首先进入 备份文件的目录
--创建表结构
db2 -tvf ncdb.sql >ncdb.log
--导入备份文件
db2move ncdb load >load.log


--连接数据库
db2 connnect to ncdb
--检查表是否挂起
db2 "select 'set INTEGRITY for DB2ADMIN.'||substr(tabname,1,30)||' IMMEDIATE CHECKED ;' from syscat.tables where status='C'"

--如果有挂起 执行 以下语句(可以多执行几次):

db2 "select 'set INTEGRITY for DB2ADMIN.'||substr(tabname,1,30)||' IMMEDIATE CHECKED ;' from syscat.tables where status='C'">set.sql


db2 -tvf set.sql


--常见错误解决 SQL0668N  不允许对表XXX 执行操作,原因码为 3 SQLSTATE=57016
--解决办法:(注意,有可能是表空间大小不够,切记要去查询各语句执行的结果——日志文件)
--查看表状态  DB2ADMIN.SM_BUSI_NAVIGATION 为表名
db2 load query table DB2ADMIN.SM_BUSI_NAVIGATION
--解决装入暂挂:
db2 LOAD FROM D:\x.txt OF DEL TERMINATE INTO DB2ADMIN.SM_BUSI_NAVIGATION
--解决设置完整性暂挂:
db2 SET INTEGRITY FOR DB2ADMIN.SM_BUSI_NAVIGATION IMMEDIATE CHECKED


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值