前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >RAC环境下误操作将数据文件添加到本地存储

RAC环境下误操作将数据文件添加到本地存储

作者头像
Alfred Zhao
发布于 2019-05-24 11:43:50
发布于 2019-05-24 11:43:50
1.2K00
代码可运行
举报
运行总次数:0
代码可运行

今天碰到个有意思的事情,有客户在Oracle RAC环境,误操作将新增的数据文件直接创建到了其中一个节点的本地存储上。 发现网上去搜的话这种问题还真不少,对应解决方案也各式各样,客户问我选择哪种方案可行,看来基础的数据维护工作还是有必要进一步规范的。 数据库是归档模式,那么我们实际可以利用rman的backup as copy datafile xxx format ''以及 switch datafile xxx to copy来操作,这样来解决是最简单且最不容易误操作的。

简单做一个实验来说明,整个过程如下: 环境:Oracle 12.2.0.1 RAC

1.模拟误操作添加一个数据文件到本地存储目录下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SQL> alter tablespace users add datafile '/tmp/user02.dbf' size 150M;

Tablespace altered.

SQL> select file_id, file_name from dba_data_files;

   FILE_ID FILE_NAME
---------- ------------------------------------------------------------------
         1 +DATA/NEWDB1/DATAFILE/system.257.954241433
         3 +DATA/NEWDB1/DATAFILE/sysaux.258.954241497
         4 +DATA/NEWDB1/DATAFILE/undotbs1.259.954241533
         7 +DATA/NEWDB1/DATAFILE/users.260.954241535
        15 /tmp/user02.dbf
         9 +DATA/NEWDB1/DATAFILE/undotbs2.269.954241841

6 rows selected.

查到这个误操作新增的数据文件号是15.

2.利用RMAN把15号文件备份副本(backup as copy)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RMAN> backup as copy datafile 15 format '+data';

Starting backup at 05-DEC-17
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=47 instance=newdb11 device type=DISK
channel ORA_DISK_1: starting datafile copy
input datafile file number=00015 name=/tmp/user02.dbf
output file name=+DATA/NEWDB1/DATAFILE/users.279.961935881 tag=TAG20171205T122439 RECID=4 STAMP=961935880
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
Finished backup at 05-DEC-17

Starting Control File and SPFILE Autobackup at 05-DEC-17
piece handle=+FRA/NEWDB1/AUTOBACKUP/2017_12_05/s_961935881.262.961935883 comment=NONE
Finished Control File and SPFILE Autobackup at 05-DEC-17

3.将15号数据文件离线 可以只将错误的15号数据文件离线,减小影响;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RMAN> alter database datafile 15 offline;

Statement processed

4.切换15号数据文件到copy副本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RMAN> switch datafile 15 to copy;

datafile 15 switched to datafile copy "+DATA/NEWDB1/DATAFILE/users.279.961935881"

5.恢复15号数据文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RMAN> recover datafile 15;

Starting recover at 05-DEC-17
using channel ORA_DISK_1

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

Finished recover at 05-DEC-17

6.将15号数据文件上线

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RMAN> alter database datafile 15 online;

Statement processed



   FILE_ID FILE_NAME
---------- ------------------------------------------------------------------
         1 +DATA/NEWDB1/DATAFILE/system.257.954241433
         3 +DATA/NEWDB1/DATAFILE/sysaux.258.954241497
         4 +DATA/NEWDB1/DATAFILE/undotbs1.259.954241533
         7 +DATA/NEWDB1/DATAFILE/users.260.954241535
        15 +DATA/NEWDB1/DATAFILE/users.279.961935881
         9 +DATA/NEWDB1/DATAFILE/undotbs2.269.954241841

6 rows selected.

注:如果客户有特殊要求,backup as copy时直接将数据文件名改成规范的,比如在步骤2中可以这样指定具体的名字:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RMAN> backup as copy datafile 15 format '+data/NEWDB1/DATAFILE/users02.DBF';

实际上users02.dbf这种也只是个别名,底层还是OMF那种命名的文件,这样做没什么太大的实际意义,但有时候客户会喜欢这种看起来更好管理的方式。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-12-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
案例|RAC 添加表空间误将数据文件放本地处理办法
不管是 10g、11g、12c ,RAC 架构的数据文件均是存放在共享存储上的,但是由于扩容时误操作少写一个符号,则会将数据文件建立到本地文件系统上的 $ORACLE_HOME/dbs 目录下,这样当然不会立即出错,也提示添加成功,但当另外一个节点访问此数据文件上面的数据时就会报错 ORA-1157、ORA-1110 提示无法锁定该数据文件,导致出现异常应用无法访问此数据。
JiekeXu之路
2020/11/17
5640
案例|RAC 添加表空间误将数据文件放本地处理办法
ASM数据文件和OS文件系统互相转移方法总结(移动或重命名数据文件)
本blog介绍了各种asm数据文件和filesystem文件之间的转换方法,有的记录了过程,有的没有记录过程只记录了相关代码,大家若有兴趣可以自行测试。
AiDBA宝典
2023/04/26
1.1K0
ASM数据文件和OS文件系统互相转移方法总结(移动或重命名数据文件)
Oracle ADG备库SYSAUX数据文件坏块恢复处理(ORA-00600,ORA-10567,ORA-10564......
本文阐述了Oracle ADG备库SYSAUX数据文件坏块恢复处理(ORA-00600,ORA-10567,ORA-10564,ORA-01110,ORA-10561)的思路、步骤、解决方案。
数据和云
2021/10/26
8120
Oracle 12c系列(十) | 12c中的Recovering Tables and Table Partitions
在Oracle12c之前的版本中,rman进行数据恢复时只能进行database/tablespace/datafile/block四种级别的恢复,如果误操作删除某张表或表中数据,无法通过闪回进行数据还原时,且有完整备份以及归档,该种情况下可以进行表空间时间点恢复,但恢复方式较麻烦,在Oracle12c中,Oracle对rman功能进行了增强,除了之前的四种级别的恢复,rman也提供了表/表分区级别的恢复,该特性可以直接从现有的rman备份中来恢复表/表分区,且恢复的过程不影响数据库中的其他的对象。
沃趣科技
2018/08/20
8970
Oracle 12c系列(十) | 12c中的Recovering Tables and Table Partitions
问题:Duplicate报错RMAN-03009, ORA-17628, ORA-19505
前面文章提到,这周末帮一个客户测试报错场景: 客户通过duplicate生产备库的方式创建cascade备库。 发现每次都会遇到两个文件报错,ORA-17628: Oracle error 19505错误,且每一次跑,报错文件不一样。 现在想帮客户验证,这属于是正常现象还是bug。
Alfred Zhao
2023/05/23
1K0
ORACLE修改数据文件路径(四种方式)--转
移动数据文件/home/oracle/cjctbs02.dbf到/u01/app/oracle11/oradata/chendb/cjctbs02.dbf
Lucifer三思而后行
2021/08/17
3.1K0
ORACLE修改数据文件路径(四种方式)--转
dataguard备库的数据文件的迁移(r8笔记第22天)
关于移动数据库文件,之前写了一篇博文,http://blog.itpub.net/23718752/viewspace-1127910/ 但是在备库中还是有一些的差别。最近因为对备库做了一些规划,新增加了几个分区,想把数据库的一部分文件放到SSD上。所以这个时候在现有的备库基础上需 要移动备库的数据库文件。这里就不局限于数据文件了,不过目前的测试情况来说,还是数据文件是重点,还是主要以数据文件为例。 在备库中目前尝试了两种方式,可以采用rename datafile的方式或者使用rman的方式,对于日
jeanron100
2018/03/19
1K0
Oracle数据库工程师手记:备份恢复双城记(三)
本文作者系大连健哥, POSTGRESQL、ORACLE 数据库资深从业人员、IT 技术的深度爱好者。相信科学改变人类、技术创造未来。个人主页:https://www.cnblogs.com/gaojian/,经其本人授权发布。
SQLplusDB
2022/08/19
3270
使用RMAN增量备份处理Dataguard因归档丢失造成的gap
Thu Mar 29 11:21:45 2018 FAL[client]: Failed to request gap sequence  GAP - thread 1 sequence 184-185  DBID 1484954774 branch 960494131 FAL[client]: All defined FAL servers have been attempted. ------------------------------------------------------------ Check that the CONTROL_FILE_RECORD_KEEP_TIME initialization parameter is defined to a value that's sufficiently large enough to maintain adequate log switch information to resolve archivelog gaps.
星哥玩云
2022/08/16
5340
实战篇:Oracle DataGuard 出现 GAP 修复完整步骤
DG GAP 顾名思义就是:DG不同步,当备库不能接受到一个或多个主库的归档日志文件时候,就发生了 GAP。
Lucifer三思而后行
2022/01/08
3.9K0
实战篇:Oracle DataGuard 出现 GAP 修复完整步骤
Data Guard搭建困境突围(一)(r10笔记第17天)
在Oracle 10g的中搭建Data Guard环境真是一个纠结,目前大体都是采用两种方式,一种是rman备份,一种是duplicate的方式,但是这两个地方不够让我满意,一来是rman备份数据量不小,需要先在本地生成备份,然后拷贝到备库去,这个搭建周期略长,另外一个就是推荐的方式duplicate,在10g中有些鸡肋的味道,本地备份,然后拷贝到备库,然后动用duplicate的方式,这样的方式还不如手工rman的方式同步来得顺心顺意,所以在10g中我是不怎么喜 欢duplicate方式。当然11
jeanron100
2018/03/19
6150
Data Guard搭建困境突围(一)(r10笔记第17天)
基于RMAN从活动数据库异机克隆(rman duplicate from active DB)
      Oracle 11g RMAN能够实现基于活动数据库进行异机克隆,从而省去需要先备份再ftp到辅助服务器的过程。这一切可以全部交给Oracle来搞定。在克隆期间,Oracle会读取Target DB的所有数据结构,无须人为的干预(不同的磁盘系统,文件路径与文件名要指定转换方式)。尽管如此,对于生产环境数据库在整个克隆期间性能会下降,其次在Target Server与Auxiliary Server中会产生较大的网络流量。如果这些可以接受的话,从活动数据库进行异机克隆是一个不错的选择。本文首先描述了克隆时不同的连接与克隆方式样本,最后演示了基于活动数据库的克隆。
Leshami
2018/08/13
1.7K0
基于RMAN从活动数据库异机克隆(rman duplicate from active DB)
Oracle数据库工程师手记:备份恢复双城记(二)
本文作者系大连健哥, POSTGRESQL、ORACLE 数据库资深从业人员、IT 技术的深度爱好者。相信科学改变人类、技术创造未来。个人主页:https://www.cnblogs.com/gaojian/,经其本人授权发布。
SQLplusDB
2022/08/19
4270
基于RMAN实现坏块介质恢复(blockrecover)
      对于物理损坏的数据块,我们可以通过RMAN块介质恢复(BLOCK MEDIA RECOVERY)功能来完成受损块的恢复,而不需要恢复整个数据库或所有文件来修复这些少量受损的数据块。恢复整个数据库或数据文件那不是大炮用来打蚊子,有点不值得!但前提条件是你得有一个可用的RMAN备份存在,因此,无论何时备份就是一切。本文演示了产生坏块即使用RMAN实现坏块恢复的全过程。
Leshami
2018/08/13
1.3K0
修复由于主库NOLOGGING操作引起的备库ORA-01578和ORA-26040错误
修复由于主库NOLOGGING操作引起的备库ORA-01578和ORA-26040错误
AiDBA宝典
2019/09/30
1.3K0
修复由于主库NOLOGGING操作引起的备库ORA-01578和ORA-26040错误
挽救DG中主库的nologging操作的块
众所周知我们的Data Guard数据同步是基于日志流的。所以在主库执行nologging操作是不被允许的。这也就是为什么我们需要在配置Data Guard阶段需要使用Force Logging。但是这也会带来很多问题(SQL执行效率),例如:当我们使用数据泵进行迁移时我们希望最少停机时间完成,这时候我们就可能会考虑到以最小日志导入的方式以加快导入速度,然后重新同步备库。
沃趣科技
2018/05/15
8230
挽救DG中主库的nologging操作的块
【DB笔试面试793】在Oracle中,如何修复由于主库NOLOGGING引起的备库ORA-01578和ORA-26040错误?
在Oracle中,如何修复由于主库NOLOGGING引起的备库ORA-01578和ORA-26040错误?
AiDBA宝典
2020/05/09
2.1K0
【DB笔试面试793】在Oracle中,如何修复由于主库NOLOGGING引起的备库ORA-01578和ORA-26040错误?
使用RMAN复制恢复开发库环境
最近为了不影响开发库的使用,打算复制创建一个备库,定时更新,防止开发库不能使用的情况下,可以临时使用备库,不影响进度。
bisal
2019/01/29
5250
Oracle ADG 备库停启维护流程及增量恢复
对于 Oracle Oracle ADG 备库重启时有些人都会有一个小问题,那就是没有及时应用日志没启动 MRP0 进程,导致主备库不同步。一般情况下主备库不同步的原因有:
JiekeXu之路
2022/03/31
2K0
Oracle ADG 备库停启维护流程及增量恢复
Oracle数据库恢复之resetlogs
首先要明确resetlogs操作非常危险的,也只有在进行不完全恢复开库时会使用到。
Alfred Zhao
2019/05/21
1.2K0
推荐阅读
相关推荐
案例|RAC 添加表空间误将数据文件放本地处理办法
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文