rman替换磁盘迁移的方法是什么?

分类:编程技术 时间:2024-02-20 15:46 浏览:0 评论:0
0
本文介绍《rman替换磁盘迁移的方法是什么》的相关知识。在实际案例操作过程中,很多人都会遇到这样的困境。接下来就让小编带领大家学习如何应对这些困难。情况!我希望你能仔细阅读并学到一些东西!

我先迁移数据文件

1准备

插入新磁盘并格式化,挂载

/dev/sdc/

mkfs.ext4 /dev/sdc/

mkdir /home/oracle/cs

挂载/dev/sdc /home/oracle/cs

vi /etc/fstab -- 永久挂载

df -h

2 移动副本数据文件到新设备cs

i) 首先检查当前库数据文件位置

SQL> select name from v$datafile;

< p >姓名

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

/ooradata/ test1/system01.dbf

/ooradata/test1/sysaux01​​.dbf

/ooradata/test1/undotbs01.dbf

/ooradata/test1/users01.dbf

ii) 复制到新路径copy ... to

rman target/

运行{

分配通道c1类型磁盘;

分配通道c2类型磁盘;

复制数据文件'/ooradata/test1/system01.dbf '到'/home/oracle/cs/system01.dbf';

复制数据文件'/ooradata/test1/sysaux01​​.dbf'到'/home/oracle/cs/sysaux01​​.dbf';

复制数据文件'/ooradata/test1/undotbs01.dbf'到'/home/oracle/cs/undotbs01.dbf';

复制数据文件'/ooradata/test1 /users01.dbf' to '/home/oracle/cs/users01.dbf';

}

注意:复制之前可以返回alter system archive log current;

iii) 验证

[oracle@jcy1 oradata]$ cd /home/oracle/cs

[oracle@jcy1 cs]$ ll

< p>总计1295400< /p>

-rw-r----- 1 oracle dba 513810432 2月2日07:50 sysaux01​​.dbf

-rw-r----- 1 oracle dba 775954432 2月2日07:50 :50 system01.dbf

-rw-r----- 1 oracle dba 31465472 2月2日07:50 undotbs01.dbf

-rw-r- ---- 1 oracle dba 5251072 2 月 2 日 07:50 users01.dbf

II 迁移控制文件

1 先检查控制文件位置

SQL> select name from v$controlfile;< /p>

姓名

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

/ooradata/test1/control01.ctl

/u01/app/oracle/fast_recovery_area/test1/control02. ctl

2复制到新位置

RMAN>将当前控制文件复制到'/home/oracle/cs/control01.ctl';

注意:这里不需要指定原始位置,我们不会对02.ctl进行更改。出于安全考虑,控制文件一般放置在三个不同的磁盘上。我们只是为了实验

i) 验证

[oracle@jcy1 oradata]$ cd /home /oracle/cs

[oracle@jcy1 cs] $ ls -l control01.ctl

-rw-r----- 1 oracle dba 9748480 Feb 2 08:08 control01 .ctl

ii) 因为控制文件已移动、参数文件中需要修改控制文件的位置

SQL>create pfile='/home/oracle/cs/a.txt ' from spfile;

已创建文件。

SQL> !vi /home/oracle/cs/a.txt< /p>

修改control_files值

*.control_files='/home/oracle/cs/control01.ctl','/u01/app/oracle/fast_recovery_area/test1/control02.ctl'

关闭库

SQL>立即关闭

创建spfile

SQL>create spfile from pfile='/home/oracle/cs /a.txt';

文件已创建。

启动

SQL>startup nomount;

SQL> alter database mount;< /p>

更改数据库挂载

*

第 1 行出现错误:

ORA-00214:控制文件

' /u01/app/oracle/fast_recovery_area/test1/control02.ctl'版本724

与文件'/home/oracle/cs/control01.ctl'版本717不一致

解决方案:删除第二个控制文件,稍后添加

p>

SQL> create pfile ='/home/oracle/cs/b.txt' from spfile; --new b.txt file

文件已创建。

SQL> !vi /home/oracle/cs/b.txt

修改值control_files< /p>

*.control_files='/home/oracle/cs/control01.ctl'

关闭数据库

SQL>立即关闭

创建psfile

SQL>从pfile=创建spfile '/home/oracle/cs/b. txt';

SQL>startup nomount;

SQL>alter database mount;

正常

iii) 检查启动的是哪一个控制文件

SQL> select name from v$controlfile;

NAME

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

/home/oracle/cs/control01.ctl

注意:如果还没有改变,则需要做出一些改变。我这里没遇到什么问题,

RMAN>切换数据库进行复制;

3 恢复数据文件

RMAN>恢复数据库;

三迁移日志文件

1 查看日志文件位置

SQL> select来自 v$logfile 的成员;

成员

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

/ooradata/test1/redo03.log

/ooradata/test1/redo02.log

/ooradata/test1/redo01.log

2复制到新位置

SQL> alter数据库重命名文件'/ooradata/test1/redo03 .log' 为 '/home/oracle/cs/redo03.log';

数据库已更改。

SQL> 更改数据库重命名文件 '/ooradata/test1/redo02.log' to '/home/oracle/cs/redo02.log';

数据库已更改。

SQL> alter database rename file '/ooradata/test1/redo01.log' to '/ home/oracle/cs/redo01.log';

数据库已更改。

验证它

SQL> select member from v$logfile;

会员

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

/ home/oracle/cs/redo03.log

/home/oracle /cs/redo02.log

/home/oracle/cs/redo01.log

3 这时候就可以打开数据库了。请务必迁移数据和控制、日志文件,然后打开

SQL> alter database open RESETLOGS;

数据库已更改。

< strong>IIII 迁移临时文件

1 查看临时文件文件位置

SQL> select name from v$tempfile;

NAME

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

/ooradata/test1/temp01.dbf

2 更改临时文件位置

i) 思路:先添加一个临时文件,然后删除之前的

SQL> alter tablespace temp add tempfile '/home/oracle/cs/temp01.dbf' size 100m;

表空间已更改。

ii) 删除

SQL> alter database tempfile '/ooradata/test1/temp01.dbf' drop;

>

更改数据库临时文件 '/ooradata/test1/temp01.dbf' 删除

*

第 1 行出现错误:

ORA-25152: TEMPFILE此时不能删除

--使用中,重启后即可删除

SQL>立即关闭

SQL>启动

< p>SQL> alter database tempfile '/ooradata/test1/temp01.dbf' drop;

数据库已更改。

iii) 验证

SQL> select name来自 v$tempfile;

姓名

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

/home/oracle /cs/temp01.dbf

《rman替换磁盘迁移的方法是什么》内容介绍到这里,感谢您的阅读。如果您想了解更多行业资讯,可以关注网站,小编将为大家输出更多优质实用文章!

1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > rman替换磁盘迁移的方法是什么?

用户评论