您的位置:首页 > 运维架构 > Linux

跨平台表空间传输(linux 10g表空间跨平台迁移到window 11g

2013-07-31 16:36 351 查看
最近公司的一个项目里的linux 系统中的oracle 10g数据库,需要把某个表空间里的所有数据都迁移到window 2003的11g里,经过我与dba的交流、测试,决定使用跨平台的表空间传输技术,目前此项任务已经完成,经过测试,没有问题,下面是我为此项任务做的测试,此次是做linux(oracle 10g)对window (oracle 11g)做跨平台表空间传输(同字节顺序)需要注意:

对于导出文件dmp来说,Oracle实现了跨平台的处理,即在任何一个可运行的平台上,都能使用imp将其导入,但是对于表空间所包含的数据文件而言,各个平台上是不一样的,包含不能通过简单的复制来处理。数据文件不是独立于OS的。

传输表空间移动数据速度非常快。

使用前提:

1.源和目标数据库使用相同的字符集(也就是说little endian与big engian);

2.目标数据库不能有和源表空间相同的表空间;

3.源和目标数据库拥有相同的块大小;

4.必须传输自包含的对象集;

5.源和目标数据库运行的硬件平台必须相同;

下图是我的环境

一、环境检查

1、检查linux平台的环境

双击代码全选

2、检查windows平台的环境

双击代码全选

二、字节顺序检查

1、linux平台的

通过v$transportable_platfrom与v$database来查看本地平台的字节顺序

双击代码全选

2、windows平台的

双击代码全选

三、进行准备工作

1、在linux平台里先建立dl表空间

双击代码全选

首页 |

资讯 |

技术 |

下载 |

手册

欢迎你: 进入用户中心 登录 | 注册



豆豆技术网

首页

系统

编程

设计

电子

软件

网络

认证

安全

办公

服务器

企业

通信

数据库









你的位置:首页 > 系统 > 跨平台表空间传输(linux 10g表空间跨平台迁移到window 11g)

跨平台表空间传输(linux 10g表空间跨平台迁移到window 11g)

-

2012-11-05 20:36:01 发表评论

双击代码全选

3、查看dl用户所属的表空间

双击代码全选

4、连接用户

双击代码全选

5、创建测试表dl_test

双击代码全选

四、进行传输

1、查看数据文件的位置

双击代码全选

2、然后进行压缩数据文件

双击代码全选

3、使用exp导出dl表空间

导出之前,先查看表空间dl是否有self-contained(自包含),通过系统包dbms_tts来检查表空间是否自包含,如果有的话,就不能进行传输

先进行非严格方式(full_check=false)

双击代码全选

进行严格方式

双击代码全选

这表示该表空里的对象集是自包含的(对象及其索引都在此表空间中)

下面可以进行exp了

4、在进行exp导出之前,先把dl表空间设为只读

双击代码全选

导出成功

5、然后把dl_data.tar.gz与dl.dmp都传输到window的平台上

双击代码全选

6、然后把这2个文件传输到window平台的e:soft目录下对dl_data.tar.gz进行解压





7、然后在window平台上建立用户dl



8、然后进行imp导入





9、然后查看dl_test表数据是否正确





10、在查看linux里的dl_test表里的数据





可以看得2者的数据都一致,所以此次跨平台表空间传输成功

11、最后再将dl表空间设置为读写模式,然后就可以进行正常的数据操作了



这样就完成了跨平台传输表空间,这种方法很方便、而且快速,以后将作为我公司oracle的数据迁移的方案之一!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: