




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 :官方教程2 :dba-oracle讲解3 :WIKI redo log4 :操作 联机重做日志文件 和 组几乎所有的发生在oracle的内部变化都记录在online redo log file中,oracle使用 这些 redo log groups 去恢复数据库,因此它们是非常的重要。联机重做日志文件的主要工作是:备份数据,1:记录所有的数据改变2:提供了一种恢复机制3:一定是被组织成组的4:至少有两组联机重做日志文件每一个redo log 是被分配到 组中, oralce 一次值写一个 online redo log 组, 一旦 这个组中的联机重做日志被填满,oracle 将转换写到下一个联机重做日志组中因此oracle在多个组之间写是一个循环操作。每一个联机重做日志文件被分配一个唯一的序列号(sequence number)。除非重建数据库,否则 联机重做日志文件的序列号不会出现重复。我们可以有多个 联机重组偶日志文件在一个组中,这意味着每一个联机重做日志组包含至少两个 联机重做日志文件, 在组中的每一个文件 成为一个member,每一个 member 应该被分配在不同的磁盘,为了包含这些组文件丢失,oracle 往组里面的member中并发的写信息,一个组的联机重做日志文件是一模一样的,通过LGWR 进程向所有 online redo log file 组中写信息。组中的每一个member 具有相同的大小,oracle数据在往 redo log file 组中写信息的时候首先分配一个 log sequence numbers,多路复用:一个组里至少两个 member ,避免了redo log files 的单点故障 ,redo log files中一个组中包含多个 member,每个组都有一个编号。当数据库创建的时候 联机重做日志文件即被创建,数据库不能缺少联机重做日志文件, 如果 一个组中的所有的member 丢失了, 数据库也就损坏了,因此保存和备份这些文件是非常重要的, 有两种重做日志 , 第一种: 联机重做日志 第二种:归档日志。什么时候LGWR写 redo log file?1:当一个事务commit的时候2:每三秒钟写3:当 redo log buffer 变成 1/3满的时候要写4:当 redo log buffer 的大小操作 1M 的信息 要执行写操作5:在DBWn 一个checkpoints 执行前写。DBWn 这个进程的作用 查 (把redo log files的信息回写 到 datafiles中)一定是先写重做日志,再写到数据文件中。联机重做日子文件如何工作:循环使用,理解 log switch 的定义。(就是切换不同的组进行写),log switch 引发了 checkpoints 把内存中脏数据回写到数据库文件中叫一个checkpoints强迫 日志切换(LOG Switches) 和 checkpoints V$log;这个视图是与联机重做日志文件的视图。1 :通过v$logfile 查找 数据库的 redo log file 和组;SQL col member format a50;SQL select group#,type,member from v$logfile; GROUP# TYPE MEMBER- - - 3 ONLINE D:APPTOPWQPORADATAORCLREDO03.LOG 2 ONLINE D:APPTOPWQPORADATAORCLREDO02.LOG 1 ONLINE D:APPTOPWQPORADATAORCLREDO01.LOG2 : 手动切换日志的命令例如:如下例子 第一次查询 组号为 2 的组的status 是 current , 如下执行了 alter system switch logfile 命令后 再次进行查询 oracle当前写的组号3,表示进行了 log switch 日志组切换操作,这是通过手工的方式进行切换。SQL select group#,thread#,sequence#,status from v$log; GROUP# THREAD# SEQUENCE# STATUS- - - - 1 1 442 INACTIVE 2 1 443 CURRENT 3 1 441 INACTIVESQL alter system switch logfile;系统已更改。SQL select group#,thread#,sequence#,status from v$log; GROUP# THREAD# SEQUENCE# STATUS- - - - 1 1 442 INACTIVE 2 1 443 ACTIVE 3 1 444 CURRENT3 :控制checkpoints的行为(联机重做日志文件的数据信息 定时写到 数据文件中)到reference 找这个参数:fast_start_mttr_target 指定快速恢复的最大值,最大时间数,规定DBWn进程在多长时间内必须把redo log file中信息写到数据文件中,这个参数影响性能的一个重要值,因为它能触动I/O写SQL show parameter fast_start_mttr_target;NAME TYPE VALUE- - -fast_start_mttr_target integer 0意味着 规定DBWn进程在多长时间内必须把redo log file中信息写到数据文件中,如果需要修改这个时间 用:SQL alter system set fast_start_mttr_target = 60 scope = both;系统已更改。SQL show parameter fast_start_mttr_target;NAME TYPE VALUE- - -fast_start_mttr_target integer 60经过以上alter system set fast_start_mttr_target =100 scope = both; 表明已经修改,定DBWn进程在60秒内必须把redo log file中信息写到数据文件4 : 手工回写联机重做日志信息到数据文件中 需要手工执行如下命令:SQL alter system checkpoint;系统已更改。SQL关于对组 和member的操作 参见 click me5 : 增加 online redo log 的组 可以使用如下命令如下操作增加了的 redo log 组 组号为4SQL select group#,type,member from v$logfile; GROUP# TYPE MEMBER- - - 3 ONLINE D:APPTOPWQPORADATAORCLREDO03.LOG 2 ONLINE D:APPTOPWQPORADATAORCLREDO02.LOG 1 ONLINE D:APPTOPWQPORADATAORCLREDO01.LOGSQL alter database add logfile group 4 (D:APPTOPWQPORADATAORCLREDO04.LOG) size 52429312;数据库已更改。SQL select group#,type,member from v$logfile; GROUP# TYPE MEMBER- - - 3 ONLINE D:APPTOPWQPORADATAORCLREDO03.LOG 2 ONLINE D:APPTOPWQPORADATAORCLREDO02.LOG 1 ONLINE D:APPTOPWQPORADATAORCLREDO01.LOG 4 ONLINE D:APPTOPWQPORADATAORCLREDO04.LOG6 : 给某个redo log 组 增加 member 命令SQL ALTER DATABASE ADD LOGFILE MEMBER D:APPTOPWQPORADATAORCLREDO05.LOG TO GROUP 4;数据库已更改。SQL select group#,type,member from v$logfile; GROUP# TYPE MEMBER- - - 3 ONLINE D:APPTOPWQPORADATAORCLREDO03.LOG 2 ONLINE D:APPTOPWQPORADATAORCLREDO02.LOG 1 ONLINE D:APPTOPWQPORADATAORCLREDO01.LOG 4 ONLINE D:APPTOPWQPORADATAORCLREDO04.LOG 4 ONLINE D:APPTOPWQPORADATAORCLREDO05.LOG如上所示: 组号 为 4 的 redo log 文件 有两个 member 分别为: 这是两个 组号 为 4 的两个member 这两个 的 log 文件 的 大小 和内容 完全一样。 可以把两个 member放在不同的 磁盘上 disk 上。D:APPTOPWQPORADATAORCLREDO04.LOGD:APPTOPWQPORADATAORCLREDO05.LOG如图: 下图 显示了 group 和 member 的概念 以及显示了 在不同的 磁盘 disk上。7 :删除 redo file member注意要点:在删除之前保证 一个组里面至少有两个redo log file 即至少有两个member如果你想删除这样 (一个组里面只有一个member) , 是删除不掉member的当删除 完成后 ,不是删除文件,而是 在 control file中登记该redo file member 不存在了,如果想进一步删除,可以使用操作系统命令删除。首先查询以下 ,然后删除,然后再查询对比一下 命令如下:ALTER DATABASE DROP LOGFILE MEMBER D:APPTOPWQPORADATAORCLREDO05.LOG;SQL select group#,type,member from v$logfile; GROUP# TYPE MEMBER- - - 3 ONLINE D:APPTOPWQPORADATAORCLREDO03.LOG 2 ONLINE D:APPTOPWQPORADATAORCLREDO02.LOG 1 ONLINE D:APPTOPWQPORADATAORCLREDO01.LOG 4 ONLINE D:APPTOPWQPORADATAORCLREDO04.LOG 4 ONLINE D:APPTOPWQPORADATAORCLREDO05.LOGSQL ALTER DATABASE DROP LOGFILE MEMBER D:APPTOPWQPORADATAORCLREDO05.LOG;数据库已更改。SQL select group#,type,member from v$logfile; GROUP# TYPE MEMBER- - - 3 ONLINE D:APPTOPWQPORADATAORCLREDO03.LOG 2 ONLINE D:APPTOPWQPORADATAORCLREDO02.LOG 1 ONLINE D:APPTOPWQPORADATAORCLREDO01.LOG 4 ONLINE D:APPTOPWQPORADATAORCLREDO04.LOG一个instance 需要 至少两组 online redo log files 文件。8 :删除 redo files groups组一个active 或者 current 的组不能够删除。inactive 状态 表示 redo log files中的脏数据已经回写到 数据文件中,所以是 inactive状态。可以删除改组。如果你想删除 current 状态的 group 可以通过alter system switch logfile;当删除组;同样这个删除只是在control file中登记 如果想彻底删除,需要手工用操作系统删除alter database drop logfile group 4命令为: ALTER DATABASE DROP LOGFILE GROUP 4;SQL select group#,members,archived,status from v$log; GROUP# MEMBERS ARC STATUS- - - - 1 1 NO INACTIVE 2 1 NO INACTIVE 3 1 NO CURRENT 4 1 YES UNUSEDSQL ALTER DATABASE DROP LOGFILE GROUP 4;数据库已更改。SQL select group#,members,archived,status from v$log; GROUP# MEMBERS ARC STATUS- - - - 1 1 NO INACTIVE 2 1 NO INACTIVE 3 1 NO CURRENT9 : relocate 和 rename在该redo log file的结构的时候 必须备份数据库。relocate 之前1: 首先 shutdown immediate2: 到目录下 然后 拷贝,3: startup mount4: alter database rename file 文件路径文件名 to 文件路径文件名;参照如下即可:5. Relocating A redo log GroupYou may want to relocate your existing redo log group and change the path of redo log files. Here are the steps to accomplish itStep 1:Shutdown database1sql shutdown immediate ;Step 2:Backup your existing control file and redo log file at operating system level.Step 3:Move your redo log member to a new location. You may also change the file name if you want.1# mv /u02/oradata/mydb/redo02.log /u03/oradata/mydb/redo03.logStep 4:Startup in nomount mode1sql startup nomount;Step 5:Path of redo log files is kept in control file. You have to update that record by command below:1sqlALTERDATABASE RENAME FILE /u02/oradata/mydb/redo02.logTO /u03/oradata/mydb/redo03.logControl file is modified and the path of redo log member is updated. Now you can open your database.1sqlalterdatabase open;10 :清除 redo filesalter database clear logfile group 2;以上清除 group2的 的数据文件,这个时候 清除前会进行自动归档redo log file 不归档到数据中,执行如下命令:alter database clear unarchieved logfile group 2;注意:在我们执行DML语句的时候 commit后,数据修改保存到redo log file中,随后
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年注册验船师资格考试(C级船舶检验专业能力)测试题及答案一
- 2025年环境保护与可持续发展知识测试题及答案
- 2025年油气管道维护与操作实务中级面试模拟题及答案
- 2025年物流师职业资格认证考试预测题解析
- 株洲管理知识培训班课件
- 福州七中2026届化学高一第一学期期末联考试题含解析
- 2025年人工智能算法工程师中级晋升面试题详解集萃
- 2025年酒店管理专业课程期末考试题库
- 2025年金融分析师考试模拟试题及标准答案公布
- 2025年建筑师面试指南模拟题与答案详解
- 食管癌病人护理查房
- 七年级班主任开学第一课课件
- XXX有限公司报销审核制度
- WS/T 427-2013临床营养风险筛查
- GA/T 1047-2013道路交通信息监测记录设备设置规范
- GJB9001C内审员培训讲学课件
- 五牌一图(完整版)
- 幼儿园绘本故事:《十二生肖》 课件
- 激光跟踪仪使用手册
- 新媒体运营知识考核试题与答案
- 金属材料的主要性能ppt课件(完整版)
评论
0/150
提交评论