Oracle单机Rman笔记[3]---RMAN脱机备份及命令基础介绍
A、NOARCHIVELOG模式下的物理备份
1、完全关闭数据库
2、备份所有的数据库文件、控制文件、联机重做日志
3、重新启动数据库
B、RMAN的体系结构概述
重新构建控制文件:
将控制文件备份为一个二进制文件而不是跟踪文件,所有备份信息都将被保留
alter database backup controlfile to '/u01/backup/bkup_cfile.ctl'
C、RMAN的设置和配置
当数据库在ARCHIVELOG模式运行时,归档重做日志的复制位置可采用两种配置方法。实际上也可以同时采用此两种方式。
a\配置ARCHIVELOG目标目录
b\配置Oracle闪回恢复区(Flash Recovery Area,FRA) ARCHIVELOG目标目录
可使用LOG_ARCHIVE_DEST_n(n是1~10)参数定义最多10个不同的归档日志目标,这些目标可以是本地目录、网络目录或NAS。使用命令(执行此命令是需要保证数据库处于ARCHIVE模式):
alter system set log_archive_dest_1='location=c:\oracle\oraarc\beta1';
归档日志设置参数示例:
本地位置:log_archive_dest_1='location=d:\oracle\oraarc\robt mandatory'
网络位置:log_archive_dest_2='location=z:\oracle\oraarc\robt mandatory'
名为revover1的Oracel Net服务器:log_archive_dest_2='sevice=revocer1 mandatory'
要求归档的重做日志必须成功复制到至少两个不同位置:log_archive_min_succeed_dest=2
定义归档日志格式:log_archive_format="robt_%s_%t.arc" 闪回恢复区
略过
D、Oracle11g故障诊断基础架构
Oracle Automatic Diagnostic Repository(ADR)
如果$ORACLE_BASE的目录为/u01/oracle,数据库名为mydb,数据库实例名为mydb1,则ADR目录结构为:/u01/oracle/diag/rdbms/mydb/mydb1
(一般安装oracle时,默认数据库名叫orcl,实例名也叫orcl,ADR路径如下:/u01/app/oracle/diag/rdbms/orcl/orcl)
alert目录:该目录为XML格式的警报日志位置
cdump目录:数据库核心转储位置
trace目录:系统建立的跟踪文件,以及警报日志的文本副本
incident目录:包含多个子目录,每个子目录包含一个事件
查询ADR位置信息使用命令
select * from v$diag_info;
E、RMAN命令行
常用参数(使用rman help查询帮助)
target 字符串 定义要连接的目标数据库的用户名、密码、服务器名
catalog 字符串 定义恢复目录的用户名、口令、服务器名
nocatalog 不存在变量 表示会话不使用恢复目录(8i\9i默认)
cmdfile 字符串 表示要执行的命令文件脚本名
log 字符串 表示RMAN会话计入日志,日志文件名为该参数的变量
trace 字符串 表示跟踪RMAN会话,跟踪文件名为该参数的变量
append 不存在变量 表示应当归家的日志文件
debug 多种变量 表示以调试模式启动RMAN 示例:
RMAN>
target=system/manager@robt nocatcalog
target='sys/robert as sysdba@robt'nocatcalog
target=system/manager@robt catalog=system/manager@catalog log="RMAN.log"
target=system/manager@robt nocatcalog log "RMAN.log"
使用connect命令
如果发现没有连到正确的数据库,需要使用connect来连接
RMAN>
connect target sys/password@testdb;
connect catalog rcat_user/password@robdb;
F、为RMAN操作配置数据库
1、设置数据库用户,通常情况可以使用sys用户,也可以单独建立一个RMAN账户
CREAT USER backup_admin IDENTIFIED BY password default TABLESPACE users;
GRANT sysdba TO backup_admin;
2、设置数据库安全性
创建口令文件
file:口令文件名
password:sys用户的口令
entries:为其他特许的oracle用户帐户保留的条目数
SQL>ora file=PDWorcl.ora password=111111 entries=20
创建了口令文件后,配置数据库可以使用口令文件以便于通过OracleNet来执行远程备份操作
3、配置数据库使用口令文件
默认情况下,Oracle数据库不会配置口令文件,要配置可以修改init.ora(/u01/app/oracle/product/11.2.0/db_1/dbs)文件。编辑的参数为remote_login_passwordfile.
此参数可以设置为:
none: 默认值,在此情况下oracle会忽略口令文件,并且此时sysdba访问只能予以本地特许的登录
shared:多个数据库可以使用这个文件,此模式只能保存sys用户的口令
exclusive:说明只有一个数据库可以使用这个口令文件。此模式中口令文件可以包含于多个特许的账户。这个是推荐的模式,使用RMAN必须使用此模式 修改命令如下:
SQL>alter system set REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE scope=spfile;
G、配置RMAN默认设置
配置的几种不同设置:
1、用于RMAN操作的默认设备类型:如裁判或SBT(系统备份磁带设备)
2、执行自动的备份和还原操作时自动分配的信道数
3、配置将指定表空间排除在完全数据库备份操作之外的表空间排斥策略
4、自动备份时任何给定的备份片的最大空间和任何备份集的大小
5、备份优化的默认值为ON或OFF。备份优化会删除同一数据文件(例如与制度表和表空间关联的数据文件)和归档的重做日志的复制备份。
6、快照控制文件的默认文件名
7、控制文件自动备份默认为ON或OFF,控制文件备份的输出文件的默认格式,以及创建这些备份的默认设备。
8、辅助数据库文件的默认文件名
9、默认的保留策略,该策略用于确定哪些备份和副本符合删除条件
10、默认的加密值和关联的加密算法
11、需要压缩时,使用的默认压缩算法
12、归档重做日志的删除策略 RMAN的非默认配置存储视图V$RMAN_CONFIGURATION中,也可以在RMAN中使用show命令查看:
show default device type;
show maxsetsize;
show retention policy;
show all; 信道的默认名称取决于默认设备的类型:
磁盘:ORA_DISK_n 如:ORA_DISK_1
磁带:ORA_SBT_TAPE_n 如:ORA_SBT_TAPE_1
配置所有信道的默认值
configure channel device type
配置指定默认信道的默认值(n为阿拉伯数字)
configure channel n device type
配置清楚所有信道的默认值
configure channel device type clear
配置清除指定默认信道的默认值(n为阿拉伯数字)
configure channel n device type clear
创建自定义名称的信道(名称为d1)
allocate channel d1 device type disk
H、RMAN备份(仅支持基于spfile的备份,不支持基于init.ora配置的备份)
脱机备份(默认设置):
[:~]:rman target=backup_admin/password@orcl
RMAN>shutdown immediate
RMAN>startup mount
RMAN>backup as compassed backset database;
RMAN>alter database open 其中backup_admin为分配给RMAN备份用的用户。如果数据库无法start mount,可以在sqlplu里执行。备份后,默认数据备份在/u01/app/oracle/fast_recovery_area/ORCL/backupset/2018_02_14路径中。 监控RMAN操作:
select output from v$rman_output order by stamp;
脱机备份(自定义windows为例):
RMAN>shutdown immediate
RMAN>startup mount
RMAN>run
{
allocate channel c1 device type disk format '/backup/robt_%d_%U.bak';
allocate channel c2 device type disk format '/backup/robt_%d_%U.bak';
backup as compressed backupset database;
backup current controlfile;
release channel c1;
release channel c2;
}
问题:以下备份与上面的有什么不同?全备的情况下还需要单独备份controlfile吗?
{
configure controlfile autobackup on;
set controlfile autobackup format for device type disk to '/backup/CONTROLFILE.ORCL.%F'; allocate channel c1 device type disk format '/backup/robt_%d_%U.bak';
allocate channel c2 device type disk format '/backup/robt_%d_%U.bak'; backup as compressed backupset database;
backup current controlfile; release channel c1;
release channel c2;
}
I、BACKUP命令
压缩备份
默认值压缩
RMAN> show compression algorithm;
using target database control file instead of recovery catalog
RMAN configuration parameters for database with db_unique_name JUAN are:
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
设置为高压缩比
RMAN> configure compression algorithm 'HIGH';
using target database control file instead of recovery catalog
new RMAN configuration parameters:
CONFIGURE COMPRESSION ALGORITHM 'HIGH' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;
new RMAN configuration parameters are successfully stored
设置为其他压缩比
RMAN> configure compression algorithm 'MEDIUM';
RMAN> configure compression algorithm 'LOW';
RMAN> configure compression algorithm 'BASIC'; maxpiecesize和maxsetsize之间的关系区别
maxpiecesize限定单个备份片的大型,对备份的整体大小没影响.
另一方面maxsetsize可以限定备份的整体大小,如果备份的数据库产生的容量大小超过备份片的最大size则备份就会失败。
设置备份集大小不超过50m
backup maxsetsize=50m tag='backup test' 备份到特定设备
backup database device type disk;
backup database device type sbt; 修改备份集的保留策略
forever: 表示永久保存除非手工删除
backup database keep forever;
untiltime字符串:保留时间
backup database format 'C:\ORACLE\backup\%U' keep until time='sysdate+180' tag Keep_backup
以下示例将建立归档备份并将其分配到一个称为gold_copy的还原点:
backup database format 'C:\ORACLE\backup\%U' keep until time ='sysdate+180' restore point gold_copy;
J、set 命令
set echo 在消息日志中显示RMAN命令
set dbid 指定一个数据库的数据库标识符
set newname 用于执行表空间时间点恢复或数据库复制操作(简单先略过)
set maxcorrput for datafile 定义RMAN操作失败前允许的数据库块损坏的最大目录
例子:
如果要执行一个为每个备份片创建两个副本的备份操作,并且允许数据文件3的最大损坏数为10,则可以是使用:
run{
set maxcorrput for datafile 3 to 10;
set backup copies = 2;
backup database;
}
-----end-------
Oracle单机Rman笔记[3]---RMAN脱机备份及命令基础介绍的更多相关文章
- Oracle单机Rman笔记[4]---RMAN联机备份
备注:RMAN备份(仅支持基于spfile的备份,不支持基于init.ora配置的备份) 练习:开启ARCHIVELOG模式 \为归档的重做日志被指FRA和单独的归档日志目标 SQL>show ...
- Oracle单机Rman笔记[2]---RMAN基础介绍
A.DBA对于备份恢复的问题: 1.在数据库发生故障时,丢失多少数据是可承受的? 2.恢复数据库时,能够忍受的最长时间多少? 3.为了确保您的数据能够被恢复,愿意投入多少成本? 4.备份期间可以关闭系 ...
- Oracle单机Rman笔记[5]---脱机异地还原
脱机异地还原(安装一个原环境相同的linux,并安装数据库,注意不要配置安装实例) .检查/home/oracle下的.bashrc .bash_profile内容是否与原环境一致(具体看情况而定), ...
- Oracle单机Rman笔记[6]---记一次oracle脱机异地还原
系统情况介绍 正式环境:windows 2008 r2-32bit/ Oracle: Release 11.2.0.1.0 目标环境:windows 2012 Standard-64bit / Ora ...
- Oracle涂抹oracle学习笔记第8章RMAN说,我能备份
本次测试服务器为172.16.25.33 使用rman连接本地数据库 rman target / 在rman中执行启动与关闭的命令与sqlplus相同 在rman中执行sql语句 sql ‘需要执行的 ...
- Oracle数据库误删文件导致rman备份报错RMAN-06169解决办法
Oracle数据库误删文件导致rman备份报错RMAN-06169解决办法 可能是误删文件导致在使用rman备份时候出现以下提示 RMAN-06169: could not read file hea ...
- 【Oracle】rman中SBT_TYPE类型的备份如何删除
技阳的rman数据库出现删除rman备份失败,原因是出现SBT_TYPE的磁带备份. [BEGIN] 2018/8/13 13:48:42 RMAN> list backup; List of ...
- Hyper-V安装Oracle Linux6_4 Oracle db 12c并使用rman做异机恢复
本文记录在Windows Server 2012 R2上安装Oracle Enterprise Linux 6.4以及使用RMAN进行进行异机恢复的过程. Windows服务器增加Hyper-V功能 ...
- RMAN优缺点及RMAN备份及恢复步骤
RMAN优缺点及RMAN备份及恢复步骤--以下部分来自网络转摘,仅供参考和OS命令备份方式相比,使用RMAN的优点1 备份执行期间不需要人工干预,因此减少了误操作的机会:2 可以有效的将备份和恢复结合 ...
随机推荐
- Windows Server 2008安装IIS 7与配置
一.安装IIS 7 1.鼠标右键[我的电脑(Computer)]→[管理(Manager)] 2.选择[角色(Roles)],右键[添加角色(Add Roles)],弹出[添加角色向导(Add Rol ...
- PHP 异常处理 throw new exception
当异常被抛出时,其后的代码不会继续执行,PHP 会尝试查找匹配的 "catch" 代码块. 如果异常没有被捕获,而且又没用使用 set_exception_handler() 作相 ...
- Event and Delegate
文章著作权归作者所有.转载请联系作者,并在文中注明出处,给出原文链接. 本文原更新于作者的github博客,这里给出链接. 委托 委托的实质是一个类. // 委托定义 delegate ReturnT ...
- P4859 已经没有什么好害怕的了(dp+二项式反演)
P4859 已经没有什么好害怕的了 啥是二项式反演(转) 如果你看不太懂二项式反演(比如我) 那么只需要记住:对于某两个$g(i),f(i)$ ---------------------------- ...
- 【题解】Luogu P4436 [HNOI/AHOI2018]游戏
原题传送门 \(n^2\)过百万在HNOI/AHOI2018中真的成功了qwqwq 先将没门分格的地方连起来,枚举每一个块,看向左向右最多能走多远,最坏复杂度\(O(n^2)\),但出题人竟然没卡(建 ...
- Chrome VSCode常用快捷键
MAC下快捷键 Chrome快捷键: 关闭标签页:Cmd + w 新建标签页:Cmd + t 切换到指定标签页:Cmd + 数字 正向切换标签页: Ctrl + Tab 反向切换标签页: Ctrl + ...
- topcoder srm 630 div1 (2-SAT and SCC template)
problem1 link 首先计算任意两点的距离.然后枚举选出的集合中的两个点,判断其他点是否可以即可. problem2 link 假设字符串为$s$,长度为$n$.那么对于$SA$中的两个排名$ ...
- HDU 4417 Super Mario(主席树 区间不超过k的个数)题解
题意:问区间内不超过k的个数 思路:显然主席树,把所有的值离散化一下,然后主席树求一下小于等于k有几个就行.注意,他给你的k不一定包含在数组里,所以问题中的询问一起离散化. 代码: #include& ...
- flask-login模块
flask-login为flask提供了用户会话管理.他处理了日常的登入,登出并且长时间记住用户的会话. 1.在会话中存储当前活跃的用户ID,让你能够自由地登入和登出. 2.让你限制登入或登出用户可以 ...
- 【python】 迭代器、生成器、列表推导式
一.可迭代对象.迭代器 1.可以被for循环的数据类型(可迭代对象): 字符串(str).列表(list).字典(dict).元祖(tuple).range() 2.迭代器 2.1 将可迭代对象==& ...