重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 690|回复: 0
打印 上一主题 下一主题

[Oracle] RAC数据文件创建到本地的处理办法

[复制链接]
跳转到指定楼层
楼主
发表于 2025-8-17 20:18:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
处理办法
先确认数据库开启了归档模式

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            +ARCH
Oldest online log sequence     58500
Next log sequence to archive   58502
Current log sequence           58502
确认被放到本地的数据文件位置

SQL> select file#,name from v$datafile where file#='56';

FILE#     NAME
------- -------------------------------------------------------------------------
56       /u01/app/oracle/oracle/product/11.2.0/dbhome_1/dbs/R:ORADATAHTEMRHTBASE01.DBF

1 rows selected.
下线数据文件

SQL> alter database datafile 56 offline;

Database altered.

SQL> select file#,status from v$datafile where file#='56';

     FILE# STATUS
---------- -------
        56 RECOVER
登录rman,把文件复制到ASM存储里

bash-3.2$ rman target/

Recovery Manager: Release 11.2.0.4.0 - Production on Tue Aug 12 09:57:12 2025

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
connected to target database: EMRDB (DBID=xxxxxx)

RMAN> backup as copy datafile 56 format '+DATA/emrdb/datafile/htbase48.ora';

Starting backup at 2025-08-12 09:59:58
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=2129 instance=emrdb2 device type=DISK
channel ORA_DISK_1: starting datafile copy
input datafile file number=00056 name=/u01/app/oracle/oracle/product/11.2.0/dbhome_1/dbs/R:ORADATAHTEMRHTBASE01.DBF
output file name=+DATA/emrdb/datafile/htbase48.ora tag=TAG20250812T095958 RECID=1 STAMP=1208944798
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
Finished backup at 2025-08-12 09:59:59
亲自到ASM里查看一下文件是否存在,用grid用户操作

$ asmcmd
ASMCMD> cd data
ASMCMD> cd emrdb
ASMCMD> cd datafile
ASMCMD> ls -l
Type      Redund  Striped  Time             Sys  Name
<多余的我这里隐去了>
                                            N    htbase46.ora => +DATA/EMRDB/DATAFILE/HTBASE.319.1170750941
                                            N    htbase47.ora => +DATA/EMRDB/DATAFILE/HTBASE.320.1170751055
                                            N    htbase48.ora => +DATA/EMRDB/DATAFILE/HTBASE.321.1208944799
切回到Oracle用户,登录数据库,执行修改数据文件命令

$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Tue Aug 12 10:01:19 2025
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

SQL> alter database rename file '/u01/app/oracle/oracle/product/11.2.0/dbhome_1/dbs/R:ORADATAHTEMRHTBASE01.DBF' to '+DATA/emrdb/datafile/htbase48.ora';

Database altered.
确认修改结果

SQL> select file#,name,status from v$datafile;

FILE#     NAME                                                             STATUS
-------   ---------------------------------          -------
56        +DATA/emrdb/datafile/htbase48.ora     RECOVER
上线数据文件

SQL> alter database recover datafile 56;
Database altered.

SQL> alter database datafile 56 online;
Database altered.
确认数据文件状态

SQL> select file#,name,status from v$datafile;

FILE#     NAME                                                            STATUS
-------   ---------------------------------    -------
56        +DATA/emrdb/datafile/htbase48.ora     ONLINE

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-4-18 03:02 , Processed in 0.336084 second(s), 21 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表