db2 迁移 aix linux,DB2从windowsXP迁移至AIX完整过程

一:安装数据库  1. 用root用户登录,通过smitty user创建实例用户 gjyw,进入DB2安装文件所在目录.

2. 将安装文件目录下所有文件赋全部权限 chomd 777 *

3. 如果使用.db2_setup进行安装,,则必须先用root用户登录

执行vi .profile ".profile" 6 lines, 103 characters

alias l='ls -l'

set -o vi

DISPLAY=192.168.250.110:0.0

export DISPLAY

PATH=$PATH:/nmon/nmon

export PATH

将上IP地址改为远程客户端IP。

4. 可使用目录下另一安装文件进行(与第3步是同一过程),安装过程中,将实例db2inst1直接改为gjyw(所要使用的实例名) ;  5. 安装完成后停止服务 ;

su - gjyw (实例用户)  db2stop 停止实例,如果不行 db2stop force强制停止

exit 退出到root层

su - dasusr1 (db2管理用户)

db2admin stop 停止DAS

6. 升级DB2包 db2 8.2版本

切换到升级包目录

./installFixPak –y

7. 切换到root用户

cd /usr/opt/

db2_08_01/instance

chmod +x db2iupdt

chmod +x dasupdt

将此两文件赋可执行权限

./db2iupdt gjyw

./dasupdt dasusr1

绑定相关用户

8. 取动数据库服务

切换到root用户  su - dasusr1

db2admin start 启动das

su - gjyw

db2start 启动实例

二:创建数据库

1. 建库时应指定数据库db2codepage,在xp中默认为1386,AIX中英文环境默认为819,当在AIX上建库时将当前数据库的codepage保持与要导入的数据来源处一致,否则导入后中文会显示为乱码。

1.) db2 create db db2name using codeset 1386 territyor 86

2.) 或使用1,db2set db2codepage=1386 2,db2set db2country=86 3,db2 terminate 4,db2stop force,5,db2stop start.

3.) 检查代码页(codepage)是否与设置一致.

Db2 get database configuration from databaseName |more

三:使用db2look,db2move export,db2move load,db2move import工具导入导出数据。

1.生成createdatabase.sql数据库结构文件

db2look –d DATABASENAME –a –e –m –l –f –o createdatabase.sql

2. 调整createdatabase.sql文件对象顺序,调整前先将createdatabase.sql里的CONNECT TO后的数据库名称全部替换为你的目标数据库名称。

1).由于使用db2look导出的文件并不是根据对象依赖关系生成的,需要作手工调整,一般顺序为BUFFERPOOL(createdatabase.sql文件最前部份), TABLESAPCE, TABLE,PATH(模拟表、列、索引和列分布),FUCNTION(自[定义方法),VIEW(视图), TRIGGER。

2).存储过程另行导入,应将createdatabase.sql中的存储过程部份删除。

4.执行createdatabase.sql文件.

1. 将createdatabase.sql上传到AIX服务器,使用命令  1). 默认情况下不能执行超过61K的文件,使用下面语句调整执行语言heap.

Db2 update db cfg for DATABASENAME using STMTHEAP 8192

2).执行。db2 -tvf createdatabase.sql  3).可以quest center for db2中连接后处理。

6. db2move DataBaseName export ,将生成的所有文件上传。  7. chmod 777 * ,将所有文件更改权限。

8. db2move newDataBaseName load

在导入中可能因为种种原因发生中断,会使数据库暂挂

1)..查看是哪张表挂起db2 select tabname,tableid from syscat.tables where tableid=59

2). 表名知道后到db2move.lst(在db2move YOURDB export的目录中)中找到相应的.ixf文件db2 load from tabindex.ixf of ixf terminate into实例名.表名

在db2move.lst文件中tabindex.ixf对应的是”表名”

四.导入存储过程。

通地quest center for db2,进入存储过程界面,全选,Extract DDL, 生成sql后, 只留下SCHEMA 为自定义存储过程的。 连接上另一数据库(AIX)后执行。 如有超大或过于复杂的存付过程,应执行Db2 update db cfg for DATABASENAME using STMTHEAP 8192 , 加大执行语句heap.

五:应注意事项及常用命令

1. chmod 777 * 更改一目录下所有文件的权限。  2.db2 get database configuration for databaseName |more 查看数据库配置

3. db2 create db dbname using CODESET 1386 TERRITORY 86 指定代码页建库

4. db2 select tabname,tableid from syscat.tables where tableid=59 查看处于挂起状态的表。

5.db2 update db cfg for JZGYZX using STMTHEAP 8192 增大执行语句heap,当系统提示语句过长或太复杂时使用。

6. db2set db2codepage=819 ,db2 terminate, db2 stop force ,db2 start.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值