例:
数据库:PRODB2
用户 :DB2ADMIN/DB2ADMIN
备份库路径:D:/bank

一.恢复数据库
1.启动数据库
运行-》db2cmd
-》db2
Db2=>start db manager
Db2=>force application all
Db2=>drop database tjns

db2 =>
2.创建数据库
CREATE DATABASE ppdev0309 ON D:\ USING CODESET GBK TERRITORY CN

3.连接数据库
connect to ppdev0309 user DB2ADMIN using db2admin

3.创建缓冲池/表空间

db2 CREATE Bufferpool BUFFER4 SIZE 102400 PAGESIZE 4K;

db2 CREATE Bufferpool BUFFER16 SIZE 38400 PAGESIZE 16K;

db2 CREATE REGULAR TABLESPACE NNC_DATA01 PAGESIZE 16 K MANAGED BY DATABASE USING ( FILE 'D:\DB2\NODE0000\ppdev0309\NNC_DATA01' 198144 ) AUTORESIZE YES EXTENTSIZE 32 OVERHEAD 12.67 PREFETCHSIZE 32 TRANSFERRATE 0.18 BUFFERPOOL BUFFER16 DROPPED TABLE RECOVERY OFF;

db2 CREATE REGULAR TABLESPACE NNC_DATA02 PAGESIZE 16 K MANAGED BY DATABASE USING ( FILE 'D:\DB2\NODE0000\ppdev0309\NNC_DATA02' 105536 ) AUTORESIZE YES EXTENTSIZE 32 OVERHEAD 12.67 PREFETCHSIZE 32 TRANSFERRATE 0.18 BUFFERPOOL BUFFER16 DROPPED TABLE RECOVERY OFF;

db2 CREATE REGULAR TABLESPACE NNC_DATA03 PAGESIZE 16 K MANAGED BY DATABASE USING ( FILE 'D:\DB2\NODE0000\ppdev0309\NNC_DATA03' 105536 ) AUTORESIZE YES EXTENTSIZE 32 OVERHEAD 12.67 PREFETCHSIZE 32 TRANSFERRATE 0.14 BUFFERPOOL BUFFER16 DROPPED TABLE RECOVERY OFF;

db2 CREATE REGULAR TABLESPACE NNC_INDEX01 PAGESIZE 4 K MANAGED BY DATABASE USING ( FILE 'D:\DB2\NODE0000\ppdev0309\NNC_INDEX01' 262144 ) AUTORESIZE YES EXTENTSIZE 32 OVERHEAD 12.67 PREFETCHSIZE 32 TRANSFERRATE 0.18 BUFFERPOOL BUFFER4 DROPPED TABLE RECOVERY OFF;

db2 CREATE REGULAR TABLESPACE NNC_INDEX02 PAGESIZE 4 K MANAGED BY DATABASE USING ( FILE 'D:\DB2\NODE0000\ppdev0309\NNC_INDEX02' 202144) AUTORESIZE YES EXTENTSIZE 32 OVERHEAD 12.67 PREFETCHSIZE 32 TRANSFERRATE 0.18 BUFFERPOOL BUFFER4 DROPPED TABLE RECOVERY OFF;

db2 CREATE REGULAR TABLESPACE NNC_INDEX03 PAGESIZE 4 K MANAGED BY DATABASE USING ( FILE 'D:\DB2\NODE0000\ppdev0309\NNC_INDEX03' 262144 ) AUTORESIZE YES EXTENTSIZE 32 OVERHEAD 12.67 PREFETCHSIZE 32 TRANSFERRATE 0.18 BUFFERPOOL BUFFER4 DROPPED TABLE RECOVERY OFF;

db2 CREATE USER TEMPORARY TABLESPACE usertemp PAGESIZE 16K MANAGED BY database USING ( FILE 'D:\DB2\NODE0000\ppdev0309\usertemp' 162144 ) AUTORESIZE YES EXTENTSIZE 32 OVERHEAD 12.67 PREFETCHSIZE 32 TRANSFERRATE 0.18 BUFFERPOOL BUFFER16 ;

db2 CREATE SYSTEM TEMPORARY TABLESPACE tempspace2 PAGESIZE 16 K MANAGED BY database USING ( FILE 'D:\DB2\NODE0000\ppdev0309\tempspace2' 65536 ) AUTORESIZE YES EXTENTSIZE 32 OVERHEAD 12.67 PREFETCHSIZE 32 TRANSFERRATE 0.18 BUFFERPOOL BUFFER16 ;

4.赋值权限
GRANT DBADM, CREATETAB, BINDADD, CONNECT, CREATE_NOT_FENCED_ROUTINE, IMPLICIT_SCHEMA, LOAD, CREATE_EXTERNAL_ROUTINE, QUIESCE_CONNECT ON DATABASE TO USER TJNS;
GRANT USE OF TABLESPACE NNC_DATA01 TO USER PPDEV0309 WITH GRANT OPTION;
GRANT USE OF TABLESPACE NNC_DATA02 TO USER PPDEV0309 WITH GRANT OPTION;
GRANT USE OF TABLESPACE NNC_DATA03 TO USER PPDEV0309 WITH GRANT OPTION;
GRANT USE OF TABLESPACE NNC_INDEX01 TO USER PPDEV0309 WITH GRANT OPTION;
GRANT USE OF TABLESPACE NNC_INDEX02 TO USER PPDEV0309 WITH GRANT OPTION;
GRANT USE OF TABLESPACE NNC_INDEX03 TO USER PPDEV0309 WITH GRANT OPTION;
GRANT USE OF TABLESPACE USERTEMP TO USER PPDEV0309 WITH GRANT OPTION;

5.数据库优化 ---导库不用做
update dbm cfg using aslheapsz 1024;
update dbm cfg using sheapthres 40000;
update dbm cfg using maxagents 300;
update dbm cfg using NUM_POOLAGENTS 100;
update database configuration for PRODB2 using DBHEAP 10240;
update database configuration for PRODB2 using logbufsz 2048;
update database configuration for PRODB2 using CATALOGCACHE_SZ 3072;
update database configuration for PRODB2 using locklist 10240;
update database configuration for PRODB2 using app_ctl_heap_sz 4096;
update database configuration for PRODB2 using sortheap 4096;
update database configuration for PRODB2 using stmtheap 3072;
update database configuration for PRODB2 using applheapsz 16384;
update database configuration for PRODB2 using pckcachesz 20480;
update database configuration for PRODB2 using maxlocks 18;
update database configuration for PRODB2 using NUM_IOCLEANERS 8;
update database configuration for PRODB2 using NUM_IOSERVERS 5;
update database configuration for PRODB2 using MAXAPPLS 300;
update database configuration for PRODB2 using AVG_APPLS 200;
update database configuration for PRODB2 using logfilsiz 204800;
update database configuration for PRODB2 using logprimary 50;
update database configuration for PRODB2 using logsecond 150;
update database configuration for PRODB2 using MINCOMMIT 2;
update database configuration for PRODB2 using BLK_LOG_DSK_FUL OFF;

6.修改用户名
db2move.lst 中把原来的用户名都改成db2admin (为大写,AIX严格控制)
credb.sql 中把原来的用户名都改成db2admin (为大写,AIX严格控制)
将文件头上的数据库联接命令改成

CONNECT TO PRODB2 USER DB2INST1 USING DB2INST1;

7.拆分表结构
以foreign keys 查询区分,将credb.sql拆分成credb1.sql(表和索引),credb2.sql(外键和视图)。

8.导入库 cmd控制台
方式1:
--导入库数据(load 方式需要先导入表和索引,import不需要)
db2move TJNS import -u DB2ADMIN -p db2admin>import.log
方式2:
--导入表和索引(需要先连接connect数据库)
db2 -tvf credb1.sql > credb1.log
--导入库数据(load 方式需要先导入表和索引,import不需要)
db2move TJNS load -u DB2ADMIN -p db2admin>load.log
--导入外键和视图
db2 -tvf credb2.sql > credb2.log

9.做数据库整理
--查询数据库表是否有挂起
select tabschema,tabname from syscat.tables where status='C'
--如果有,对表进行解决
set INTEGRITY for db2inst1.BD_DEFDOCLIST IMMEDIATE CHECKED
--也可以对整表和库进行reorgchk整理
--分析单张表 :
runstats on table db2inst1.gl_detail with distribution and detailed indexes all
--分析整个用户下面所有表:
connect to PPDEV0309 user db2admin using admin
reorgchk update statistics on table all

10.导出数据库 cmd控制台
connect to PPDEV0309;
--导出表结构
db2look -d PPDEV0309 -u db2admin -e -o credb.sql -i db2admin -w db2admin
--导出表数据
db2move protest export -tc db2admin -u db2admin -p db2admin>export.sql

import from D:\20150101\tab1.ixf of del insert into rm_port

11.断开连接
disconnect PRODB2

12.删除数据库
删除数据库
用运行-》db2cmd
db2 drop db 数据库名称

13.重启服务器
db2stop force
db2start

DB2创建库 数据恢复的更多相关文章

  1. Oracle创建表 创建库 数据恢复

    --建用户CREATE USER szs IDENTIFIED BY szs DEFAULT TABLESPACE NN_DATA01 TEMPORARY TABLESPACE temp;--用户赋权 ...

  2. DB2创建数据库常用参数详解

    转自http://czmmiao.iteye.com/blog/1335801 DB2创建数据库常用参数详解 本文只介绍DB2 create database语法中的常用参数http://publib ...

  3. DB2创建表、操作表等常用命令

    转载:http://hi.baidu.com/ufobject/item/7fd03aeebf7be1266dabb881 一.创建库表 1.创建库 1).创建数据语句 CREATE DATABASE ...

  4. mysq错误(1)空用户创建库

    mysql5.6.24免安装版: 1.ERROR 1044 (42000): Access denied for user ''@'localhost' to database 现象:创建库失败. 出 ...

  5. Android Studio创建库项目及引用

    Android Studio创建库项目其实创建的是在主项目下创建Module模块,这个Module模块创建的时候选择库项目模式. 为什么要这样处理呢?因为在Android Studio中一个WorkS ...

  6. Visual Studio命令行创建库文件lib

    Visual Studio命令行创建库文件lib OS:win7 旗舰版SP1 64位 编译器: VS 2013 express 的cl 建一个文件Static_Lib.h,源代码如下 #ifndef ...

  7. window下mysql创建库只读

    window下mysql创建库只读和启动失败都有可能是my.ini配置文件出错的问题 遇到如下错误ERROR 1036 (HY000): Table 'schemata' is read only,办 ...

  8. 自学Linux Shell16.3-函数递归+创建库

    点击返回 自学Linux命令行与Shell脚本之路 16.3-函数递归+创建库 1. 函数递归 递归调用函数是指函数调用自身进行求解. 通常,递归函数有基值,函数最终递推到达该值. 许多高级数学算法使 ...

  9. libtool 创建库的工具

    libtool 创建库的工具 1. 背景 在不同的系统中建立动态链接库的方法有很大的差别,这主要是因为每个系统对动态链接库的用法和实现并不相同,以及编译器对动态链接库支持的选项也不太一样. 对于开发人 ...

随机推荐

  1. java 类记载器

    转载:  https://blog.csdn.net/javazejian/article/details/73413292

  2. AngularJS中forEach的用法

    AngularJS中当我们需要遍历某个数组的时候,我们会用到forEach语法.AngularJS中forEach的用法如下: angular.forEach(array,function(obj,i ...

  3. Android Studio的安装

    下载Android Studio(需要翻墙才能安装得快):直接到官网进行下载就可以了.下载地址:https://developer.android.com/ “Android Virtual Devi ...

  4. 获取sender进程所产生的trace文件

    直接开启数据库实例级别的sql_trace是不现实的,会对所有连接到oracle的session都产生sql_trace,这样会产生大量的trace文件(垃圾文件),因此为跟踪特定进程的sql信息,可 ...

  5. Django【第8篇】:Django之查询知识点总结

    关于查询知识点总结 models.Book.objects.filter(**kwargs): querySet [obj1,obj2]models.Book.objects.filter(**kwa ...

  6. 使用git管理文件版本

    创建版本库 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以 ...

  7. java.util.Properties的使用及读取资源文件

    1.工具类Utils package com.oy.utils; import java.io.BufferedInputStream; import java.io.Closeable; impor ...

  8. Qmake: Q_OBJECT

    QMake 为Qt的预编译,例:当在代码中使用 Q_OBJECT 宏,需要执行QMake操作,否则编译通不过.

  9. 基于BootStrap的分页代码实现

    public class PageUtil { //targetUrl 访问url totalNum总记录数 currentPage 当前页数 pageSize每页的大小 public static ...

  10. C++语法一二

    写在前面(C++和java的一些区别): (1)      C++中数组的定义为 int a[8];而在java中一般定义为int[] a=new int[8];如果定义的时候进行初始话,也可以缺省数 ...