利用copy在ASM磁盘组之间迁移
来源:互联网 发布:java学到什么程度 编辑:程序博客网 时间:2024/04/27 13:40
一.复制数据库文件到ASM磁盘组
1.启动到mount状态(启动第一节点数据库到mount,其它节点数据库实例关闭)
SQL> startup mount;
2.利用copy备份数据库
rman>backup as copy database format '+DG1'
3.利用rman工具指定到新的路径
RMAN> switch database to copy;
4.更新控制文件的数据文件路径
RMAN>run{
switch datafile all;
}
5.recover database并打开数据库
run
{
recover database;
alter database open;
}
6.添加新的临时文件到新的磁盘组,删除老的临时文件
SQL> alter tablespace temp add tempfile '+DG1' size 10m autoextend on;
SQL> select file#, TS#,name from v$tempfile;
SQL> ALTER DATABASE TEMPFILE '+DATA/orcl/tempfile/temp.854.822754095' DROP INCLUDING DATAFILES;
7.重建在线redo到新的磁盘组和删除旧的在线redo
SQL>select GROUP#, THREAD#,STATUS,members from v$log;
更改第一节点的联机日志文件组
sql>alter database add logfile group 5 +dg1 size 50m;
sql>alter database add logfile group 6 +dg1 size 50m;
sql>alter system switch logfile;
sql>alter system switch logfile;
sql>alter system checkpoint;
sql>alter database drop logfile group 1;
sql>alter database drop logfile group 2;
更改第二节点的联机日志文件组(启动第二节点数据库)
SQL> alter database add logfile thread 2 group 7 '+DG1' size 50m;
SQL> alter database add logfile thread 2 group 8 '+DG1' size 50m;
sql>alter system switch logfile;
sql>alter system switch logfile;
sql>alter system checkpoint;
SQL> alter database drop logfile group 3;
SQL> alter database drop logfile group 4;
二,修改控制文件的路径
1.修改控制文件的路径
sql>alter system set control_files='+dg1' scope=spfile;
2.备份控制文件
$rman target /
rman>backup current controlfile format '/home/oracle/controlfile.ctl';
修改新的控制文件的路径
alter system set control_files='+DG1/mydb/controlfile/current.265.881774751' scope=spfile;
3.启动数据库到NOMOUNT
rman>shutdown immediate
rman>startup nomount;
4.恢复控制文件
rman>restore controlfile from '/home/oracle/controlfile.ctl';
5.修改新的控制文件的路径
alter system set control_files='+DG1/mydb/controlfile/current.265.881774751' scope=spfile;
备注:需要修改spfile文件中控制文件恢复新的路径,要不然数据库启动的时候会出现找不到控制文件的问题
三.将spfile指定到新的asm组
1.创建创建pfile
create pfile='/home/oracle/init.ora' from spfile;
修改以下参数
db_create_file_dest='+DISK' 修改为db_create_file_dest='+DG1'
log_archive_dest_1='LOCATION=+DISK' 修改为log_archive_dest_1='LOCATION=+DG1'
2.修改init.ora,每一个节点都需要修改
[oracle@db1 ~]$ cd $ORACLE_HOME/dbs
[oracle@db1 dbs]$ vi initmydb1.ora
SPFILE='+DG1/mydb/spfilemydb.ora'
3.创建spfile文件
create SPFILE='+DG1/mydb/spfilemydb.ora' from pfile='/home/oracle/init.ora'
四.启动数据库
oracle@db1 dbs]$ rman target /
RMAN> recover database; --------------》因为控制文件是通过rman恢复回来的,需要recover database
RMAN> alter database open resetlogs;
SQL> select * from v$dbfile
FILE# NAME
---------- --------------------------------------------------
5 +DG1/mydb/datafile/undotbs2.258.881772827
4 +DG1/mydb/datafile/users.256.881772841
3 +DG1/mydb/datafile/undotbs1.261.881772821
2 +DG1/mydb/datafile/sysaux.259.881772773
1 +DG1/mydb/datafile/system.260.881772719
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
+DG1/mydb/onlinelog/group_3.267.881774255
+DG1/mydb/onlinelog/group_4.268.881774353
+DISK/mydb/onlinelog/group_2.267.881719891
+DG1/mydb/onlinelog/group_1.266.881774153
SQL> select name from v$tempfile;
NAME
--------------------------------------------------
+DG1/mydb/tempfile/temp.264.881773741
整个迁移过程完成
- 利用copy在ASM磁盘组之间迁移
- 使用rman在oracle ASM磁盘组之间移动数据文件
- 使用RMAN在ASM磁盘组之间移动数据文件
- ASM磁盘数据迁移
- ASM磁盘组异机迁移
- RAC数据库迁移(ASM磁盘组迁移)
- Oracle 11G RAC For ASM 利用RMAN COPY进行存储迁移
- ASM在原有的磁盘组添加磁盘
- oracle 11g 从+DATA迁移到+newdata ASM 磁盘组迁移
- oracle RAC 更换存储迁移数据(在线迁移ASM磁盘组)测试
- 迁移OCR、表决磁盘和asm spfile到其他磁盘组中
- 【Oracle】无宕机迁移更换asm磁盘
- 管理ASM磁盘组
- asm磁盘组管理
- 挂载ASM磁盘组
- ASM磁盘(asm_disk),故障组(failgroup),磁盘组(diskgroup)之间的关联分析
- oracle 11g R2 单实例 ASM 数据库数据磁盘组迁移
- 测试环境 11g上 ASM磁盘组的管理、迁移、总结 (dgbroker)
- CoreOS环境下通过register镜像搭建私有仓库
- Floyd算法
- Java面向对象前的知识细节总结与思考
- poj 1459 Power Network 【多源多汇最大流经典问题 dinic算法】
- 第14周上机实践项目1——小玩文件(2)
- 利用copy在ASM磁盘组之间迁移
- Java AWT Dialog(对话框)学习
- Handler
- uibutton block
- UVA 12298 Super Poker II(FFT)
- Visual Basic .NET で ADO レコードセットを使用する方法
- php模版引擎(smarty3)—优化(选择注释)
- 常见算法题:单链表二路归并
- 为EditText右侧添加删除按钮