Chinaunix首页 | 论坛 | 博客
  • 博客访问: 204565
  • 博文数量: 35
  • 博客积分: 2996
  • 博客等级: 少校
  • 技术积分: 740
  • 用 户 组: 普通用户
  • 注册时间: 2005-10-31 17:01
文章分类
文章存档

2010年(17)

2009年(18)

我的朋友

分类:

2009-07-01 16:32:52

前言:
1、异构平台使用db2look 和db2move实现数据库结构和数据的迁移
2、针对目标数据库需要手动设计Tablespaces和参数调节
3、注意如下情况
   -》表的列中自增长的字段,个人建议DBA不要启用这种类型的字段,无论从性能还是迁移上都不合适;可以通过squence来代替该类型
   -》存在主外约束关系的,需要在加载数据后进行set integrety
   -》数据迁移完毕之后,要进行数据库统计信息(Table、Index)的更新
4、涉及到部分AIX主机的操作,AIX主机的参数调节在系统安装完毕后已经进行,包括aio,pagespace,vmo等
5、在64位Unix主机上建议启用64位的DB2,如果不是专门存储blob等的表空间,建议使用字符设备作为容器,包括系统自带的表空间的容器
6、建议全部使用DMS
7、设立专用的bufferpool
8、db2look -d db_name -e -x -o file_name windows主机上DB2导出数据库的对象结构
9、db2move db_name export windows主机上DB2导出DEL格式的数据


1.   P570配置

内置磁盘4  hdisk0 hdisk1 hdisk2 hdisk3

外接DS4800磁盘1hdisk4

# lspv

hdisk0          0007f27d099cf4d3                    None           

hdisk1          00024e5ba2ea0431                    rootvg          active

hdisk2          0007f27d099cf6e9                    None           

hdisk3          0007f27dffcfac73                    None           

hdisk4          0007f27d12d5191c                    None   

 

2.   操作系统镜像

进行rootvg的镜像,目的保证在一块rootvg磁盘损坏的情况下,操作系统也可以正常启动,P570操作系统的灾备冗余。

# lsvg -p rootvg

rootvg:

PV_NAME           PV STATE          TOTAL PPs   FREE PPs    FREE DISTRIBUTION

hdisk1            active            546         511         109..98..86..109..109

# bootinfo -B hdisk0

1

# lspv -l hdisk0

0516-320 : Physical volume 0007f27d099cf4d30000000000000000 is not assigned to

        a volume group.

# extendvg -f rootvg hdisk0

# chvg -Qn rootvg

0516-1804 chvg: The quorum change takes effect immediately.

#mirrorvg -c 2 rootvg

# mirrorvg -c 2 rootvg

0516-1126 mirrorvg: rootvg successfully mirrored, user should perform

        bosboot of system to initialize boot records.  Then, user must modify

        bootlist to include:  hdisk1 hdisk0.

# lsvg -p rootvg

rootvg:

PV_NAME           PV STATE          TOTAL PPs   FREE PPs    FREE DISTRIBUTION

hdisk1            active            546         511         109..98..86..109..109

hdisk0            active            546         519         109..106..86..109..109

# bosboot -ad hdisk1

 

bosboot: Boot image is 37849 512 byte blocks.

# bosboot -ad hdisk0

 

bosboot: Boot image is 37849 512 byte blocks.

 

# bootlist –m normal hdisk1 hdisk0 cd0

 

#shutdown –Fr

 

3.   DB2安装

root用户在AIX Xwindows中进行安装。

用户目录 /home

 

4.   规划存储使用

内置磁盘hdisk3 作为备份使用存储 vg backupvg ,创建文件系统

外置磁盘hdisk4 作为数据库容器的vg  db2vg     创建lv

mklv -y db2lv00 db2vg 20G

mklv -y db2lv01 db2vg 20G

mklv -y db2lv02 db2vg 20G

mklv -y db2lv03 db2vg 20G

mklv -y db2lv04 db2vg 20G

mklv -y db2lv05 db2vg 20G

mklv -y db2lv06 db2vg 20G

mklv -y db2lv07 db2vg 20G

mklv -y db2lv08 db2vg 20G

mklv -y db2lv09 db2vg 20G

mklv -y db2lv10 db2vg 20G

mklv -y db2lv11 db2vg 20G

mklv -y db2lv12 db2vg 20G

mklv -y db2lv13 db2vg 20G

mklv -y db2lv14 db2vg 20G

mklv -y db2lv15 db2vg 20G

mklv -y db2lv16 db2vg 20G

mklv -y db2lv17 db2vg 20G

mklv -y db2lv18 db2vg 20G

mklv -y db2lv19 db2vg 20G

 

修改字符设备和块设备的属组

chown db2inst1:db2grp1 /dev/rdb2lv00

chown db2inst1:db2grp1 /dev/rdb2lv01

chown db2inst1:db2grp1 /dev/rdb2lv02

chown db2inst1:db2grp1 /dev/rdb2lv03

chown db2inst1:db2grp1 /dev/rdb2lv04

chown db2inst1:db2grp1 /dev/rdb2lv05

chown db2inst1:db2grp1 /dev/rdb2lv06

chown db2inst1:db2grp1 /dev/rdb2lv07

chown db2inst1:db2grp1 /dev/rdb2lv08

chown db2inst1:db2grp1 /dev/rdb2lv09

chown db2inst1:db2grp1 /dev/rdb2lv10

chown db2inst1:db2grp1 /dev/rdb2lv11

chown db2inst1:db2grp1 /dev/rdb2lv12

chown db2inst1:db2grp1 /dev/rdb2lv13

chown db2inst1:db2grp1 /dev/rdb2lv14

chown db2inst1:db2grp1 /dev/rdb2lv15

chown db2inst1:db2grp1 /dev/rdb2lv16

chown db2inst1:db2grp1 /dev/rdb2lv17

chown db2inst1:db2grp1 /dev/rdb2lv18

chown db2inst1:db2grp1 /dev/rdb2lv19

 

 

chown db2inst1:db2grp1 /dev/db2lv00

chown db2inst1:db2grp1 /dev/db2lv01

chown db2inst1:db2grp1 /dev/db2lv02

chown db2inst1:db2grp1 /dev/db2lv03

chown db2inst1:db2grp1 /dev/db2lv04

chown db2inst1:db2grp1 /dev/db2lv05

chown db2inst1:db2grp1 /dev/db2lv06

chown db2inst1:db2grp1 /dev/db2lv07

chown db2inst1:db2grp1 /dev/db2lv08

chown db2inst1:db2grp1 /dev/db2lv09

chown db2inst1:db2grp1 /dev/db2lv10

chown db2inst1:db2grp1 /dev/db2lv11

chown db2inst1:db2grp1 /dev/db2lv12

chown db2inst1:db2grp1 /dev/db2lv13

chown db2inst1:db2grp1 /dev/db2lv14

chown db2inst1:db2grp1 /dev/db2lv15

chown db2inst1:db2grp1 /dev/db2lv16

chown db2inst1:db2grp1 /dev/db2lv17

chown db2inst1:db2grp1 /dev/db2lv18

chown db2inst1:db2grp1 /dev/db2lv19

 

5.   创建db2数据库

创建db2数据库mbrdw

CREATE DATABASE mbrdw ON '/home/db2inst1' ALIAS mbrdw USING CODESET GBK TERRITORY CN COLLATE USING SYSTEM CATALOG TABLESPACE  MANAGED BY DATABASE USING ( DEVICE '/dev/rdb2lv01' 5120000 )  USER TABLESPACE  MANAGED BY DATABASE USING ( DEVICE '/dev/rdb2lv00' 5120000 )  TEMPORARY TABLESPACE  MANAGED BY DATABASE USING ( DEVICE '/dev/rdb2lv02' 5120000 ) ;

 

6.   修改DB2环境变量

db2set db2codepage=1386

db2set db2country=86

DB2SET DB2_SQLROUTINE_PREPOPTS=UR

db2 terminate

db2stop

db2start

 

调整数据库的bufferpool,创建表空间

db2 CREATE Bufferpool BUF16K SIZE 65536  PAGESIZE 16K

 

db2 " CREATE TABLESPACE INXSPCA PAGESIZE 16K MANAGED BY DATABASE USING ( DEVICE '/dev/rdb2lv03' 1280000, DEVICE '/dev/rdb2lv04' 1280000 , DEVICE  '/dev/rdb2lv05' 1280000 ) BUFFERPOOL  BUF16K "

 

db2 " CREATE TABLESPACE SYSTOOLSPACE PAGESIZE 16K MANAGED BY DATABASE USING ( DEVICE '/dev/rdb2lv06' 1280000 ) BUFFERPOOL  BUF16K "

 

db2 " CREATE TABLESPACE TEMPSYS PAGESIZE 16K MANAGED BY DATABASE USING ( DEVICE '/dev/rdb2lv07' 1280000 ) BUFFERPOOL  BUF16K "

 

db2 " CREATE TABLESPACE TBLSPCA PAGESIZE 16K MANAGED BY DATABASE USING ( DEVICE '/dev/rdb2lv08' 1280000, DEVICE '/dev/rdb2lv09' 1280000 , DEVICE  '/dev/rdb2lv10' 1280000,DEVICE  '/dev/rdb2lv11' 1280000,DEVICE  '/dev/rdb2lv12' 1280000 ) BUFFERPOOL  BUF16K "

 

创建数据库的用户dwusers

Useradd  -g db2grp1 dwusers

 

设置密码

Passwd dwusers

 

进行数据库对象生成

Db2 connect to mbrdw

Db2 –tvf 0509.sql

-- 存在自增长的字段,需要单独处理,避免SQL3107N错误出现

Db2 –tvf  NOkey.sql

 

7.   进行数据加载

Db2move mbrdw load

修改数据库的自增长字段,在字段最大值的基础上+1作为字段初始值

TBLTASKSCHEDULE

256393

alter table TBLTASKSCHEDULE alter column SID set GENERATED ALWAYS AS IDENTITY (START WITH 256394, INCREMENT BY 1, NO CACHE )

 

TBLETLTASKDEF

240

alter table TBLETLTASKDEF alter column TASKID  set GENERATED ALWAYS AS IDENTITY (START WITH 241, INCREMENT BY 1, NO CACHE )

 

DWDATES1

1095

alter table DWDATES1 alter column DATEKEY  set GENERATED ALWAYS AS IDENTITY (START WITH 1096, INCREMENT BY 1, NO CACHE )

 

DWMEMBERINFO

7640292

alter table DWMEMBERINFO alter column INTERNALID  set GENERATED ALWAYS AS IDENTITY (START WITH 7640293, INCREMENT BY 1, NO CACHE )

 

 

DWDATES

1461

alter table DWDATES alter column DATEKEY  set GENERATED ALWAYS AS IDENTITY (START WITH 1462, INCREMENT BY 1, NO CACHE )

 


  
阅读(2349) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~