当前位置: 首页 > article >正文

Oracle Redo 日志操作手册

Oracle Redo 日志操作手册一、基本概念Oracle 联机重做日志Online Redo Log记录数据库所有变更操作是实例恢复的核心组件。日志组Log Group每个数据库至少 2 个组循环写入日志成员Log Member同一组内的多个成员互为镜像建议每组 2 个成员分布在不同磁盘日志线程ThreadRAC 环境中每个实例拥有独立的线程单实例为 Thread 1日志切换Log Switch当前组写满后切换到下一组触发 LGWR 进程二、查看 Redo 日志信息-- 查看日志组状态SELECTGROUP#, THREAD#, SEQUENCE#, BYTES/1024/1024 AS SIZE_MB,BLOCKSIZE,MEMBERS,ARCHIVED,STATUSFROMV$LOGORDERBYTHREAD#, GROUP#;-- 查看日志成员文件路径SELECTGROUP#, MEMBER, STATUS, TYPEFROMV$LOGFILEORDERBYGROUP#, MEMBER;-- 查看日志组与成员汇总SELECTl.GROUP#, l.THREAD#, l.SEQUENCE#,l.BYTES/1024/1024ASSIZE_MB,l.STATUSASGROUP_STATUS,lf.MEMBERASFILE_PATH,lf.STATUSASMEMBER_STATUSFROMV$LOG lJOINV$LOGFILE lfONl.GROUP# lf.GROUP#ORDERBYl.THREAD#, l.GROUP#;-- 查看当前正在使用的日志组SELECTGROUP#, SEQUENCE#, STATUS FROM V$LOG WHERE STATUS CURRENT;-- 查看日志切换历史最近24小时SELECTTHREAD#, SEQUENCE#, FIRST_TIME, NEXT_TIME,ROUND((NEXT_TIME-FIRST_TIME)*24*60,2)ASDURATION_MINFROMV$ARCHIVED_LOGWHEREFIRST_TIMESYSDATE-1ORDERBYTHREAD#, SEQUENCE# DESC;-- 统计每小时日志切换次数评估日志大小是否合理SELECTTO_CHAR(FIRST_TIME,YYYY-MM-DD HH24)ASHOUR,COUNT(*)ASSWITCH_COUNTFROMV$LOG_HISTORYWHEREFIRST_TIMESYSDATE-1GROUPBYTO_CHAR(FIRST_TIME,YYYY-MM-DD HH24)ORDERBY1DESC;三、添加日志组-- 添加一个日志组单成员ALTERDATABASEADDLOGFILEGROUP4(/data/oracle/redo/redo04.log)SIZE200M;-- 添加一个日志组双成员推荐ALTERDATABASEADDLOGFILEGROUP4(/data/oracle/redo/redo04a.log,/data/oracle/redo/redo04b.log)SIZE200M;-- 不指定组号自动分配ALTERDATABASEADDLOGFILE(/data/oracle/redo/redo05a.log,/data/oracle/redo/redo05b.log)SIZE200M;-- RAC 环境为指定线程添加日志组ALTERDATABASEADDLOGFILE THREAD2GROUP10(/data/oracle/redo/redo_t2_10a.log,/data/oracle/redo/redo_t2_10b.log)SIZE200M;四、添加日志成员-- 为已有日志组添加成员镜像ALTERDATABASEADDLOGFILE MEMBER/data/oracle/redo/redo01b.logTOGROUP1;-- 同时为多个组添加成员ALTERDATABASEADDLOGFILE MEMBER/data/oracle/redo/redo01b.logTOGROUP1,/data/oracle/redo/redo02b.logTOGROUP2,/data/oracle/redo/redo03b.logTOGROUP3;五、删除日志组注意不能删除 CURRENT 或 ACTIVE 状态的日志组至少保留 2 个组。-- 查看状态确认可以删除SELECTGROUP#, STATUS FROM V$LOG;-- STATUS: CURRENT当前/ ACTIVE活跃未归档完/ INACTIVE可删除/ UNUSED从未使用-- 若目标组为 ACTIVE先强制切换并等待归档完成ALTERSYSTEM SWITCH LOGFILE;ALTERSYSTEMCHECKPOINT;-- 删除日志组ALTERDATABASEDROPLOGFILEGROUP4;-- 注意以上命令只从控制文件中移除记录物理文件需手动删除-- OMFOracle Managed Files管理的文件会自动删除# 手动删除物理文件非 OMFrm-f/data/oracle/redo/redo04a.logrm-f/data/oracle/redo/redo04b.log六、删除日志成员-- 删除指定组的某个成员ALTERDATABASEDROPLOGFILE MEMBER/data/oracle/redo/redo01b.log;-- 注意-- 1. 不能删除组内最后一个成员需先删组-- 2. CURRENT 组的成员不能删除-- 3. 非 OMF 文件需手动删除物理文件# 手动删除物理文件rm-f/data/oracle/redo/redo01b.log七、修改日志文件大小Oracle 不支持直接修改日志文件大小需通过新增 删除方式替换。-- 步骤1查看当前日志组SELECTGROUP#, BYTES/1024/1024 AS SIZE_MB, STATUS FROM V$LOG;-- 步骤2新增目标大小的日志组ALTERDATABASEADDLOGFILEGROUP10(/data/oracle/redo/redo10a.log,/data/oracle/redo/redo10b.log)SIZE500M;-- 步骤3切换日志让旧组变为 INACTIVEALTERSYSTEM SWITCH LOGFILE;ALTERSYSTEMCHECKPOINT;-- 步骤4确认旧组状态为 INACTIVE 后删除SELECTGROUP#, STATUS FROM V$LOG;ALTERDATABASEDROPLOGFILEGROUP1;-- 步骤5删除物理文件-- rm -f /data/oracle/redo/redo01*.log-- 步骤6用新路径重建该组可选保持组号连续ALTERDATABASEADDLOGFILEGROUP1(/data/oracle/redo/redo01a.log,/data/oracle/redo/redo01b.log)SIZE500M;-- 重复以上步骤处理其余日志组八、日志线程Thread管理线程主要用于 RAC 环境每个实例对应一个线程。-- 查看线程信息SELECTTHREAD#, STATUS, ENABLED, GROUPS, OPEN_TIMEFROMV$THREAD;-- 查看各线程的日志组SELECTGROUP#, THREAD#, SEQUENCE#, STATUSFROMV$LOGORDERBYTHREAD#, GROUP#;-- 启用线程RAC 新增实例时ALTERDATABASEENABLEPUBLICTHREAD2;-- 禁用线程RAC 减少实例时ALTERDATABASEDISABLETHREAD2;-- 为线程2添加日志组ALTERDATABASEADDLOGFILE THREAD2GROUP11(/data/oracle/redo/redo_t2_11a.log,/data/oracle/redo/redo_t2_11b.log)SIZE200M;-- 查看线程与实例对应关系RACSELECTINST_ID,THREAD#, STATUS FROM GV$THREAD ORDER BY INST_ID;九、日志切换与检查点-- 手动切换日志ALTERSYSTEM SWITCH LOGFILE;-- RAC 环境切换指定线程的日志ALTERSYSTEM SWITCHALLLOGFILE;-- 强制检查点加速 ACTIVE 状态变为 INACTIVEALTERSYSTEMCHECKPOINT;-- 全局检查点RACALTERSYSTEMCHECKPOINTGLOBAL;十、日志损坏恢复10.1 非 CURRENT 组损坏INACTIVE 状态-- 清除损坏的日志组不影响数据ALTERDATABASECLEAR LOGFILEGROUP2;-- 若日志组未归档强制清除会导致该日志无法用于恢复ALTERDATABASECLEAR UNARCHIVED LOGFILEGROUP2;10.2 CURRENT 组损坏最严重# 需要不完全恢复步骤# 1. 尝试正常关库sqlplus / as sysdbaSHUTDOWNABORT;STARTUP MOUNT;-- 尝试强制打开可能丢失部分数据ALTERDATABASEOPENRESETLOGS;-- 若失败需要从备份恢复RECOVERDATABASEUNTIL CANCEL;ALTERDATABASEOPENRESETLOGS;10.3 日志成员损坏组内其他成员正常-- 删除损坏成员重新添加ALTERDATABASEDROPLOGFILE MEMBER/data/oracle/redo/redo01b.log;ALTERDATABASEADDLOGFILE MEMBER/data/oracle/redo/redo01b.logTOGROUP1;-- Oracle 会自动从同组其他成员同步内容十一、最佳实践项目建议日志组数量至少 3 组繁忙系统 4-6 组每组成员数2 个分布在不同磁盘/控制器日志文件大小目标每 15-30 分钟切换一次通常 200M-1G日志切换频率过于频繁5分钟需扩大日志过慢60分钟可适当缩小存放位置与数据文件、归档日志分开使用独立高速磁盘RAC 环境每个线程至少 3 组组间大小保持一致监控定期检查V$LOG中是否有长期 ACTIVE 状态的组十二、常见问题问题原因解决方法无法删除日志组组状态为 CURRENT 或 ACTIVE切换日志 执行检查点后再删日志组一直 ACTIVE归档进程卡住或归档目录满检查归档进程清理归档空间ORA-00350: 需要归档日志组未归档就要被覆盖检查归档进程增加日志组数量ORA-00312: 日志文件不可访问文件损坏或路径错误使用CLEAR LOGFILE重建日志切换过于频繁日志文件太小增大日志文件 SIZE添加成员报错 ORA-00301文件已存在删除旧文件或换路径

相关文章:

Oracle Redo 日志操作手册

Oracle Redo 日志操作手册一、基本概念 Oracle 联机重做日志(Online Redo Log)记录数据库所有变更操作,是实例恢复的核心组件。 日志组(Log Group):每个数据库至少 2 个组,循环写入日志成员&…...

Q4_K_M 和 Q5_K_M

Q4_K_M 和 Q5_K_M 是 GGUF 格式中两种主流的量化方案,核心区别在于精度(位数)和文件大小。简单来说,Q5_K_M 精度更高、文件更大,Q4_K_M 更省空间、速度更快。以下是详细的对比分析:1. 核心参数对比维度Q4_K…...

HY-Motion 1.0保姆级教程:5分钟快速部署,用文字生成3D角色动画

HY-Motion 1.0保姆级教程:5分钟快速部署,用文字生成3D角色动画 想用一句话就让3D角色动起来吗?以前这可能需要动画师花费数小时甚至数天的时间,但现在,有了HY-Motion 1.0,你只需要输入一段简单的文字描述&…...

从错误740到完美解决:一个真实案例教你处理CreateProcess权限问题

从权限冲突到无缝执行:深度解析CreateProcess错误740的根治方案 当你在Windows平台上调用CreateProcess启动子进程时,突然遭遇错误代码740(ERROR_ELEVATION_REQUIRED),这意味着什么?这个问题看似简单&#…...

流程图编辑器使用说明文档

一、产品概述本流程图编辑器是一款面向工业自动化场景(PLC 扫码、数据上传、状态监控等)的可视化流程配置工具,支持通过拖拽节点、连线的方式快速定义业务流程,并可将流程导出为 JSON 配置文件,用于驱动自动化业务执行…...

C语言特点、应用范围及学习方法全解析,助你轻松掌握

目录,简介,C语言有着这样的特点,其发展历史如何,C语言有哪些版本,它的优点包括简洁紧凑且灵活方便,运算符是丰富的,数据结构也丰富,C属于结构式语言,C语法的限制不太严格…...

从“省人工”到“稳品质”:唯思特整列机引领自动化价值跃迁

在制造业自动化升级的浪潮中,企业对自动化设备的认知正在经历一场深刻的转变。早期,引入自动化设备的核心诉求是“省人工”——用机器替代重复性体力劳动,降低人力成本。然而,随着制造业向精密化、智能化演进,越来越多…...

告别图形界面:用CMD完成90%的Windows系统维护(附常用命令清单)

告别图形界面:用CMD完成90%的Windows系统维护(附常用命令清单) 在Windows系统管理中,图形界面(GUI)虽然直观易用,但命令行工具(CMD)才是真正的高效利器。对于IT支持人员和…...

OpenWRT+SFTP保姆级教程:5分钟搞定远程文件安全传输(含cpolar配置)

OpenWRTSFTP远程文件管理实战:从配置到安全优化的完整指南 对于智能路由器玩家和家庭NAS用户而言,远程安全访问设备文件是个刚需。想象一下,出差时突然需要调取家里路由器上的配置文件,或是给物联网设备推送更新包,传统…...

计算机毕业设计springboot基于Vue的不动产登记系统 基于SpringBoot与Vue.js的房地产产权在线管理平台 采用前后端分离架构的房屋资产数字化登记系统

计算机毕业设计springboot基于Vue的不动产登记系统 (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着房地产市场的快速发展和业务量的急剧增长,传统纸质登记方式已…...

IO-Link物理层深度解析:从三线连接到信号迟滞的硬件基石

1. IO-Link物理层:工业自动化的"神经系统" 如果把工业自动化系统比作人体,那么IO-Link就是遍布全身的神经系统。作为这个系统的"神经末梢",物理层直接决定了信号传输的可靠性和实时性。我在实际项目中遇到过不少因为物理…...

统信UOS系统故障排查:从黑屏报错到硬盘修复的完整指南

1. 统信UOS黑屏报错问题解析 最近有不少用户反馈统信UOS系统开机时遇到黑屏问题,屏幕上显示"failed to register hotplug callbacks"、"hda no chx001 device"和"CORBRP0"等错误信息。这种情况通常会让用户感到困惑:到底是…...

JMeter分布式测试实战指南:突破单机瓶颈,挖掘系统性能极限

在性能测试领域,单机压测常因硬件资源限制(如CPU、内存或网络带宽)遭遇瓶颈——例如,线程数增至400时,TPS仍卡在200左右,响应时间却持续攀升,而服务器资源利用率不足50%。这种场景下&#xff0c…...

周报20260309-20260315

一、工作概述这段时间主要完成了论文的重构与修改。将原来版本中较为宽泛的“Boosting Framework”重新定义为更具针对性的“Post-Hoc Enhancement Network”,并相应调整了全文的逻辑架构,来更准确地反映利用预训练DL-FWI结果作为先验进行精细化修正的本…...

openpi π₀ 训练与推理 矩阵维度详解

1. 关键维度参数 ┌─────────────────────────────────────────────────────────────────────────────────┐ │ 关键维度参数 …...

OpenCode工具

最先进使用OpenCode学习AI编程,免费的模型太慢,调研了半天,国内也就GLM、MiniMax好些,先配置上吧。试试它的Coding Plan,还算实惠。GLM的官网套餐都售罄了,没法买,虽然它较贵。MiniMax如何获取邀…...

手把手拆解:一个连接Windows与Linux的AI视频生成Gradio Web应用

本项目由本人设计,通过借用企业4090服务器、为远程网页端使用comfyui搭建。(详细代码见下方) 一、 系统架构概览 整个应用可以看作一个调度中心和文件传输中介,它的核心工作流如下: 前端交互:用户在Windows的网页界面上传视频和图片。 文件同步:应用将文件从Windows本…...

Z-Image-Turbo-辉夜巫女服务监控与维护:基础运维命令与日志分析

Z-Image-Turbo-辉夜巫女服务监控与维护:基础运维命令与日志分析 部署好一个AI图像生成服务,比如Z-Image-Turbo-辉夜巫女,只是第一步。让它稳定、高效地跑起来,才是真正考验的开始。服务会不会突然卡住?生成图片的速度…...

OpCore Simplify:自动化配置黑苹果系统部署的创新方法——从配置困境到高效部署的转变

OpCore Simplify:自动化配置黑苹果系统部署的创新方法——从配置困境到高效部署的转变 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 作为…...

DeepSeek-R1-Distill-Qwen-7B实战:Ollama轻松部署,体验媲美OpenAI o1的推理能力

DeepSeek-R1-Distill-Qwen-7B实战:Ollama轻松部署,体验媲美OpenAI o1的推理能力 1. 模型介绍 DeepSeek-R1-Distill-Qwen-7B是一款经过深度蒸馏的7B参数语言模型,基于Qwen架构开发。该模型在数学推理、代码生成和逻辑分析任务上表现出色&…...

5分钟搞定AI生成PPT:DeepSeek+Markdown+Kimi全流程保姆级教程

5分钟搞定AI生成PPT:DeepSeekMarkdownKimi全流程保姆级教程 在快节奏的职场和学术环境中,制作专业PPT往往成为时间杀手。传统方法从内容构思到排版设计动辄数小时,而AI工具的融合应用正在颠覆这一流程。本文将揭示如何通过DeepSeek、Markdown…...

告别塑料感!Nunchaku FLUX.1 CustomV3新手入门:轻松生成带真实毛孔和发丝的人像

告别塑料感!Nunchaku FLUX.1 CustomV3新手入门:轻松生成带真实毛孔和发丝的人像 你是否曾经被AI生成的人像那种"塑料感"所困扰?皮肤光滑得像蜡像,头发糊成一团,缺乏真实感?今天,我将…...

DeOldify快速上手指南:10分钟完成服务启动→上传→上色→保存全流程

DeOldify快速上手指南:10分钟完成服务启动→上传→上色→保存全流程 你是不是翻出家里的老照片,看着那些泛黄的黑白影像,总想着要是能恢复色彩该多好?以前这得找专业修图师,费时又费钱。现在,有个叫DeOldi…...

MongoDB连接失败?5分钟搞定‘serverSelectionTimeoutlS‘报错(附详细排查步骤)

MongoDB连接失败终极排查指南:从serverSelectionTimeoutlS报错到系统级修复 当你正全神贯注地开发一个依赖MongoDB的关键功能时,突然出现的"serverSelectionTimeoutlS"报错就像一盆冷水浇下来。这个错误看似简单,背后却可能隐藏着从…...

FlowState Lab 时空波动仪快速部署教程:3步搭建Python开发环境

FlowState Lab 时空波动仪快速部署教程:3步搭建Python开发环境 1. 引言 最近在AI开发者圈子里,FlowState Lab的时空波动仪项目引起了不小的关注。作为一个专注于时间序列分析和预测的开源工具,它特别适合处理金融、气象、物联网等领域的数据…...

Qwen1.5-1.8B GPTQ创意应用:结合ComfyUI构建可视化AI工作流

Qwen1.5-1.8B GPTQ创意应用:结合ComfyUI构建可视化AI工作流 最近在折腾各种AI工具时,我发现了一个特别有意思的组合:把轻量级但能力不俗的Qwen1.5-1.8B GPTQ模型,和那个节点式、可玩性极高的ComfyUI可视化工具结合起来。这可不是…...

ChatGPT国内镜像搭建指南:从零开始实现稳定访问

ChatGPT国内镜像搭建指南:从零开始实现稳定访问 对于国内开发者来说,直接访问OpenAI的ChatGPT API常常伴随着一些令人头疼的问题。网络延迟高、连接不稳定,甚至在某些时段完全无法访问,这些痛点严重影响了开发效率和项目进度。为…...

BGE-Reranker-v2-m3灾备方案:主备切换机制部署步骤详解

BGE-Reranker-v2-m3灾备方案:主备切换机制部署步骤详解 在构建高可用RAG系统时,重排序模块的稳定性直接决定最终回答质量。当BGE-Reranker-v2-m3服务因硬件故障、显存溢出或网络异常中断时,若无快速响应机制,整个检索链路将陷入停…...

Cosmos-Reason1-7B部署教程:WSL2环境下Ubuntu 22.04 GPU驱动配置指南

Cosmos-Reason1-7B部署教程:WSL2环境下Ubuntu 22.04 GPU驱动配置指南 1. 教程概述 想要在本地运行强大的AI推理工具吗?Cosmos-Reason1-7B是一个专门针对逻辑推理、数学计算和编程问题优化的本地大语言模型工具。它基于NVIDIA官方模型开发,完…...

Step3-VL-10B-Base进阶:利用LaTeX编写包含模型公式的技术文档

Step3-VL-10B-Base进阶:利用LaTeX编写包含模型公式的技术文档 你是不是也遇到过这种情况?辛辛苦苦画好了一张复杂的神经网络结构图,或者整理了一堆实验结果图表,结果在写论文或者技术报告的时候,光是描述这些图表就花…...