记一次异机rman还原后的操作

当时从主库通过rman备份到目前测试库还原之后,由于备份是在备库备份的,所以数据库还原后状态为readonly,standby_file_management参数为auto。
首先需要通过alter database clear logfile group 日志组;让数据库在磁盘创建日志文件。
出现问题1、重做日志物理文件不存在,当时日志组4状态为current,无法在readonly模式下进行更改操作。问题2、参数文件的undo表空间与控制文件的不对应

SQL> alter database rename file ‘/redo1/redo/redo04a.log‘ to ‘/u3/redo1/redo/redo04a.log‘;
alter database rename file ‘/redo1/redo/redo04a.log‘ to ‘/u3/redo1/redo/redo04a.log‘
*
ERROR at line 1:
ORA-01511: error in renaming log/data files
ORA-01621: cannot rename member of current log if database is open
ORA-00312: online log 4 thread 1: ‘/redo1/redo/redo04a.log‘
ORA-00312: online log 4 thread 1: ‘/redo2/redo/redo04b.log‘

SQL> alter database clear logfile group 4;
alter database clear logfile group 4
*
ERROR at line 1:
ORA-00349: failure obtaining block size for ‘/redo1/redo/redo04a.log‘
ORA-27041: unable to open file
Linux-x86_64 Error: 2: No such file or directory
Additional information: 9

SQL> alter database drop logfile group 4; -----就算成功了,不会删除磁盘上的文件,需手动删除
alter database drop logfile group 4
*
ERROR at line 1:
ORA-01623: log 4 is current log for instance orcl (thread 1) - cannot drop
ORA-00312: online log 4 thread 1: ‘/redo1/redo/redo04a.log‘
ORA-00312: online log 4 thread 1: ‘/redo2/redo/redo04b.log‘

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

Total System Global Area 4.2758E+10 bytes
Fixed Size 2262656 bytes
Variable Size 4966058368 bytes
Database Buffers 3.7447E+10 bytes
Redo Buffers 342855680 bytes
Database mounted.
SQL> alter database rename file ‘/redo1/redo/redo04a.log‘ to ‘/u3/redo1/redo/redo04a.log‘;
alter database rename file ‘/redo1/redo/redo04a.log‘ to ‘/u3/redo1/redo/redo04a.log‘
*
ERROR at line 1:
ORA-01511: error in renaming log/data files
ORA-01275: Operation RENAME is not allowed if standby file management is
automatic.

SQL> show parameter standby;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
standby_archive_dest string ?/dbs/arch
standby_file_management string AUTO
SQL> alter system standby_file_management=‘manual‘;
alter system standby_file_management=‘manual‘
*
ERROR at line 1:
ORA-02065: illegal option for ALTER SYSTEM

SQL> alter system set standby_file_management=‘manual‘ scope=both;

System altered.

SQL> alter database rename file ‘/redo1/redo/redo04a.log‘ to ‘/u3/redo1/redo/redo04a.log‘;

Database altered.

SQL> alter database rename file ‘/redo2/redo/redo04b.log‘ to ‘/u3/redo2/redo/redo04b.log‘;

Database altered.

SQL> alter database clear logfile group 4;     ----让数据库在磁盘创建日志文件

Database altered.

SQL> alter database open;

Database altered.

SQL> select open_mode from v$database;

OPEN_MODE
--------------------
READ ONLY

SQL> desc v$log;
Name Null? Type
----------------------------------------- -------- ----------------------------
GROUP# NUMBER
THREAD# NUMBER
SEQUENCE# NUMBER
BYTES NUMBER
BLOCKSIZE NUMBER
MEMBERS NUMBER
ARCHIVED VARCHAR2(3)
STATUS VARCHAR2(16)
FIRST_CHANGE# NUMBER
FIRST_TIME DATE
NEXT_CHANGE# NUMBER
NEXT_TIME DATE

SQL> select GROUP# ,STATUS,MEMBERS from v$log;

GROUP# STATUS MEMBERS
---------- ---------------- ----------
1 UNUSED 2
2 UNUSED 2
3 UNUSED 2
4 CURRENT 2
5 UNUSED 2
6 UNUSED 2
7 UNUSED 2
8 UNUSED 2

8 rows selected.

SQL> alter system switch logfile;
alter system switch logfile
*
ERROR at line 1:
ORA-16000: database open for read-only access

SQL> alter database recover managed standby database finish force;
alter database recover managed standby database finish force
*
ERROR at line 1:
ORA-00283: recovery session canceled due to errors
ORA-16157: media recovery not allowed following successful FINISH recovery

SQL> alter database commit to switchover to primary;

Database altered.

SQL> select open_mode from v$database;

OPEN_MODE
--------------------
MOUNTED

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-30012: undo tablespace ‘UNDOTBS1‘ does not exist or of wrong type
Process ID: 20472
Session ID: 769 Serial number: 3

SQL> create undo tablespace undotbs2 datafile‘/u3/undotbs2.dbf‘ size 10g autoextend off;
create undo tablespace undotbs2 datafile‘/u3/undotbs2.dbf‘ size 10g autoextend off
*
ERROR at line 1:
ORA-01109: database not open

SQL> alter tablespace UNDOTBS1 offline;
alter tablespace UNDOTBS1 offline
*
ERROR at line 1:
ORA-01109: database not open

SQL> create pfile=‘/u3/pfile.ora‘ from spfile;

File created.

SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[[email protected] ~]$ vi /u3/pfile.ora -----将undo_tablespace参数删除
[[email protected] ~]$ sqlplus "/as sysdba"

SQL*Plus: Release 11.2.0.4.0 Production on Wed Mar 27 11:57:12 2019

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, OLAP, Data Mining and Real Application Testing options

SQL> shutdown immediate;
ORA-01109: database not open

Database dismounted.
ORACLE instance shut down.
SQL> startup nomount pfile=‘/u3/pfile.ora‘;
ORACLE instance started.

Total System Global Area 4.2758E+10 bytes
Fixed Size 2262656 bytes
Variable Size 5234493824 bytes
Database Buffers 3.7178E+10 bytes
Redo Buffers 342855680 bytes

SQL> alter database mount;

Database altered.

SQL> alter database open;

Database altered.

SQL> show parameter undo;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string UNDOTBS10 ----此为控制文件中记录的undo_tablespace.
SQL> select open_mode from v$database;

OPEN_MODE
--------------------
READ WRITE

SQL> create spfile from pfile=‘/u3/pfile.ora‘;

File created.

原文地址:https://www.cnblogs.com/yaoyangding/p/12046915.html

时间: 2024-08-01 13:04:53

记一次异机rman还原后的操作的相关文章

异机rman数据不完全恢复

源库:Red Hat Enterprise Linux Server release 5.5 (Tikanga) 64bit +  ORACLE  V11.2.0.4.0 + DG + RAC 目标库:Red Hat Enterprise Linux Server release 5.8 (Catthage) 64bit + ORACLE  V11.2.0.4.0 1.在目标库,安装好相同版本的oracle数据库,创建同名实例orcl: 数据库实例默认安装路径为: /u01/app/oracle

Linux平台下RMAN异机恢复总结

下面总结.整理一下RMAN异机恢复这方面的知识点,这篇笔记在个人笔记里面躺了几年了,直到最近偶然被翻看到,遂整理.总结一下.如下所示,个人将整个RMAN异机恢复分为准备工作和操作步骤两大部分.当然,准备工作里面,有些步骤不是必须的,可以跳过或忽略的.这个取决于你的实际环境和你对RMAN异机恢复的熟悉程度. 准备工作 1:了解一下目标服务器与源服务器的操作系统版本信息 需要对比一下目标服务器与源服务器的操作系统版本是否一致,具体来说,操作系统版本信息.内核信息(例如Oracle Linux是否使用

RMAN异机还原遭遇ORA-19698错误案例

实验环境: 操作系统    :Oracle Linux Server release 5.7 64 bit 数据库版本:Oracle Database 10g Release 10.2.0.4.0 - 64bit Production 案例说明: 为了测试.验证备份的有效性,需要将服务器A上的数据库的备份集还原到服务器B上,服务器B上已经创建了相同名称的ORACLE_SID和DB Name,对应数据文件目录环境完全一致 Step 1: startup nomount Step 2:  resto

如何使用 RMAN 异机恢复部分表空间

在oracle 数据库的日常维护和使用期间难免会遇到误删数据(drop,delete, truncate)当我们使用常规手段(flashback query ,flashback drop)也无法恢复数据时,我们可以使用最近的逻辑备份,在异机使用dmp 来恢复相应的表,但是如果没有这些逻辑备份,但是有一个最近的rman 全备,那么我们就可以利用这个备份来恢复被误删的表空间,从而实现数据的恢复,这里我以NBU 的备份环境为例简单描述下如何来回复部分 表空间: -------在nomount 状态

Oracle 单实例 迁移到 RAC 实例 -- 使用RMAN 异机恢复

Oracle 官网有关单实例迁移到RAC的一个步骤说明: How to Convert 10g Single-Instance database to 10g RAC using Manual Conversion procedure [ID 747457.1] http://blog.csdn.net/tianlesoftware/archive/2010/12/09/6065903.aspx   RMAN 备份异机恢复 并创建新DBID http://blog.csdn.net/tianle

RMAN异机恢复步骤及故障处理

一.测试机安装OS+Oracle Software,包括配置oracle用户组和环境变量(略) 二.开始异机恢复 1. 复制源库最新备份集.初始化参数.密码文件到测试机 [[email protected] backupsets]$ scp *20141012* 192.168.1.213:/tmp The authenticity of host '192.168.1.213 (192.168.1.213)' can't be established. RSA key fingerprint

rman备份恢复到异机报ORA-01110 ORA-01180错误

[[email protected] ORACLE]$ rman target / Recovery Manager: Release 10.2.0.5.0 - Production on Thu Jul 31 13:51:40 2014 Copyright (c) 1982, 2007, Oracle.  All rights reserved. connected to target database (not started) RMAN> set dbid 1619708557 execu

Oracle 11G RMAN 单实例异机恢复

数据备份当然是为数据恢复准备,新环境的oracle一直在进行备份,但都没有测试验证备份的有效性,所以本次测试的重要性不言而喻了!以下为WIN平台下RMAN异机恢复实例. 源库 目标库 操作系统 WIN SVR 2008 R2 WIN SVR 2008 R2 主机名 Ora ORATEST IP 192.168.18.20 192.168.18.25 数据库版本 11.2.0.1.0 11.2.0.1.0 存储方式 单实例 单实例 ORACLE_HOME D:\app\Administrator\

基于RMAN的异机数据库克隆(rman duplicate)

对于基于生产环境下的数据库的版本升级或者测试新的应用程序的性能及其影响,备份恢复等等,我们可以采取从生产环境以克隆的方式将其克隆到本地而不影响生产数据库的正常使用.实现这个功能我们可以借助rman duplicate方式以及其简单的方式来完成.duplicate方式不同于OS级别的备份,它会为辅助数据库(克隆出来的数据库)生成一个新的dbid,而能够同时将目标数据库(原数据库)与辅助数据库注册到同一个恢复目录.本文描述了使用rman duplicate实现异机数据库克隆. 1.RMAN支持的du