环境信息:

源库 目标库
操作系统 WIN7 WIN SVR 2012 R2
系统盘符 C,D,E,F C,D
IP x.x.x.216 x.x.x.112
数据库版本 10.2.0.4.0 - 64bi 10.2.0.4.0 - 64bi
存储方式 单实例 单实例
ORACLE_HOME D:\oracle\product\10.2.0\db_1 D:\oracle\product\10.2.0\db_1
ORACLE_SID ORCL ORCL

数据库迁移思路:

  • 目标系统创建新的数据库
  • 将源库中所有控制文件,数据文件复制到目标库中
  • 重建控制文件修改相应路径(如果文件路径有变更)
  • 介质恢复所有数据文件
  • 启动数据库

具体恢复步骤:

  1. 源库中查询控制文件、REDO 文件、数据文件位置并且记录下来,并且查询数据库 DBID 记录下来
select name from v$datafile;
select name from v$controlfile;
select * from v$logfile;
select dbid from v$database;
  1. 进行切换日志组,触发检查点,确保数据由脏块进入数据文件中。
alter system switch logfile;
alter system checkpoint;
shutdown immediate;//可选[取决于是否停机迁库]
  1. 关闭目标数据库 (以下皆在目标数据库进行操作)
shutdown immediate;
  1. 以 notmount 模式启动,并且设置数据库 DBID 后关闭数据库
startup nomount;
set dbid=1526707455;//(源库DBID)
shutdown immediate;
  1. 将所有控制文件、REDO 文件及数据库文件复制到新的系统环境中(因为 216 系统盘与 112 系统盘不一致,故移动到目标库 D 盘某一固定文件夹中)

    因为本次复制并无参数文件故控制文件(3 个)需放在 ORACLE10G 默认控制文件的路径下 D:\oracle\product\10.2.0\oradata\orcl
  2. 启动 mount 模式启动目标数据库
startup mount;
  1. 导出控制文件重建语句
alter database backup controlfile to trace as 'c:\REBUILDCTL.SQL';
  1. 编辑 REBUILDCTL.SQL 文件夹,将数据文件,REDO 文件,临时文件等替换为放置到目标系统后的相对文件路径。

    (需修改的路径不止途中圈出的,需修改所有路径为目标系统规划路径)

  2. 关闭数据库,并且运行 REBUILDCTL.SQL 文件

shutdown immediate;
@c:\REBUILDCTL.SQL;
  1. 以 mount 模式进行启动,并且对所有数据文件进行介质恢复(因为重建控制文件会导致 scn 更新,导致与数据文件中不统一)
recover database;
  1. 清除重做日志打开数据库
alter database open resetlogs;
  1. 验证数据库(验证源数据库中的数据是否到目标数据库中)

PS

  1. 之前想通过 windows 命令创建虚拟盘符 E,F 来避免为了修改数据文件的路径而去对控制文件进行重建,然而发现 oracle 识别不到虚拟盘符的路径,所以还是得老老实实得去重建修改掉相对路径。
  2. 其他参考地址:
  3. https://jingyan.baidu.com/article/ca00d56c6d0d9de99eebcf82.html
  4. https://www.cnblogs.com/Snowfun/articles/4805048.html

ORACLE10G非归档模式下异机迁库(文件迁移)的更多相关文章

  1. 测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程

    测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程 最近系统出现问题,由于数据库产生的日志量太大无法开启归档模式,导致offline的 ...

  2. ORACLE10G非归档模式下RMAN异机迁库

    环境信息: 源库 目标库 操作系统 WIN7 WIN SVR 2012 R2 IP x.x.x.216 x.x.x.112 数据库版本 10.2.0.4.0 - 64bi 10.2.0.4.0 - 6 ...

  3. 非归档模式下使用Rman进行备份和恢复

    实验环境: 一.首先进行全库数据备份: 在非归档模式下,rman备份需要在mount模式下进行 SQL> select status from v$instance; STATUS ------ ...

  4. Oracle非归档模式下脱机数据文件

    正常情况下,要想对数据文件脱机,必须在归档模式下,这是ORACLE自动保护的一种措施,防止在非归档模式下对数据文件脱机,造成数据丢失.如果想在非归档模式下执行数据文件脱机操作,则需要加上“for dr ...

  5. 使用alter database datafile 'XXX' offline drop 是否能够恢复(非归档模式下)

    今天在群里面听到一位网友在说使用了alter database datafile 'XXX' offline drop命令是否能够恢复数据,在非归档模式下,下面是用一个实验来验证一下 ######## ...

  6. oracle非归档模式下的冷备份和恢复

    查看归档的相关信息 SQL> archive log list数据库日志模式             非存档模式自动存档             禁用存档终点            USE_DB ...

  7. Oracle之rman数据库在非归档模式下的备份和恢复

    1.数据库在非归档模式下的备份 SQL> archive log list;数据库日志模式 非存档模式自动存档 禁用存档终点 USE_DB_RECOVERY_FILE_DEST最早的联机日志序列 ...

  8. Dalvik模式下在Android so库文件.init段、.init_array段构造函数上下断点

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/78244766 在前面的博客<在Android so文件的.init..ini ...

  9. RMAN备份之非归档模式下的备份

    Backing Up a Database in NOARCHIVELOG Mode:1.Log into RMAN2.Shutdown immediate from RMAN3.Startup mo ...

随机推荐

  1. typescript 点滴

    1 extend的用法 const x = extend({ a: 'hello' }, { b: 42 }); 2只有在d.ts,你才可以使用  export as 这样子的语法.而且必须有name ...

  2. Linux运维--15.OpenStack vm使用keepalived 实现负载均衡

    外接mariadb集群 实现负载均衡 实验环境 10.0.1.27 galera1 10.0.1.6 galera2 10.0.1.23 galera3 10.0.1.17 harpoxy1 hapr ...

  3. linux之ls目录处理命令

    目录处理命令:ls 解释 命令名称:ls 命令英文原意:list 命令所在路径:/bin/ls 执行权限:所有用户 功能描述:显示目录文件 语法 ls 选项[-ald] [文件或目录] -a 显示所有 ...

  4. Android中实现自定义View组件并使其能跟随鼠标移动

    场景 实现效果如下 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 新建An ...

  5. C++实现一个简单的双栈队列

    双栈队列的原理是用两个栈结构模拟一个队列, 一个栈A模拟队尾, 入队的元素全部压入此栈, 另一个栈B模拟队首, 出队时将栈A的元素弹入栈B, 将栈B的栈顶元素弹出 此结构类似汉诺塔, 非常经典, 这里 ...

  6. MySql学习-5.查询2

    1.聚合: 1.1 5个聚合函数: count(*):括号中写列名,或者 *: max(列):此列的最大值: min(列):此列的最小值: sum(列):此列的和: avg(列):此列的平均值: 1. ...

  7. centos安装gitlab及汉化

    GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务.今天,就记录一下centos部署gitlab及其汉化的操作方法. 1.下载安装 下载地址: ...

  8. Elasticsearch分布式架构

    Reference 1. http://solutionhacker.com/elasticsearch-architecture-overview/ 2. https://github.com/ba ...

  9. day 9 深浅拷贝

    浅copy 现有数据 data = { "name":"alex", "age":18, "scores":{ &quo ...

  10. 【React Native】集成声网Agora语音通讯

    前言: 公司的产品是一款基于社交的内容聊天软件,需要集成语音通讯功能,在写iOS原生项目时,用到的就是Agora SDK,现在写React Native也直接采用了Agora的库. 集成iOS.And ...