Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3692850
  • 博文数量: 715
  • 博客积分: 1860
  • 博客等级: 上尉
  • 技术积分: 7745
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-07 08:51
个人简介

偶尔有空上来看看

文章分类

全部博文(715)

文章存档

2023年(75)

2022年(134)

2021年(238)

2020年(115)

2019年(11)

2018年(9)

2017年(9)

2016年(17)

2015年(7)

2014年(4)

2013年(1)

2012年(11)

2011年(27)

2010年(35)

2009年(11)

2008年(11)

分类: Oracle

2015-03-16 22:13:29

迁移2T BLOB 数据的挑战
把10g数据库中2T BLOB 数据迁移到另一套11g rac数据库上

源环境   oracle 10g 单机 32C/32G linux5.5 文件系统
目标环境 oracle 11g RAC  4C/62G  AIX6.1   ASM

源环境在虚拟机上,目标环境的主机有16核
实际数据有3T,blob数据占2T,集中在一个图片表中,并且在一个表空间中,这个表空间有142个数据文件。

迁移要求:
停机时间不能超过1周,优先保障系统及时可用,图片数据可以延后几天补齐。

因此整体方案为:
搭建rac环境,停止业务,迁移基础数据,启动业务指向新库,补齐图片数据
 
迁移方法的选型考虑到环境特殊性(跨平台、跨版本、跨字节序),最后选择逻辑导入导出方式。
用最笨的方法:依据rowid中的相对文件号逐个exp,然后scp到目标机,然后imp

par文件例子:
userid=user1/user1
file=/exp/image/img12.dmp
log=/exp/image/img12exp.log
tables=图片表
query="where rowid like 'AAAKdhAFN%'"
INDEXES=n
STATISTICS=none
小技巧:最好导出前将表名改一下,方便后期合并

导入的例子:
imp user1/user1 file=img12.dmp log=img12imp.log fromuser=xt touser=fp ignore=y
阅读(2469) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~