02-oracle11g rac RMAN备份恢复至单机(未验证)
确定备份路径,并赋予属组
mkdir /rmanbackup
chown oracle:oinsatll /rmanbackup
进入rman进行全备
rman target /
run
{
allocate channel d1 type disk;
backup incremental level 0 format '/rmanbackup/orcl_full_%U' database include current controlfile;
delete noprompt obsolete;
sql 'alter system archive log current';
backup format '/rmanbackup/orcl_arch_full_%U' archivelog all not backed up delete input;
crosscheck backup;
delete noprompt expired backup;
release channel d1;
}
将生成的备份传到单机环境
cd /rmanbackup
scp * oracle@192.168.100.199:/rmanbackup/ (单机上已备好此路径)
创建pfile文件并修改传送到单机环境对应目录下
SQL> create pfile='/rmanbackup/initorcl.ora' from spfile='/u02/app/oracle/product/11.2.0/db_home/dbs/spfileorcl1.ora.bak';
vi initorcl.ora
*.audit_file_dest='/u01/app/oracle/admin/orcl/adump'
*.audit_trail='NONE'
*.compatible='11.2.0.4.0'
*.control_files='/u01/app/oracle/oradata/orcl/control01.dbf'
*.db_block_size=8192
*.db_create_file_dest='/u01/app/oracle/oradata/'
*.db_create_online_log_dest_1='/u01/app/oracle/oradata/'
*.db_domain=''
*.db_files=2000
*.db_name='orcl'
*.deferred_segment_creation=FALSE
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.enable_ddl_logging=TRUE
*.event='28401 TRACE NAME CONTEXT FOREVER, LEVEL 1'
*.log_archive_dest_1='LOCATION=/arch'
*.log_archive_format='%t_%s_%r.dbf'
*.max_dump_file_size='25m'
*.open_cursors=300
*.pga_aggregate_target=288358400
*.processes=1500
*.remote_login_passwordfile='exclusive'
*.sec_case_sensitive_logon=FALSE
*.sessions=1655
*.sga_max_size=1100m
*.sga_target=1100m
scp initorcl.ora oracle@192.168.100.199://u01/app/oracle/product/11.2.0/dbhome_1/dbs/
单机环境上
用传过来的pfile生成spfile文件
SQL> create spfile from pfile;
SQL> startup nomount;
恢复控制文件
RMAN> restore controlfile from '/rmanbackup/orcl_full_19ra5tlf_1_1';
RMAN> alter database mount;
检查并标记控制文件中存在,但是实际已经不存在的备份文件。
RMAN>crosscheck backup;
清理控制文件中存在,但是实际已经不存在的备份文件。
RMAN>delete noprompt expired backup;
将备份注册到rman
RMAN> catalog backuppiece '/rmanbackup/orcl_full_19ra5tlf_1_1';
RMAN> catalog backuppiece '/rmanbackup/orcl_full_18ra5tih_1_1';
RMAN> catalog backuppiece '/rmanbackup/orcl_arch_full_1ara5tnb_1_1';
现在我们确定的点到媒介恢复应该恢复数据库上运行。
RMAN> list backup of archivelog all;
根据备份信息,恢复数据文件及数据库
RMAN> RUN {
set until sequence 84 thread 1;
SET NEWNAME FOR DATAFILE 1 to '/u01/app/oracle/oradata/orcl/system.dbf';
SET NEWNAME FOR DATAFILE 2 to '/u01/app/oracle/oradata/orcl/sysaux.dbf';
SET NEWNAME FOR DATAFILE 3 to '/u01/app/oracle/oradata/orcl/undotbs1.dbf';
SET NEWNAME FOR DATAFILE 4 to '/u01/app/oracle/oradata/orcl/users.dbf';
SET NEWNAME FOR DATAFILE 5 to '/u01/app/oracle/oradata/orcl/undotbs2.dbf';
SET NEWNAME FOR DATAFILE 6 to '/u01/app/oracle/oradata/orcl/huyuwu.dbf';
SET NEWNAME FOR DATAFILE 7 to '/u01/app/oracle/oradata/orcl/syd.dbf';
SET NEWNAME FOR DATAFILE 8 to '/u01/app/oracle/oradata/orcl/syd2.dbf';
SET NEWNAME FOR DATAFILE 9 to '/u01/app/oracle/oradata/orcl/syd1.dbf';
SET NEWNAME FOR DATAFILE 10 to '/u01/app/oracle/oradata/orcl/syd3.dbf';
SET NEWNAME FOR DATAFILE 11 to '/u01/app/oracle/oradata/orcl/syd4.dbf';
RESTORE DATABASE;
SWITCH DATAFILE ALL;
recover database;
}
查看日志文件
SQL> select member from v$logfile;
修改日志文件
alter database rename file '+DATA/orcl/onlinelog/group_redo06a.log' to '/u01/app/oracle/oradata/orcl/redo6_1.log';
alter database rename file '+FRA/orcl/onlinelog/group_redo06b.log' to '/u01/app/oracle/oradata/orcl/redo6_2.log';
alter database rename file '+DATA/orcl/onlinelog/redo0001a.log' to '/u01/app/oracle/oradata/orcl/redo1_1.log';
alter database rename file '+FRA/orcl/onlinelog/redo0001b.log' to '/u01/app/oracle/oradata/orcl/redo1_2.log';
alter database rename file '+DATA/orcl/onlinelog/group_redo02a.log' to '/u01/app/oracle/oradata/orcl/redo2_1.log';
alter database rename file '+FRA/orcl/onlinelog/group_redo02b.log' to '/u01/app/oracle/oradata/orcl/redo2_2.log';
alter database rename file '+DATA/orcl/onlinelog/redo0003a.log' to '/u01/app/oracle/oradata/orcl/redo3_1.log';
alter database rename file '+FRA/orcl/onlinelog/redo0003b.log' to '/u01/app/oracle/oradata/orcl/redo3_2.log';
alter database rename file '+DATA/orcl/onlinelog/group_redo04a.log' to '/u01/app/oracle/oradata/orcl/redo4_1.log';
alter database rename file '+FRA/orcl/onlinelog/group_redo04b.log' to '/u01/app/oracle/oradata/orcl/redo4_2.log';
alter database rename file '+DATA/orcl/onlinelog/redo0005a.log' to '/u01/app/oracle/oradata/orcl/redo5_1.log';
alter database rename file '+FRA/orcl/onlinelog/redo0005b.log' to '/u01/app/oracle/oradata/orcl/redo5_2.log';
alter database rename file '+FRA/orcl/onlinelog/group_redo07a.log' to '/u01/app/oracle/oradata/orcl/redo7_1.log';
alter database rename file '+DATA/orcl/onlinelog/group_redo07b.log' to '/u01/app/oracle/oradata/orcl/redo7_2.log';
alter database rename file '+DATA/orcl/onlinelog/redo0008a.log' to '/u01/app/oracle/oradata/orcl/redo8_1.log';
alter database rename file '+FRA/orcl/onlinelog/redo0008b.log' to '/u01/app/oracle/oradata/orcl/redo8_2.log';
打开数据库
alter database open resetlogs;
查看redo log 信息,并删除无效日志组
查看redo log 信息,并删除无效日志组(节点2日志)
select THREAD#, STATUS, ENABLED from v$thread;
THREAD# STATUS ENABLED
---------- ------ --------
1 OPEN PUBLIC
2 CLOSED PUBLIC
select group# from v$log where THREAD#=2;
GROUP#
----------
3
4
6
8
SQL> alter database disable thread 2;
SQL> alter database drop logfile group 3;
SQL> alter database drop logfile group 4;
SQL> alter database drop logfile group 6;
SQL> alter database drop logfile group 8;
SQL> select THREAD#, STATUS, ENABLED from v$thread;
THREAD# STATUS ENABLED
---------- ------ --------
1 OPEN PUBLIC
查看undo表空间,并删除节点2(在此不使用)的undo表空间
SQL> sho parameter undo;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string UNDOTBS1
SQL> select tablespace_name from dba_tablespaces where contents='UNDO';
TABLESPACE_NAME
------------------------------
UNDOTBS1
UNDOTBS2
SQL> drop tablespace UNDOTBS2 including contents and datafiles;
SQL> select name from v$tempfile;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/ORCL/datafile/o1_mf_temp_cr602c5z_.tmp
SQL> select tablespace_name from dba_tablespaces where contents='TEMPORARY';
TABLESPACE_NAME
------------------------------
TEMP
SQL> create temporary tablespace TEMP1 tempfile '/u01/app/oracle/oradata/orcl/temp01.dbf' size 50M;
SQL> alter database default temporary tablespace TEMP1;
SQL> drop tablespace TEMP including contents and datafiles;
查看监听状态并配置,编辑tnsname.ora文件。(mos文档没有)
通过以下命令创建密码文件,注意密码文件的位置(mos文档没有)
[oracle@orc1 dbs]$ orapwd file=orapwracdb1 password=oracle entries=30
02-oracle11g rac RMAN备份恢复至单机(未验证)的更多相关文章
- RAC RMAN备份
这篇主要介绍的是RAC 环境下的RMAN 备份. 关于Oracle 备份与恢复的一些理论知识参考我的Blog: Oracle 备份 与 恢复 概述 http://blog.csdn.net ...
- rman备份恢复命令之switch
rman备份恢复命令之switch 一 switch 命令 1 switch命令用途 更新数据文件名为rman下镜像拷贝时指定的数据文件名 更新数据文件名为 set newname 命令指定的名字. ...
- rman备份/恢复
全备脚本 cat rman_full.sh #!/bin/bash export ORACLE_BASE=/opt/oracle export ORACLE_HOME=$ORACLE_BASE/pro ...
- RAC RMAN 备份 RMAN-03009 ORA-19504 ORA-27040 RMAN-06012 channel c3 not allocated 错误分析
备份Shell 脚本如下: ######################################################################## ## RAC_hot_da ...
- Oracle之RMAN备份恢复1-基础篇
1,rman的作用与体系架构 1.1 什么是rman rman(recovery manager)是oracle8i以后dba的一重要工具一般位于$oracle_home/bin目录下,主要用来备份, ...
- Oracle RMAN备份恢复指导书
目 录 1 目的与范围... 1 2 术语和定义... 1 3 角色和职责... 2 4 使用RMAN备份数据库... 2 4.1.1 检查数据库模式... 2 4.1.2 连接到target数据库. ...
- 非系统数据文件损坏,rman备份恢复
实验前提:已经做好备份. SQL> col file_name for a50select file_id,file_name from dba_data_files; FILE_ID FILE ...
- Oracle Rman备份恢复和管理
参考资料: Oracle之Rman入门指南 一步一步学Rman Rman简介 Rman-Recover manager恢复管理工具. Oracle集成了很多环境的一个数据库备份和恢复的工具. Rman ...
- ORACLE11G 将dataguard的rman备份恢复到測试环境的单机oracle中的具体过程
. 也就是说此时数据库仅仅能进行不全然恢复了,在打开数据库时得使用resetlogs打开. recover database until scn 11412370952; RMAN> recov ...
- ORACLE11g 没有控制文件如何通过rman备份恢复数据的详细实战过程
1.副总裁需要裸恢复的严峻现实 集团总部的信息部负责人给我打电话说为了找一年前的记录,所以需要对一年前2015年5月1日的数据进行恢复.而2016年初因为进行迁移,所以有些文件可能丢失,手上只有rma ...
随机推荐
- 发布一个Visual Studio 2022 插件,可以自动完成构造函数依赖注入代码
赖注入(DI)在开发中既是常见的也是必需的技术.它帮助我们优化了代码结构,使得应用更加灵活.易于扩展,同时也降低了各个模块之间的耦合度,更容易进行单元测试,提高了编码效率和质量.不过,手动注入依赖项也 ...
- 微型神经网络库MicroGrad-基于标量自动微分的类pytorch接口的深度学习框架
一.MicroGrad MicroGrad是大牛Andrej Karpathy写的一个非常轻量级别的神经网络库(框架),其基本构成为一个90行python代码的标量反向传播(自动微分)引擎,以及在此基 ...
- Unparseable date: "2019-03-27"
Unparseable date: "2 public static void main(String[] args) { try { String dateStr="2019-0 ...
- 如何在 Windows10 Professional 服务器上搭建自己的 Git 服务器。
一.简介 以前,在别家的公司,一般早就把源代码管理工具搭建好了,很少有机会自己搭建一套.最近,公司也许要把现在不少的源码进行管理,于是我打算自己搭建源代码管理服务器.说起源代码管理,当然有很多中解决方 ...
- 使用npm下载vue
一.安装npm 1. 安装node.js npm(Node Package Manager): node.js下的包管理器 前往node.js官网下载并安装工具,nodejs安装完毕后自动会安装npm ...
- Django:数据库驱动安装
import pymysql pymysql.install_as_MySQLdb() 常见MySQL驱动介绍: MySQL-python:也就是MySQLdb.是对C语言操作MySQL数据库的一个简 ...
- 洛谷 P1122 最大子树和 题解
一道入门的树形DP. 首先我们对于数据进行有序化处理,这便于我们利用数据结构特点(可排序性)来发觉数据性质(有序.单调.子问题等等性质),以便于后续的转化.推理和处理.有序化可以"转化和创造 ...
- 行行AI人才直播第15期:【AIGC科技公司法律顾问】Amber《AIGC的法律挑战》
近年来,AIGC技术的迅速进步为社会经济发展带来了新的机遇.各行各业都开始关注AIGC相关技术在商业落地中的应用,AIGC相关的创业及项目如雨后春笋般涌现.然而,AIGC的广泛应用也带来了一系列的法律 ...
- Hutool:一行代码搞定数据脱敏
1. 什么是数据脱敏 1.1 数据脱敏的定义 数据脱敏百度百科中是这样定义的: 数据脱敏,指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护.这样就可以在开发.测试和其它非生产环境 ...
- nflsoj 选数1 2 3
5711 取数-1 状态表示:1维 集合:前 \(i\) 个数里面所有的选法和 属性:所有的选法和的最大值 状态计算:选或不选 选:\(f(i-1)+a_i\) 不选:\(f(i-1)\) #incl ...