oracle之二归档日志
归档日志 archivelog
5.1 归档和非归档的区别
1)归档会在日志切换时,备份历史日志,用于OLTP,可以进行冷备份和热备份,可以实现数据库完全恢复、不完全恢复(基于时间点)
2)归档会启用arcn的后台进程、占用磁盘空间
3)非归档用于OLAP/DSS,只能冷备份,只能恢复到最后一次备份状态
5.2 查看归档模式:
02:34:50 SQL>archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u01/disk1/timran/
Oldest online log sequence 1
Next log sequence to archive 2
Current log sequence 2 //当前的redo log序号为2
5.3 设置归档模式:1.开启归档模式 2.设置归档路径
02:35:50 SQL> shutdown immediate //这里shutdown 一定要immediate方式
Database closed.
Database dismounted.
ORACLE instance shut down.
02:36:40 SQL> startup mount //到mount下设置
02:37:50 SQL>alter database noarchivelog;
Database altered.
02:37:55 SQL> archive log list;
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination /u01/disk1/timran/
Oldest online log sequence 1
Current log sequence 2
02:38:15 SQL> alter database archivelog; //换回来,我们不要No Archive Mode
02:38:30 SQL> alter database open;
5.4、归档日志的路径及命名方法
指定归档日志存放处及命名,
如果log_archive_dest_n为空,归档日志文件目录为log_archive_dest,如果log_archive_dest值也是空,则默认的是db_recover_file_dest参数指定的位置。缺省安装后db_recover_file_des指向了你的flash_recovery_area
注意:另外指定并不意味着你要取消闪回恢复区的参数,因为这个闪回恢复区不仅存放归档日志,还有RMAN的备份及闪回日志等等。
02:39:20 SQL> show parameter archive
NAME TYPE VALUE
------------------------------------ ----------- --------------------------------------
archive_lag_target integer 0
log_archive_config string
log_archive_dest string
log_archive_dest_1 string location=/u01/disk1/timran/ mandatory
log_archive_dest_10 string
log_archive_dest_2 string
log_archive_dest_3
...
log_archive_duplex_dest string
log_archive_format string arch_%t_%r_%s.log
...
SQL> show parameter db_recovery
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /u01/flash_recovery_area
db_recovery_file_dest_size big integer 2G
SQL>
首先来看这两个参数:
log_archive_dest_n
log_archive_format
log_archive_dest_n (n:1-10) 表示可以有10个目标路径存放归档日志(镜像关系),即可以多路复用10个归档日志的备份。如上显示我只使用了log_archive_dest_1,也就是说只有一套归档日志,没有做镜像,若是生产系统最好能再加一个指定。
SQL> alter system set log_archive_dest_2='location=/u01/arch';
//把历史日志归档到本机目录下 (location 代表本机)
SQL> alter system set log_archive_dest_2='service=standby';
//远程备份,把历史日志备份到服务名为test的另外的数据库上。(service 代表远程), 配置双机时有用。
SQL> alter system set log_archive_dest_1='location=/u01/disk1/timran mandatory';
//mandatory 强制归档:只有在归档成功之后,重做日志才能被覆盖,在设置时至少应该有一个本地(location)
强制(mandatory)归档目录(考点)
//默认optional, 即使归档没有成功也可以覆盖联机日志文件。
log_archive_format 是定义命名格式的,我使用了下面三个内置符号(模板),其含义是:
%t ,thread# , 日志线程号 thread
%s ,sequence ,日志序列号
%r ,resetlog ,代表数据库的周期
SQL> alter system set log_archive_format ='arch_%t_%r_%s.log' scope=spfile;
再来看看这两个参数:(淘汰)
log_archive_dest
log_archive_duplex_dest
如果都定义了可以完成两路复用(镜像)但只能指定本机location,无法指定远程。
一旦使用log_archive_dest_n,log_archive_dest参数就失效了,log_archive_dest与log_archive_dest_n互斥。
5.5 在liunx下查看归档进程
[oracle@timran timran]$ ps -ef |grep ora_arc
oracle 1215 2435 0 13:26 pts/2 00:00:00 grep ora_arc
oracle 31796 1 0 13:00 ? 00:00:00 ora_arc0_timran11g
oracle 31798 1 0 13:00 ? 00:00:00 ora_arc1_timran11g
ARCn就是归档进程,这里启动了两个arc0和arc1,最多可达30个,由log_archive_max_processes参数指定。
5.6 日志归档:
1)自动归档,日志切换时
2)手工 alter system switch logfile;
3)在归档时,会把归档信息写入到控制文件
02:44:00 SQL> alter system switch logfile; //手工切换redo log file,归档模式或非归档模式均可。
02:46:30 SQL> alter system archive log current; //手工归档方法,此方式仅限于Archive mode。
查看已经归档日志:
02:48:08 SQL> select name from v$archived_log;
NAME
--------------------------------------------------------------------------------------------------------
/u01/disk1/timran/arch_1_782662700_141.log
/u01/disk1/timran/arch_1_782662700_142.log
/u01/disk1/timran/arch_1_782662700_143.log
/u01/disk1/timran/arch_1_782662700_144.log
/u01/disk1/timran/arch_1_782662700_145.log
/u01/disk1/timran/arch_1_788918717_1.log
/u01/disk1/timran/arch_1_788918717_2.log
/u01/disk1/timran/arch_1_788918717_3.log
05:47:10 SQL>
最新文章
- 浅析Java.lang.Runtime类
- 【思路】-jscode
- git rm–r folder fatal:pathspec ";"; did not match any files
- javascript --- Function模式
- javascript编程: JSON, Mapping, 回调
- CodeForces 656B
- H5 技术
- iOS 触摸的位置放一个大头针
- android开发 锁屏 真正的锁屏,是go锁屏那种。
- cellspacing cellpadding
- Android-RecyclerView-Item点击事件设置
- php install
- IDEA上传项目至git
- 前段篇:HTML
- freemarker报错之十四
- 模拟select选中option的效果
- 【Spark调优】内存模型与参数调优
- termios结构体各成员的值(FreeBSD 12.0)
- ZOJ_3950_How Many Nines 解题报告及如何对程序进行测试修改
- gitlab:开发+测试+发布的全流程图
热门文章
- 记好这 24 个 ES6 方法,用来解决实际开发的 JS 问题
- Provisional headers are shown 问题的一种情况
- [netty4][netty-common]netty之ResourceLeakDetector的使用与实现
- 前端 go.js 流程图基于vue开发项目案例
- Kubernetes实战指南(三十三):都0202了,你还在手写k8s的yaml文件?
- 已废弃_CSDN慕零的黑夜-头条-第一期(必问)[导读:]1.CSDN必问赏金流向何方 2.CSDN必问偷偷做的手脚 3.CSDN必问靠谱吗 4.关于钱于回答的平衡问题:一美元拍卖骗局qq3461896724
- leetcode刷题记录——数组与矩阵
- ubuntu 本地源搭建
- cinder api启动过程源码分析
- C#串口通讯,复制粘贴就可用,仅仅介绍怎样最快的搭建一个串口通讯,异常拦截等等需要自己加上