当前位置: 首页 > news >正文

Oracle10g数据库迁移方案

试验了很多次Oracle数据库迁移才成功,贴出来给大家参考一下,我看到有的地方写迁移之后还需要重新建立temp表空间,这个还没有研究。另外说一点的是两个数据库的版本一定要一致,之前失败过一次,就是因为两个数据库的版本不一致,无法迁移,查询版本:

show parameter compatible

1. 获取原数据库相关信息
首先要查看一下数据库的文件内容

SQL> select name from v$datafile;


 NAME                                                   
 --------------------------------------------------------
 G:\ORACLE\ORADATA\orcl\SYSTEM01.DBF                 
 G:\ORACLE\ORADATA\orcl\UNDOTBS01.DBF                
 G:\ORACLE\ORADATA\orcl\SYSAUX01.DBF                 
 G:\ORACLE\ORADATA\orcl\USERS01.DBF                  
 G:\ORACLE\ORADATA\orcl\EXAMPLE01.DBF                
 G:\ORACLE\ORADATA\orcl\HOTELFILE                    
 G:\ORACLE\ORADATA\orcl\MEMBERFILE                   
 E:\ELITEDATA\ELITE                                     
 G:\ORACLE\ORADATA\orcl\ELITE_BAK                    
 G:\ORACLE\ORADATA\orcl\HOTEL0826FILE                
 G:\ORACLE\ORADATA\orcl\ELITEOB                        

SQL> select name from v$controlfile;


 NAME                                       
 --------------------------------------------
 G:\ORACLE\ORADATA\orcl\CONTROL01.CTL    
 G:\ORACLE\ORADATA\orcl\CONTROL02.CTL    
 G:\ORACLE\ORADATA\orcl\CONTROL03.CTL    

SQL> select member from v$logfile;


 MEMBER                                
 ---------------------------------------
 G:\ORACLE\ORADATA\orcl\REDO01.LOG  
 G:\ORACLE\ORADATA\orcl\REDO03.LOG  
 G:\ORACLE\ORADATA\orcl\REDO02.LOG 
 
2. 移动应用数据文件
 

shutdown immediate

关闭数据库,拷贝以上文件到另外一个目录下,一定要保证数据库完全停掉

3. 修改数据库文件的位置
启动MOUNT模式,将现有数据库SYSTEM01.DBF文件指向拷贝过的SYSTEM01.DBF文件

startup mount;
alter database rename file 'E:\oracle\product\10.2.0\oradata\orcl\SYSTEM01.DBF'
to 'E:\orcl\SYSTEM01.DBF';

4. 修改pfile文件
备份spfile文件到pfile文件,注:不要直接修改pfile文件,两者可能存在差异

create pfile='D:\oracle\product\10.2.0\admin\orcl\pfile\init.ora' from spfile;

修改init.ora文件中的内容:

*.control_files='E:\orcl\control01.ctl','E:\orcl\control02.ctl','E:\orcl\control03.ctl'

5. 从pfile重启数据库

shutdown immediate
startup  pfile='D:\oracle\product\10.2.0\admin\orcl\pfile\init.ora'


报错6. rname数据库文件路径

alter database rename file 'G:\ORACLE\ORADATA\orcl\SYSTEM01.DBF'
to 'E:\orcl\SYSTEM01.DBF';
alter database rename file 'G:\ORACLE\ORADATA\orcl\UNDOTBS01.DBF'
to 'E:\orcl\UNDOTBS01.DBF';
alter database rename file 'G:\ORACLE\ORADATA\orcl\SYSAUX01.DBF'
to 'E:\orcl\SYSAUX01.DBF';
alter database rename file 'G:\ORACLE\ORADATA\orcl\USERS01.DBF'
to 'E:\orcl\USERS01.DBF';
alter database rename file 'G:\ORACLE\ORADATA\orcl\EXAMPLE01.DBF'
to 'E:\orcl\EXAMPLE01.DBF';    
alter database rename file 'G:\ORACLE\ORADATA\orcl\HOTELFILE'
to 'E:\orcl\HOTELFILE';
alter database rename file 'G:\ORACLE\ORADATA\orcl\MEMBERFILE'
to 'E:\orcl\MEMBERFILE';
alter database rename file 'E:\ELITEDATA\ELITE'
to 'E:\orcl\ELITE';
alter database rename file 'G:\ORACLE\ORADATA\orcl\ELITE_BAK'
to 'E:\orcl\ELITE_BAK';
alter database rename file 'G:\ORACLE\ORADATA\orcl\HOTEL0826FILE'
to 'E:\orcl\HOTEL0826FILE';
alter database rename file 'G:\ORACLE\ORADATA\orcl\ELITEOB'
to 'E:\orcl\ELITEOB';alter database rename file 'G:\ORACLE\ORADATA\orcl\REDO01.LOG'
to 'E:\orcl\REDO01.LOG';
alter database rename file 'G:\ORACLE\ORADATA\orcl\REDO03.LOG'
to 'E:\orcl\REDO03.LOG';
alter database rename file 'G:\ORACLE\ORADATA\orcl\REDO02.LOG'
to 'E:\orcl\REDO02.LOG';

7. 从pfile重启数据库,并重建spfile

shutdown immediate
startup pfile='D:\oracle\product\10.2.0\admin\orcl\pfile\init.ora'
create spfile from pfile='D:\oracle\product\10.2.0\admin\orcl\pfile\init.ora';

http://www.lryc.cn/news/187786.html

相关文章:

  • 备忘录模式:对象状态的保存与恢复
  • C# InvokeRequired线程安全
  • pdf怎么转成jpg图片格式
  • React +ts + babel+webpack
  • 红队专题-REVERSE二进制逆向反编译
  • Spring技术原理之Bean生命周期原理解析
  • Unity实现设计模式——模板方法模式
  • C++实现高性能内存池(二)
  • 沪深300期权一个点多少钱?
  • 怎么防止重要文件夹丢失?文件夹安全如何保护?
  • 用于物体识别和跟踪的下游任务自监督学习-1-引言
  • 式子表达ds类——多用位置/值域表示未知数+区间覆盖转区间加:CF407E
  • Python 实现秒表功能(比较好玩的题目)
  • DALL-E 3调参教程;百度新出的AI写小说神器;通义听悟看播客也太爽了;系列博文带你理解生成式AI | ShowMeAI日报
  • 设计模式-享元模式
  • 中秋时节赏明月,五子棋戏月饼趣 — Flutter中秋限定版五子棋
  • Scala第十九章节
  • kafka与hbase的区别
  • 出栈序列的合法性
  • unity操作_刚体 c#
  • 网络编程中套接字(socket)介绍(Python示例)
  • d3dcompiler_43.dll是什么文件?缺失d3dcompiler_43.dll文件修复与解决方法
  • YOLOv7改进:SPD-Conv,低分辨率图像和小物体涨点明显,涨点神器!!!
  • iris(golang)连接mysql数据库
  • C现代方法(第1、2章)笔记
  • 练[CISCN2019 华东南赛区]Double Secret
  • 『Linux - gcc / g++』c程序翻译过程
  • 苹果遭遇安全危机,应用商店曝出不良APP,或影响iPhone的销售
  • docker 基本操作
  • ARM:使用汇编完成三个灯流水亮灭