解释归档和非归档模式之间的不同和它们各自的优缺点?
答:归档模式是指可以备份所有的数据库transactions并恢复到任意一个时间点。
非归档模式则相反,不能恢复到任意一个时间点。
但是非归档模式可以带来数据库性能上的少许提高。
记忆方式:归档模式>热备份>恢复任意时间点>性能少许下降
非归档模式>冷备份>恢复完全备份>性能少许提高
- 1.select name,log_mode from v$database;
- NAME LOG_MODE
- ------------------ ------------------------
- QUERY NOARCHIVELOG
- 2.使用ARCHIVE LOG LIST 命令
- Database log mode No Archive Mode
- Automatic archival Disabled
- Archive destination /data/oracle/product/10.2.0/db_1//dbs/arch
- Oldest online log sequence 739
- Current log sequence 741
- 1)SQL>SHUTDOWN NORMAL/IMMEDIATE; 先down下数据
- 2)SQL>START MOUNT; 启动数据库实例到mount状态,但不要打开
- 3)SQL>ALTER DATABASE ARCHIVELOG; 设置数据库为归档日志模式
- 4)SQL>ALTER DATABASE OPEN; 打开数据库
- 5)SQL>archive log list; 确认数据库现在处于归档日志模式
- 6)SQL>archive log all; 将这个时间点的redo logs归档
- 1)SQL>SHUTDOWN NORMAL/IMMEDIATE; 先down下数据
- 2)SQL>START MOUNT; 启动数据库实例到mount状态,但不要打开
- 3)SQL>ALTER DATABASE ARCHIVELOG; 设置数据库为归档日志模式
- 4)SQL>ALTER DATABASE OPEN; 打开数据库
- 5)SQL>archive log list; 确认数据库现在处于归档日志模式
- 6)SQL>archive log all; 将这个时间点的redo logs归档
- SQL>alter tablespace users begin bacup;
- SQL>alter tablespace users begin bacup;
- 1)SQL>SHUTDOWN NORMAL/IMMEDIATE;
- 2)SQL>START MOUNT;
- 3)SQL>ALTER DATABASE NOARCHIVELOG;
- 4)SQL>ALTER DATABASE OPEN;
- 1)SQL>SHUTDOWN NORMAL/IMMEDIATE;
- 2)SQL>START MOUNT;
- 3)SQL>ALTER DATABASE NOARCHIVELOG;
- 4)SQL>ALTER DATABASE OPEN;
根据客户要求,需要将归档日志存放在ASM上。因此需要在ASM建归档路径
ASMCMD> mkdir arch
ASMCMD> cd arch
ASMCMD> pwd +data1/kdcs/arch
修改归档路径参数
SQL> alter system set log_archive_dest_1='location=+data1/kdcs/arch' scope=spfile sid='*';
System altered.
关闭数据库,全部节点都要关闭
[grid@zhcs-db1 ~]$ srvctl stop database -d kdcs
检查数据库关闭后状态
[grid@zhcs-db1 ~]$ crsctl stat res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.DATA1.dg ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.LISTENER.lsnr ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.OCR_DISK.dg ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.asm ONLINE ONLINE zhcs-db1 Started ONLINE ONLINE zhcs-db2 Started ora.gsd OFFLINE OFFLINE zhcs-db1 OFFLINE OFFLINE zhcs-db2 ora.net1.network ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.ons ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.registry.acfs ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE zhcs-db1 ora.cvu 1 OFFLINE OFFLINE ora.kdcs.db 1 OFFLINE OFFLINE Instance Shutdown 2 OFFLINE OFFLINE Instance Shutdown ora.kdcs.ser_scanip.svc 1 OFFLINE OFFLINE 2 OFFLINE OFFLINE ora.oc4j 1 ONLINE ONLINE zhcs-db2 ora.scan1.vip 1 ONLINE ONLINE zhcs-db1 ora.zhcs-db1.vip 1 ONLINE ONLINE zhcs-db1 ora.zhcs-db2.vip 1 ONLINE ONLINE zhcs-db2
将一个节点数据库启动到mount状态
[grid@zhcs-db1 ~]$ srvctl start instance -d kdcs -i kdcs1 -o mount
修改数据库的归档模式并启动数据库
SQL> alter database archivelog;
Database altered.
SQL> alter database open;
Database altered.
检查状态 SQL> archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination +DATA1/kdcs/arch Oldest online log sequence 86 Next log sequence to archive 87 Current log sequence 87 SQL>
启动2节点数据库
[grid@zhcs-db1 ~]$ srvctl start instance -d kdcs -i kdcs2
检查集群状态
[grid@zhcs-db1 ~]$ crsctl stat res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.DATA1.dg ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.LISTENER.lsnr ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.OCR_DISK.dg ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.asm ONLINE ONLINE zhcs-db1 Started ONLINE ONLINE zhcs-db2 Started ora.gsd OFFLINE OFFLINE zhcs-db1 OFFLINE OFFLINE zhcs-db2 ora.net1.network ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.ons ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 ora.registry.acfs ONLINE ONLINE zhcs-db1 ONLINE ONLINE zhcs-db2 -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE zhcs-db1 ora.cvu 1 OFFLINE OFFLINE ora.kdcs.db 1 ONLINE ONLINE zhcs-db1 Open 2 ONLINE ONLINE zhcs-db2 Open ora.kdcs.ser_scanip.svc 1 ONLINE ONLINE zhcs-db1 2 ONLINE ONLINE zhcs-db2 ora.oc4j 1 ONLINE ONLINE zhcs-db2 ora.scan1.vip 1 ONLINE ONLINE zhcs-db1 ora.zhcs-db1.vip 1 ONLINE ONLINE zhcs-db1 ora.zhcs-db2.vip 1 ONLINE ONLINE zhcs-db2 [grid@zhcs-db1 ~]$
RMAN备份及恢复归档日志的语法一.备份所有归档日志文件 RMAN> backup archivelog all delete input; 二: restore archivelog 的各种选项 1.恢复全部归档日志文件 RMAN> restore archivelog all; 2.只恢复5到8这四个归档日志文件 RMAN> restore archivelog from logseq 5 until logseq 8; 3.恢复从第5个归档日志起 RMAN> restore archivelog from logseq 5; 4.恢复7天内的归档日志 RMAN> restore archivelog from time 'sysdate-7'; 5. sequence between 写法 RMAN> restore archivelog sequence between 1 and 3; 6.恢复到哪个日志文件为止 RMAN> restore archivelog until logseq 3; 7.从第五个日志开始恢复 RMAN> restore archivelog low logseq 5; 8.到第5个日志为止 RMAN> restore archivelog high logseq 5; 三:如果想改变恢复到另外路径下 则可用下面语句 set archivelog destination to 'd:\backup';
RMAN> run 2> {allocate channel ci type disk; 3> set archivelog destination to 'd:\backup'; 4> restore archivelog all; 5> release channel ci; 6> }
【MOS】配置RMAN清除已应用到备库的归档日志 (文档 ID 1577382.1)
文档内容
目标 解决方案 参考适用于: Oracle Database - Enterprise Edition - 版本 10.2.0.1 到 10.2.0.5 [发行版 10.2] 本文档所含信息适用于所有平台 目标
我们需要利用RMAN自动从FRA清除已经应用到备库的归档日志。
1) Bug 6216036:
在10g中,使用CONFIGURE命令配置的归档日志删除策略 仅适用于自动删除闪回恢复区的归档日志。 其他的删除机制,如DELETE ARCHIVELOG或DELETE INPUT不遵守这个配置。
2)APPLIED ON STANDBY - 启用闪回恢复区删除已应用在属性为mandatory的备库的归档日志。
更多信息请查看 Oracle Data Guard Concepts and Administration
http://docs.oracle.com/cd/B19306_01/backup.102/b14194/rcmsynta015.htm#sthref289
在11g此限制已解除。
解决方案
DataGuard的配置中,当数据库满足下列条件时,FRA下的归档日志将被自动清除,。如果您需要在主库清除,将其设置在主库。
1) 11g之前,如果不使用mandatory ARCHIVELOG目标,数据库(主库和备库)必须更改下面的参数并重新启动:
2) 在RMAN中配置下列参数(主库和备库):
RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;
11g: 从11g 开始,我们对归档日志删除策略的配置进行了增强,包含了 APPLIED ON [ALL] STANDBY [BACKED UP n TIMES TO DEVICE TYPE ] 选项。该选项确认归档日志已经被应用,并且在主库进行过备份后才可以被清除。
3) 归档日志必须已应用到备库。运行下面的查询列出所有已应用到备库的归档日志:
4) FRA有空间压力
当归档日志从FRA自动删除,你会看到数据库的alert.log报出以下信息:
参考 NOTE:331924.1 - RMAN backups in Max Performance/Max Availability Data Guard Environment BUG:6216036 - RMAN+DG ARCHIVELOG DELETION POLICY APPLIED ON STANDBY NOT RESPECTED NOTE:740322.1 - RMAN Archived Redo Logs Are Deleted Before Being Applied at Standby Database
ORA-00257 删除归档日志
遇到ORA-00257的错误,需要做的就是删除归档日志,释放空间。需要强调的是:如果数据库拥有物理备份机制,请先备份归档日志,再做删除操作。以下是无备份机制的步骤处理:
1、 在操作系统bash下,声明操作数据库实例:
orcl1:/home/oracle@db1>export ORACLE_SID=orcl1
2、 运行RMAN命令:
orcl1:/home/oracle@db1>rman target /
3、 检查归档日志状态
RMAN>crosscheck archivelog all;
4、 删除无效归档日志
RMAN>delete noprompt expired archivelog all;
5、 执行rman命令删除归档日志(7天前):
RMAN>delete archivelog all completed before 'sysdate-7';
以下是有备份机制的处理步骤:
1、 在操作系统bash下,声明操作数据库实例:
orcl1:/home/oracle@db1>export ORACLE_SID=orcl1
2、 运行RMAN命令:
orcl1:/home/oracle@db1>rman target /
3、 检查归档日志状态
RMAN>crosscheck archivelog all;
4、 删除无效归档日志
RMAN>delete noprompt expired archivelog all;
5、 执行备份归档日志并删除操作:
RMAN>backup archivelog all format '$ORA_BACKUP_LOCATION/ARCHBAK_%d_%T_%s' tag arch_bak delete all input;
注意:$ORA_BACKUP_LOCATION变量为归档日志备份路径,ARCHBAK_%d_%T_%s为归档日志备份文件名格式。请根据实际情况进行具体设置。
About Me
...............................................................................................................................
● 本文整理自网络
● 本文在itpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和个人微信公众号(xiaomaimiaolhr)上有同步更新
● 本文itpub地址:http://blog.itpub.net/26736162/abstract/1/
● 本文博客园地址:http://www.cnblogs.com/lhrbest
● 本文pdf版及小麦苗云盘地址:http://blog.itpub.net/26736162/viewspace-1624453/
● 数据库笔试面试题库及解答:http://blog.itpub.net/26736162/viewspace-2134706/
● QQ群:230161599 微信群:私聊
● 联系我请加QQ好友(646634621),注明添加缘由
● 于 2017-04-28 09:00 ~ 2017-04-30 22:00 在魔都完成
● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解
● 版权所有,欢迎分享本文,转载请保留出处
...............................................................................................................................
拿起手机使用微信客户端扫描下边的左边图片来关注小麦苗的微信公众号:xiaomaimiaolhr,扫描右边的二维码加入小麦苗的QQ群,学习最实用的数据库技术。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26736162/viewspace-2137829/,如需转载,请注明出处,否则将追究法律责任。