第一步:启动ASM实例(+ASM)

[oracle@oracle ~]$ export ORACLE_SID=+ASM

[oracle@oracle ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Tue Jan 18 13:25:46 2011 Copyright (c) 1982, 2010, Oracle.  All Rights Reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select instance_name,status from v$instance;

ASM实例已经启动

INSTANCE_NAME  STATUS

---------------- ------------

+ASM   STARTED

SQL> select instance_name,db_name,status from v$asm_client;

ASM实例上没有数据库连接

no rows selected

SQL> select name,state from v$asm_diskgroup;

ASM磁盘组已经挂载

NAME          STATE

------------------------------ -----------

DG          MOUNTED

第二步,修改目标数据库(WM)的参数文件(spfile)

[oracle@oracle ~]$ echo $ORACLE_SID WM

[oracle@oracle ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Tue Jan 18 13:33:59 2011 Copyright (c) 1982, 2010, Oracle.  All Rights Reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> show parameter control_files;

NAME         TYPE  VALUE

------------------------------------ ----------- ------------------------------

control_files        string  /u01/app/oracle/oradata/WM/conrol01.ctl, /u01/app/oracle/or        adata/WM/control02.ctl, /u01/app/oracle/oradata/WM/control03.ctl

SQL> show parameter db_create_file_dest;

NAME         TYPE  VALUE

------------------------------------ ----------- ------------------------------

db_create_file_dest       string

SQL> create pfile from spfile;

File created.

SQL> alter system set control_files='+DG' scope=spfile;在spfile中把控制文件的路径修改为ASM磁盘组

System altered.

SQL> alter system set db_create_file_dest='+DG' scope=spfile;同上,修改数据文件的创建路径

System altered.

SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down.

第三步,利用RMAN迁移目标数据库(WM)的控制文件和数据文件

[oracle@oracle ~]$ rman target /

Recovery Manager: Release 10.2.0.5.0 - Production on Tue Jan 18 13:38:22 2011 Copyright (c) 1982, 2007, Oracle.  All rights reserved. connected to target database (not started)

RMAN> startup nomount;

Oracle instance started Total System Global Area     285212672 bytes Fixed Size                     1273276 bytes Variable Size                 92275268 bytes Database Buffers             188743680 bytes Redo Buffers                   2920448 bytes

RMAN> restore controlfile from '/u01/app/oracle/oradata/WM/control01.ctl';利用文件系统上的控制文件重建控制文件到ASM磁盘组DG上

Starting restore at 18-JAN-11 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: sid=156 devtype=DISK

channel ORA_DISK_1: copied control file copy output filename=+DG/wm/controlfile/current.256.740756507 Finished restore at 18-JAN-11

RMAN> alter database mount;

database mounted released channel: ORA_DISK_1

RMAN> run{

allocate channel c1 device type disk;

allocate channel c2 device type disk;

backup as copy database format '+DG';

}  利用RMAN复制数据文件到ASM磁盘组DG上

allocated channel: c1 channel c1: sid=156 devtype=DISK

allocated channel: c2 channel c2: sid=152 devtype=DISK

Starting backup at 18-JAN-11 channel c1: starting datafile copy input datafile fno=00001 name=/u01/app/oracle/oradata/WM/system01.dbf channel c2: starting datafile copy input datafile fno=00003 name=/u01/app/oracle/oradata/WM/sysaux01.dbf output filename=+DG/wm/datafile/sysaux.258.740756731 tag=TAG20110118T134523 recid=2 stamp=740757197 channel c2: datafile copy complete, elapsed time: 00:07:58 channel c2: starting datafile copy input datafile fno=00005 name=/u01/app/oracle/oradata/WM/example01.dbf output filename=+DG/wm/datafile/system.257.740756727 tag=TAG20110118T134523 recid=3 stamp=740757268 channel c1: datafile copy complete, elapsed time: 00:09:09 channel c1: starting datafile copy input datafile fno=00002 name=/u01/app/oracle/oradata/WM/undotbs01.dbf output filename=+DG/wm/datafile/example.259.740757205 tag=TAG20110118T134523 recid=4 stamp=740757287 channel c2: datafile copy complete, elapsed time: 00:01:30 channel c2: starting datafile copy input datafile fno=00004 name=/u01/app/oracle/oradata/WM/users01.dbf output filename=+DG/wm/datafile/undotbs1.260.740757277 tag=TAG20110118T134523 recid=6 stamp=740757304 channel c1: datafile copy complete, elapsed time: 00:00:32 output filename=+DG/wm/datafile/users.261.740757299 tag=TAG20110118T134523 recid=5 stamp=740757303 channel c2: datafile copy complete, elapsed time: 00:00:12 Finished backup at 18-JAN-11

Starting Control File and SPFILE Autobackup at 18-JAN-11 piece handle=/u01/app/oracle/flash_recovery_area/WM/autobackup/2011_01_18/o1_mf_s_737250559_6mbbsvw6_.bkp comment=NONE Finished Control File and SPFILE Autobackup at 18-JAN-11 released channel: c1 released channel: c2

RMAN> switch database to copy; 利用RMAN的SWITCH 命令修改控制文件内数据文件的指针,使其指向新位置

datafile 1 switched to datafile copy "+DG/wm/datafile/system.257.740756727" datafile 2 switched to datafile copy "+DG/wm/datafile/undotbs1.260.740757277" datafile 3 switched to datafile copy "+DG/wm/datafile/sysaux.258.740756731" datafile 4 switched to datafile copy "+DG/wm/datafile/users.261.740757299" datafile 5 switched to datafile copy "+DG/wm/datafile/example.259.740757205"

RMAN> recover database;

Starting recover at 18-JAN-11 allocated channel: ORA_DISK_1 channel ORA_DISK_1: sid=156 devtype=DISK

starting media recovery media recovery complete, elapsed time: 00:00:01

Finished recover at 18-JAN-11

RMAN> alter database open;

database opened

第四步,迁移tempfile到ASM磁盘组DG上

[oracle@oracle ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Tue Jan 18 14:01:09 2011 Copyright (c) 1982, 2010, Oracle.  All Rights Reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select instance_name,status from v$instance;

INSTANCE_NAME  STATUS

---------------- ------------

WM   OPEN

SQL> select name,status,enabled from v$tempfile;

NAME      STATUS  ENABLED

---------------------------------------- ------- ----------

/u01/app/oracle/oradata/WM/temp01.dbf  ONLINE  READ WRITE

SQL> alter tablespace temp add tempfile '+DG';

Tablespace altered.

SQL> alter tablespace temp drop tempfile '/u01/app/oracle/oradata/WM/temp01.dbf';

Tablespace altered.

SQL> select name,status,enabled from v$tempfile;

NAME      STATUS  ENABLED

---------------------------------------- ------- ----------

+DG/wm/tempfile/temp.262.740757907  ONLINE  READ WRITE

第五步,迁移redo logfile到ASM磁盘组DG上

SQL> select l.group#,l.sequence#,f.member as name,l.status,l.archived from v$log l,v$logfile f where f.group#=l.group#;

GROUP#  SEQUENCE# NAME           STATUS  ARC

---------- ---------- ---------------------------------------- ---------------- ---

3     6 /u01/app/oracle/oradata/WM/redo03.log    CURRENT  NO

2     5 /u01/app/oracle/oradata/WM/redo02.log    INACTIVE  YES

1     4 /u01/app/oracle/oradata/WM/redo01.log    INACTIVE  YES

SQL> alter database add logfile '+DG' size 10M;

Database altered.

SQL> alter database add logfile '+DG' size 10M;

Database altered.

SQL> alter database add logfile '+DG' size 10M; 添加三个redolog组到ASM磁盘组DG上

Database altered.

SQL> select l.group#,l.sequence#,f.member as name,l.status,l.archived from v$log l,v$logfile f where f.group#=l.group#;

GROUP#  SEQUENCE# NAME           STATUS  ARC

---------- ---------- ---------------------------------------- ---------------- ---

3     6 /u01/app/oracle/oradata/WM/redo03.log    CURRENT  NO

2     5 /u01/app/oracle/oradata/WM/redo02.log    INACTIVE  YES

1     4 /u01/app/oracle/oradata/WM/redo01.log    INACTIVE  YES

4     0 +DG/wm/onlinelog/group_4.263.740758405   UNUSED  YES

5     0 +DG/wm/onlinelog/group_5.264.740758423   UNUSED  YES

6     0 +DG/wm/onlinelog/group_6.265.740758425   UNUSED  YES

6 rows selected.

SQL> alter database drop logfile '/u01/app/oracle/oradata/WM/redo02.log';

Database altered.

SQL> alter database drop logfile '/u01/app/oracle/oradata/WM/redo01.log';删除文件系统上的redolog组

Database altered.

SQL> select l.group#,l.sequence#,f.member as name,l.status,l.archived from v$log l,v$logfile f where f.group#=l.group#;

GROUP#  SEQUENCE# NAME           STATUS  ARC

---------- ---------- ---------------------------------------- ---------------- ---

3     6 /u01/app/oracle/oradata/WM/redo03.log    CURRENT  NO

4     0 +DG/wm/onlinelog/group_4.263.740758405   UNUSED  YES

5     0 +DG/wm/onlinelog/group_5.264.740758423   UNUSED  YES

6     0 +DG/wm/onlinelog/group_6.265.740758425   UNUSED  YES

SQL> alter system switch logfile;

System altered.

SQL> select l.group#,l.sequence#,f.member as name,l.status,l.archived from v$log l,v$logfile f where f.group#=l.group#;

GROUP#  SEQUENCE# NAME           STATUS  ARC

---------- ---------- ---------------------------------------- ---------------- ---

3     6 /u01/app/oracle/oradata/WM/redo03.log    ACTIVE  NO

4     7 +DG/wm/onlinelog/group_4.263.740758405   CURRENT  NO

5     0 +DG/wm/onlinelog/group_5.264.740758423   UNUSED  YES

6     0 +DG/wm/onlinelog/group_6.265.740758425   UNUSED  YES

SQL> alter system checkpoint;

System altered.

SQL> select l.group#,l.sequence#,f.member as name,l.status,l.archived from v$log l,v$logfile f where f.group#=l.group#;

GROUP#  SEQUENCE# NAME           STATUS  ARC

---------- ---------- ---------------------------------------- ---------------- ---

3     6 /u01/app/oracle/oradata/WM/redo03.log    INACTIVE  NO

4     7 +DG/wm/onlinelog/group_4.263.740758405   CURRENT  NO

5     0 +DG/wm/onlinelog/group_5.264.740758423   UNUSED  YES

6     0 +DG/wm/onlinelog/group_6.265.740758425   UNUSED  YES

SQL> alter database drop logfile group 3;

Database altered.

SQL> select l.group#,l.sequence#,f.member as name,l.status,l.archived from v$log l,v$logfile f where f.group#=l.group#;

GROUP#  SEQUENCE# NAME           STATUS  ARC

---------- ---------- ---------------------------------------- ---------------- ---

4     7 +DG/wm/onlinelog/group_4.263.740758405   CURRENT  NO

5     0 +DG/wm/onlinelog/group_5.264.740758423   UNUSED  YES

6     0 +DG/wm/onlinelog/group_6.265.740758425   UNUSED  YES

SQL> alter system switch logfile;

System altered.

SQL> alter system switch logfile;

System altered.

SQL> select l.group#,l.sequence#,f.member as name,l.status,l.archived from v$log l,v$logfile f where f.group#=l.group#;

GROUP#  SEQUENCE# NAME           STATUS  ARC

---------- ---------- ---------------------------------------- ---------------- ---

4     7 +DG/wm/onlinelog/group_4.263.740758405   ACTIVE  NO

5     8 +DG/wm/onlinelog/group_5.264.740758423   ACTIVE  NO

6     9 +DG/wm/onlinelog/group_6.265.740758425   CURRENT  NO

第六步,删除文件系统上的数据文件

[oracle@oracle oradata]$ cd $ORACLE_BASE/oradata

[oracle@oracle oradata]$ ls WM

[oracle@oracle oradata]$ rm -rf WM/

[oracle@oracle oradata]$ ls

转载于:https://www.cnblogs.com/luoyx/archive/2012/05/04/2482664.html

Oracle单实例下oracle数据库从文件系统迁移到ASM上相关推荐

  1. export Oracle_sid =asm,单实例下oracle数据库从文件系统迁移到ASM上

    第一步:启动ASM实例(+ASM) [oracle@oracle ~]$ export ORACLE_SID=+ASM [oracle@oracle ~]$ sqlplus / as sysdba S ...

  2. 从文件系统迁移到ASM上

    一.从文件系统迁移到ASM上 1.添加一个磁盘,fdisk分区,创建raw,start_udev 配置相应的参数以及环境 root: groupadd asmadmin groupadd asmdba ...

  3. 新建oracle数据库 环境查询,Oracle单实例数据库迁移到Oracle RAC 环境之(2)--实施篇...

    Oracle单实例数据库迁移到Oracle RAC 环境之(2)--实施篇 系统环境: 操作系统:RedHat EL55 Oracle : Oracle 11.2.0.1.0 集群软件:Oracle ...

  4. 单实例oracle ha,Oracle单实例启动多个实例

    Oracle单实例启动多个实例 多实例运行,单个实例就是一个数据库!一个数据库对应多个实例是RAC. Linux建立oracle的实例步骤: 1.在linux服务器的图形界面下,打开一个终端,输入如下 ...

  5. Oracle 运维篇+RAC集群转单实例/RMAN异机恢复/RMAN迁移/RMAN备份恢复操作概要

    说明:本文为Oracle RAC集群转单实例/RMAN异机恢复/RMAN迁移/RMAN备份恢复操作概要方便用户查阅 温馨提示:如果您发现本文哪里写的有问题或者有更好的写法请留言或私信我进行修改优化 说 ...

  6. Oracle单实例通过DG迁移至RAC集群(Oracle 11g 超详细文档)

    实验:Oracle单实例通过DG迁移至RAC集群(Oracle 11g 超详细文档) 步骤1:Oracle单实例搭建 1. 系统环境检查 2. 创建用户.组,配置环境变量.安装目录 3. 安装Orac ...

  7. Oracle各种版本下“示例数据库的创建”的创建

    Oracle各种版本下"示例数据库的创建"的创建 1.插入示例方案 PDB :使用 DBCA 在 12.1.0.2 中,可以使用 DBCA 图形化界面来创建示例 PDB . 您可以 ...

  8. ORACLE单实例ADG搭建

    ORACLE单实例ADG搭建 1.必要配置 1.1 查看是否开启归档 1.2 启库开启强制日志 1.3 添加standby logfile 2.修改主库参数 2.1 使用当前的spfile创建pfil ...

  9. 删除DB2实例下的数据库

    删除DB2实例下的数据库 db2ilist 查看所有实例 db2 get instance 查看当前连接的实例 db2 list db directory 查看当前实例下连接的数据库 C:\Users ...

最新文章

  1. 第19/24周 锁升级(Lock Escalations)
  2. Java开源——常见J2EE框架简介
  3. WCF系列(二) -- 使用配置文件构建和使用WCF服务
  4. 精益质量管理中执行防错管理的八大要点
  5. day②:字典的fromkeys方法
  6. new Date(date).getTime()的兼容问题
  7. 为什么说区块链是具有革命性意义的?
  8. Maven无法下载远程依赖-强制下载也不行
  9. Flutter实战一Flutter聊天应用(八)
  10. The engine “node“ is incompatible with this module
  11. Linux性能优化之内存(一)
  12. vue-ueditor-wrap集成135编辑器
  13. esp8266点灯LCD12864心知天气+农历+空气质量ArduinoJson6
  14. 密码学基础算法(二)中国剩余定理
  15. fullcalendar的使用教程
  16. PADS-Logic学习笔记
  17. Cf252中子发射能谱模型
  18. 又拍云张聪:OpenResty 动态流控的几种姿势
  19. 装机员 Ghost Win7 Sp1 64位纯净贺岁版2017
  20. 【Python】配置Python环境

热门文章

  1. VSCode + Latex 配置
  2. 【Python-ML】SKlearn库多元线性回归性能评估
  3. Linux用户和HDFS和Hive权限关系
  4. Leetcode 203. 移除链表元素 解题思路及C++实现
  5. 数据结构源码笔记(C语言):冒泡排序
  6. java调用网络打印机不稳定_新手处理共享打印机总是没有反应的故障
  7. Druid:数据库连接池实现技术
  8. Mac 技术篇-通过AppScript编写脚本实现设置快捷键打开指定程序实例演示
  9. IntelliJ IDEA绑定Github报Error 403: Not Authorized没有授权问题解决方法
  10. ArrayDeque中的取余