Oracle数据库迁移的几种方式
Oracle数据库迁移的几种方式
我们常常需要对数据进行迁移,迁移到更性能配置更高级的主机OS上、迁移到远程的机房、迁移到不同的平台下,以下介绍ORACLE的几种数据库迁移方案:
一、exp/imp逻辑备份与恢复:
它是最常用最简单的方法,一般是基于应用的owner级做导出导入。
操作方法为:
在新库建立好owner和表空间,停老库的应用,在老库执行:
1 | $ exp user/pwd owner=XXX file=exp_xxx.dmp log=exp_xxx.log buffer=6000000 |
导入dmp文件到新库,在新库执行如下命令:
1 | $ imp user/pwdfromuser=XXX touser=XXX file=exp_xxx.dmp log=imp_xxx.log ignore=y |
优缺点:优点是可以跨平台使用;缺点是停机时间长,停机时间为从exp到网络传输到新库,再加上imp的时间。
- 迁移实例,列如:
- 检查Linux上数据库实例的编译格式
1 | SQL> select userenv('language') from dual; |
- 设置windows的环境变量
1 | NLS_LANG=AMERICAN_AMERICA.ZHS16GBK |
- 导出windows数据库中的数据库文件
1 | d:\app\administrator\product\11.2.0\client_1\BIN\exp.exe test/pwd@orcl direct=n "file=D:\db_20200918.dmp" "log=D:\db_20200918.exp" |
通过工具将dmp文件上传到Linux上
设置Linux的环境变量
1 | export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK |
- 在Linux上创建相关用户及表空间
1 | --创建表空间 |
- 导入dmp文件
1 | imp userid=test/pwd@orcl full=y ignore=y file='/dmp/db_20200918.dmp' log='/dmp/db_20200918.imp' |
二、Storage存储迁移:
这种情况下,数据文件、控制文件、日志文件、spfile都在存储上(一般情况下是裸设备),我们可以直接把存储挂到新机器上,然后在新机器上启动数据库。
操作方法:
将老库的pfile(因为里面有指向裸设备的spfile链接),tnsnames.ora,listener.ora,密码文件传到新库的对应位置。将存储切至新机,或者用文件拷贝或dd的方式复制数据文件,启动数据库。
优缺点:优点是该迁移方式非常简单,主要的工作是主机工程师的工作,dba只需配合即可,停机时间为停库、切存储、起库的时间;缺点是要求新老库都是同一平台,是相同的数据库版本。
三、利用data guard迁移:
用dg我们不仅可以用来做容灾,物理的dg我们还可以作为迁移的方式。
关于DG的操作方式,详情点击 => DG搭建
Oracle数据库迁移的几种方式
2021/02/06/Oracle数据库迁移的几种方式/
发布于
2021-02-06 20:10
许可
评论
评论插件加载失败
正在加载评论插件