
好的,我们来深入解析 Oracle 数据库中至关重要的 log file parallel write 等待事件。这个事件直接关联到数据库的核心进程 LGWR (Log Writer) 的性能,对事务提交速度和整体数据库吞吐量有决定性影响。
一、 等待事件介绍
- 名称:
log file parallel write - 分类:
System I/O(系统 I/O) 类等待事件。 - 含义: 当 LGWR 进程 (Log Writer) 将 日志缓冲区 (Log Buffer) 中的一组 重做记录 (Redo Records) 并行写入到当前联机重做日志组的所有成员文件时,LGWR 进程会等待这些并行 I/O 操作全部完成。该事件记录了 LGWR 进程等待所有这批并行写 I/O 操作完成所花费的时间。
- 关键点:
- LGWR 主导: 这是 LGWR 进程最主要的等待事件。
- 批量、并行写入: LGWR 不是逐条写入重做记录,而是收集一批记录(数量受
LOG_BUFFER大小、提交频率等影响),然后同时向当前日志组的所有成员文件发起写 I/O 请求。 - 写入完成等待: LGWR 必须等待它发起的这一批所有写 I/O 操作都得到操作系统的确认(即
write()系统调用返回成功,数据已提交到 I/O 子系统队列),并且通常还需要等待一个隐式或显式的fsync()操作(确保数据落盘,取决于 OS 和文件系统设置)完成后,才能:- 通知用户进程提交完成(如果是提交触发的写入)。
- 更新控制文件中的日志序列信息。
- 继续处理下一批重做记录。
- 事务持久性保障: 这是 Oracle 保证“提交的事务不会丢失”的核心机制(Write-Ahead Logging - WAL 原则)。LGWR 必须将包含提交记录的重做数据持久化到磁盘,事务才算真正提交成功。
- 日志组多成员: 该事件的“并行”体现在同时写入一个日志组内的所有成员文件(通常用于冗余)。写入总时间由该批次中最慢的那个成员文件的 I/O 决定。
- 日志写入性能的晴雨表: 该事件的平均等待时间 (
Avg Wait (ms)) 直接反映了联机重做日志文件所在磁盘/存储的写入性能。
二、 详细原理
- 重做记录的生成: 当用户进程执行 DML (INSERT, UPDATE, DELETE) 或 DDL 操作时,修改数据块前会先在内存中的 Log Buffer 生成对应的重做记录(描述变更操作)。
- LGWR 的触发: LGWR 进程在以下条件之一满足时被触发写入磁盘:
- 用户提交 (COMMIT): 这是最常见的触发。提交时,包含该事务提交记录的重做记录必须立即写入磁盘。
- 日志缓冲区 1/3 满: Log Buffer 被填充超过三分之一。
- 超时机制 (约 3 秒): LGWR 每隔大约 3 秒会醒来检查是否需要写。
- DBWR 即将写入脏块: 在 DBWR 将脏数据块写入数据文件之前,LGWR 必须先写出包含这些块变更的重做记录 (Write-Ahead Logging)。
- 日志切换 (Log Switch): 当前日志组写满,切换到下一组前需要确保当前组的最后一批记录写入完成。
- 批量记录收集: LGWR 被触发后,从 Log Buffer 中收集一批连续的重做记录准备写入。
- 并行 I/O 请求提交:
- LGWR 确定当前活动的联机重做日志组及其所有成员文件。
- 对于支持异步 I/O (AIO) 且已启用的系统: LGWR 使用异步 I/O 接口 (
io_submit等) 向操作系统并行提交多个写请求,每个请求对应同一个日志组的一个成员文件,写入相同的这批重做记录(多副本)。LGWR 进程随后进入log file parallel write等待状态。 - 对于不支持或不启用 AIO 的系统: LGWR 可能使用同步 I/O 模拟并行(效率较低),或者使用 I/O Slaves (
LGWR_IO_SLAVES)。但等待事件名称仍为log file parallel write。
- I/O 执行、持久化与完成等待:
- 操作系统接收 I/O 请求,调度磁盘控制器、HBA 卡等硬件,将数据实际写入物理磁盘。
- 关键点:持久化要求! 仅仅将数据放入操作系统的 I/O 缓存 (
Page Cache) 不够。为了保证事务持久性(即使掉电不丢失),LGWR 通常需要确保数据写入磁盘的持久化存储(如磁盘盘片或带有电容保护的 RAID/NAS/SAN 控制器缓存)。这通常通过以下机制之一实现:- 隐式/显式
fsync(): 在等待write()返回后,LGWR 可能会发出fsync()系统调用(或依赖文件系统日志保证顺序和持久性,但这通常也需要刷盘)。 - Direct I/O (O_DIRECT): 如果配置了
FILESYSTEMIO_OPTIONS=SETALL(通常包含DIRECTIO),则绕过 OS 缓存,直接写入磁盘。此时write()返回通常意味着数据已在传输队列,但可能仍需等待设备确认(如 SCSI 的FUA- Force Unit Access 或DIF- Data Integrity Field)。
- 隐式/显式
- LGWR 在
log file parallel write事件上等待,直到它提交的 这一批 所有写请求都完成 (write返回),并且持久化要求也得到满足(数据安全落盘)。 - 等待时间取决于该批次中写入并持久化最慢的那个成员文件的 I/O 请求。
- 后续操作:
- 一旦所有成员文件的写入和持久化完成:
- LGWR 更新 Log Buffer 的写入位置(释放空间)。
- 如果是提交触发的,LGWR 通知用户进程提交完成(用户进程结束
log file sync等待)。 - 可能更新 SGA 中的控制结构。
- LGWR 继续处理下一批重做记录或进入睡眠。
- 一旦所有成员文件的写入和持久化完成:
三、 产生的过程 (场景)
该事件在 LGWR 执行其核心任务——将重做数据安全写入磁盘时必然发生。常见于以下场景:
- 用户提交事务 (COMMIT): 最频繁和最重要的场景! 每次用户执行
COMMIT时,触发 LGWR 将包含该事务提交记录的重做记录写入磁盘。用户进程随后等待log file sync事件,直到log file parallel write完成。 - 高 DML 负载: 大量的
INSERT,UPDATE,DELETE操作快速填充 Log Buffer,频繁触发 LGWR 写盘(达到 1/3 满或超时)。 - 日志缓冲区较小 (
LOG_BUFFER): 较小的 Log Buffer 更容易被填满(1/3 或完全满),导致 LGWR 更频繁地被触发工作。 - 日志切换 (Log Switch): 当前日志组写满时,LGWR 在切换前必须完成最后一批记录的写入。
- DBWR 活动: 在 DBWR 写出脏块之前,LGWR 必须先写出与这些脏块相关的重做记录 (WAL)。
- 检查点: 虽然不是直接触发,但检查点期间 DBWR 活动增加,会间接增加 LGWR 的活动(写出 DBWR 要写块对应的 redo)。
四、 可能的原因 (导致等待时间过长)
当 log file parallel write 的平均等待时间 (Avg Wait (ms)) 很高,或者在 Top Timed Events 中排名靠前时,意味着联机重做日志文件的写入存在瓶颈。根本原因几乎总是日志文件所在磁盘/存储的写入性能不足或持久化要求带来的延迟。 具体原因包括:
- 慢速的 I/O 子系统 (最核心原因):
- 磁盘写入速度慢: 重做日志文件所在的物理磁盘(尤其是 HDD)或存储阵列 LUN 顺序写入性能差(高延迟、低 IOPS)。虽然日志是顺序写,但高并发下小 I/O 多,且持久化要求严格。
- 存储带宽不足: 存储设备的吞吐量 (
MB/s) 无法满足 LGWR 的写入需求(尤其是在归档模式下,同时有 ARCn 进程读取日志)。 - I/O 争用严重: 重做日志文件与其他高 I/O 负载的文件(如数据文件、归档日志文件、其他数据库/应用的文件)共享同一慢速物理磁盘、RAID 组、LUN 或存储控制器。这是非常糟糕的做法!
- 存储控制器/HBA 卡/网络瓶颈: SAN/NAS 网络拥塞、HBA 卡带宽不足或配置错误、存储控制器过载。
- RAID 级别选择不当: 使用写入性能差的 RAID 级别(如 RAID 5, RAID 6)存放重做日志文件。强烈推荐 RAID 10 (镜像+条带) 或专用高性能磁盘(SSD/NVMe)。
- 存储缓存策略与持久化要求:
- Write-Back 缓存无电池保护/电容失效: 如果存储阵列使用 Write-Back 缓存提升性能,但电池/电容失效或未配置,LGWR 可能被迫等待缓存刷盘(相当于 Write-Through),导致延迟剧增。
- Write-Through 缓存: 禁用写缓存或强制 Write-Through 策略会显著增加写入延迟。
- 持久化确认延迟: 操作系统或存储需要额外时间确认数据已安全落盘 (
fsync,FUA,DIF等机制),特别是在慢速磁盘上。
- 虚拟化层瓶颈: 在 VMware/KVM 等虚拟化环境中,虚拟磁盘或底层存储的 I/O 调度、队列深度限制、或模拟持久化的开销成为瓶颈。
- LGWR 写入负载过重:
- 极高的 DML 和提交速率: 数据库经历非常高的插入、更新、删除操作,并且事务提交非常频繁(如短事务 OLTP),导致 Log Buffer 快速填满,LGWR 持续高负荷工作。
- 过小的 Log Buffer (
LOG_BUFFER): Buffer 太小导致 LGWR 被更频繁地触发(1/3 满容易达到),且每次写入量可能较小,效率降低,无法充分利用磁盘的顺序写入带宽。 - 日志文件成员位置不佳: 日志组的所有成员文件放在同一个慢速物理磁盘或控制器上。虽然实现了冗余,但失去了并行写入的性能优势,并且最慢的磁盘决定了整体速度。如果其中一个成员在慢盘上,整个写入都会被拖累。
- 过多的日志组成员: 虽然提供高冗余,但 LGWR 必须并行写入所有成员。一个慢的成员会拖累整个批次。通常 2-3 个成员足够。过多的成员(如 >3)徒增写入负担。
- 配置或资源问题:
- 异步 I/O (AIO) 未启用或配置不当: 如果操作系统支持 AIO 但未启用 (
FILESYSTEMIO_OPTIONS未设为SETALL或ASYNCH;DISK_ASYNCH_IO=TRUE是默认但依赖 OS),或者 AIO 配置限制(如队列深度过小),会导致 LGWR 无法充分利用并行 I/O 的优势。 - 使用文件系统而非裸设备/ASM: 文件系统层(特别是未使用 Direct I/O 时)会引入额外的缓存管理和
fsync开销,可能增加延迟。使用裸设备或 ASM 通常能提供更直接和高效的 I/O 路径。 - CPU 资源不足: 系统 CPU 饱和,尤其是内核态 (
sys%) CPU 高,会影响操作系统处理 I/O 请求和持久化操作 (fsync) 的效率。 - 内存压力与交换 (Swapping): 严重的内存不足导致操作系统进行页交换,会极大拖慢整个系统,包括 I/O 处理。
- 异步 I/O (AIO) 未启用或配置不当: 如果操作系统支持 AIO 但未启用 (
五、 详细排查过程
-
确认问题与严重性:
- AWR/ASH 报告: 首要诊断工具。
Top Timed Events: 确认log file parallel write是否在 Top 5/10 中,重点关注Avg Wait (ms)。这是核心指标!- < 5ms: 通常良好(SSD/NVMe 应 < 1ms)。
- 5ms - 10ms: 潜在瓶颈,需要关注。
- > 10ms: 显著瓶颈,通常表示存储写入性能不足或持久化延迟高。
- > 20ms: 非常严重的性能问题,对事务提交延迟 (
log file sync) 影响巨大。
- 同时关注
Total Wait Time (s)和% DB time。 Wait Events Statistics/Event Histogram: 查看等待时间分布。大量高延迟等待(> 10ms, > 20ms)强烈指向存储问题。- 关联
log file sync: 高log file parallel write必然导致前台用户进程的log file sync等待时间变长。在 AWR 中检查log file sync的Avg Wait (ms)是否也高。
V$SYSTEM_EVENT:
精确计算平均等待时间 (SELECT EVENT, TOTAL_WAITS, TIME_WAITED_MICRO, ROUND(TIME_WAITED_MICRO / 1000000, 2) AS TIME_WAITED_SEC, ROUND((TIME_WAITED_MICRO / TOTAL_WAITS) / 1000, 2) AS AVG_WAIT_MS FROM V$SYSTEM_EVENT WHERE EVENT = 'log file parallel write';AVG_WAIT_MS)。V$SESSION_EVENT/V$ACTIVE_SESSION_HISTORY(ASH): 确认等待主要来自 LGWR 进程 (LGWR)。查询PROGRAM列。
- AWR/ASH 报告: 首要诊断工具。
-
分析 LGWR 活动与负载:
- AWR 报告
Load Profile: 关注高Redo size(每秒/每事务)。高 Redo 生成率是 LGWR 负载的主要来源。 - AWR 报告
Instance Activity Stats: 查找关键指标:redo writes: LGWR 写磁盘的次数。redo blocks written: 写入的 Redo Block 总数。redo write time: LGWR 花费的总写时间(厘秒)。计算平均每次写时间:redo write time/redo writes* 10 = 平均毫秒/次。应与log file parallel write的Avg Wait接近。redo wastage: 因日志切换未写满而“浪费”的 Redo 空间。结合日志大小评估。user commits/user rollbacks: 事务提交/回滚次数。高提交率直接关联 LGWR 负载。log file sync wait time: 前台进程等待log file sync的总时间。
- 检查参数与配置:
SHOW PARAMETER LOG_BUFFER -- 日志缓冲区大小 (通常几MB到几十MB) SHOW PARAMETER LOG_ARCHIVE_DEST_n -- 归档设置 (归档模式下 ARCn 读日志会增加盘压力) SHOW PARAMETER FILESYSTEMIO_OPTIONS -- 应为 SETALL 或 ASYNCH (建议 SETALL 包含 DIRECTIO) SHOW PARAMETER DISK_ASYNCH_IO -- 应为 TRUE (默认) -- 查看日志组和成员: SELECT GROUP#, THREAD#, SEQUENCE#, BYTES, MEMBERS, STATUS, ARCHIVED FROM V$LOG; SELECT GROUP#, MEMBER, TYPE, IS_RECOVERY_DEST_FILE FROM V$LOGFILE ORDER BY GROUP#, MEMBER;- 检查
LOG_BUFFER大小是否合理(避免过小)。 - 确认重做日志文件的位置 (
V$LOGFILE.MEMBER)。所有成员是否分布在不同的物理磁盘/控制器上? 是否有成员在慢盘或共享盘上? - 确认日志文件大小(
V$LOG.BYTES)。过小的日志文件会导致频繁切换,增加 LGWR 和 ARCn 负担。 - 确认是否启用归档 (
ARCHIVELOG模式)。归档会增加磁盘 I/O (ARCn 读日志)。
- 检查
- AWR 报告
-
定位 I/O 瓶颈 (存储性能分析 - 针对日志盘):
- 操作系统 I/O 监控工具: 这是诊断的核心! 使用工具监控存放联机重做日志文件的磁盘/LUN:
- Linux:
iostat -x 1 - AIX:
iostat -Dl 1 - Solaris:
iostat -xnz 1 - Windows: 性能监视器 (
Perfmon),计数器LogicalDisk/PhysicalDisk->Avg. Disk sec/Write
- Linux:
- 关键指标解读 (针对日志盘):
await(Linux/AIX/Solaris) /w_await(Linux) /Avg. Disk sec/Write(Windows): 最直接相关! 平均每次写 I/O 操作的响应时间(毫秒 ms)。该值应与log file parallel write的Avg Wait (ms)高度一致。 高值(>5ms, >10ms)即证明日志存储写入慢。%util(Linux/Solaris) /%Busy(AIX): 磁盘利用率。持续 > 70-80% 表示饱和。注意: 对于高速 SSD/NVMe,即使利用率低,延迟也可能因持久化要求 (fsync) 而高。w/s(Linux/AIX/Solaris): 每秒写操作次数 (Write IOPS)。对比磁盘/阵列的标称随机写或顺序写 IOPS 能力(日志主要是顺序写,但小 I/O 多时类似随机)。wkB/s(Linux/AIX/Solaris) /Disk Write Bytes/sec(Windows): 每秒写吞吐量 (KB/s 或 MB/s)。对比磁盘/阵列的标称带宽。检查是否接近上限。avgqu-sz(Linux/AIX/Solaris) /Current Disk Queue Length(Windows): 平均 I/O 队列长度。持续 > 1-2 通常表示有瓶颈。svctm(Linux/Solaris): 平均服务时间。
- 特别关注
fsync延迟 (如果可能): 在 Linux 上,可以使用pidstat -d结合 LGWR 的 PID,或使用perf/strace(谨慎使用) 来观察fsync()调用的耗时。高fsync延迟是持久化要求导致的典型瓶颈。 - 检查存储配置: 了解日志文件所在磁盘的物理布局:
- 磁盘类型: HDD? SSD? NVMe? 强烈推荐 SSD/NVMe。
- RAID 级别: 必须是 RAID 10 (或等效镜像)。禁用 RAID 5/6。
- 存储缓存: 确认是否启用 Write-Back 缓存?电池/电容是否正常?这是 HDD 阵列性能的关键! 对于 SSD/NVMe,缓存重要性降低,但控制器处理能力仍重要。
- 位置隔离: 日志文件是否独占专用磁盘/LUN/控制器?绝对避免与数据文件、归档文件、临时文件、Swap 文件等共享!
- 成员分布: 同一个日志组的多个成员是否分布在不同的物理磁盘和不同的控制器上?确保冗余的同时最大化并行写入性能。
- HBA/网络: 对于 SAN/NAS,检查 HBA 卡数量、带宽、光纤通道/网络状态。
- 文件系统 vs 裸设备/ASM: 使用的存储管理方式?建议使用 ASM 或裸设备。
- 操作系统 I/O 监控工具: 这是诊断的核心! 使用工具监控存放联机重做日志文件的磁盘/LUN:
-
检查系统资源:
- CPU: 使用
top,vmstat,sar -u查看总 CPU 和内核态 (%sys) CPU 使用率。高%sys可能与频繁的fsync或 I/O 处理相关。 - 内存: 使用
free,vmstat,sar -r检查是否有严重的内存压力和交换 (Swap Usage,si/soinvmstat)。交换会灾难性地降低 I/O 性能。 - 网络 (SAN/NAS): 如果使用网络存储存放日志,检查网络带宽利用率 (
sar -n DEV) 和错误/丢包率。
- CPU: 使用
-
检查异步 I/O (AIO) 状态:
- 确认 AIO 已启用 (
FILESYSTEMIO_OPTIONS=SETALL或ASYNCH,DISK_ASYNCH_IO=TRUE)。 - 检查操作系统 AIO 配置(如 Linux 的
/proc/sys/fs/aio-max-nr,/proc/sys/fs/aio-nr),确保队列深度足够。
- 确认 AIO 已启用 (
六、 优化建议 (根据排查结果)
-
优化存储性能 (最根本的解决方案):
- 升级日志盘到 SSD/NVMe: 最高优先级和最有效的方案! 将所有联机重做日志文件迁移到专用的 高性能 SSD 或 NVMe 存储上。这能带来数量级的写入性能提升(延迟从毫秒级降到亚毫秒级)并显著降低
fsync影响。 - 专用、隔离的存储: 确保重做日志文件存放在完全独立于数据文件、归档文件、临时文件和其他应用文件的物理磁盘、RAID 组或 LUN 上。独占访问权是关键!
- 优化存储配置:
- RAID 10: 必须使用 RAID 10 (镜像+条带) 提供最佳写入性能和冗余。严禁使用 RAID 5/6。
- 启用并保障 Write-Back 缓存: 对于基于 HDD 的存储阵列,必须启用带电池/闪存保护的
Write-Back缓存,并确保电池/电容健康。这是 HDD 阵列获得低延迟写入的关键。定期检查阵列健康状态。 - 成员分布优化: 同一个日志组的多个成员(通常 2-3 个)必须分布在不同的物理磁盘(最好是不同的 SSD/NVMe 盘)和不同的存储控制器/HBA 卡上。这样并行写入才能真正有效,且一个磁盘/控制器故障不影响日志完整性。避免所有成员在同一物理设备上。
- 增加带宽: 确保 HBA 卡、光纤通道、网络带宽(对于 NAS/SAN)足够支持日志写入峰值。
- 评估裸设备或 ASM: 考虑使用 ASM 或裸设备管理日志文件,避免文件系统层(特别是
fsync)的开销。如果使用文件系统,必须设置FILESYSTEMIO_OPTIONS=SETALL启用 Direct I/O。 - 虚拟化优化: 确保虚拟磁盘配置优化(如厚置备、延迟置零),使用 PVSCSI (VMware) 或 virtio-scsi (KVM) 等高性能虚拟控制器。考虑直通 (Passthrough) 或 SR-IOV。
- 增大日志文件大小: 设置足够大的联机重做日志文件(例如几百 MB 到几 GB),目标是每小时日志切换不超过 3-6 次(根据
Redo size计算)。减少切换频率可以减轻 LGWR 和 ARCn 的负担,并减少检查点。
- 升级日志盘到 SSD/NVMe: 最高优先级和最有效的方案! 将所有联机重做日志文件迁移到专用的 高性能 SSD 或 NVMe 存储上。这能带来数量级的写入性能提升(延迟从毫秒级降到亚毫秒级)并显著降低
-
优化 Oracle 配置与负载:
- 增大 Log Buffer (
LOG_BUFFER): 适当增大(例如 16MB, 32MB, 64MB 甚至更大,取决于 Redo 生成率和 SGA 大小)。更大的 Buffer 允许 LGWR 一次写入更多数据(更大 I/O 请求),提高磁盘利用效率,减少触发频率。避免过大导致浪费。修改需要重启实例。 - 优化高提交频率事务:
- 对于非常短小且频繁提交的事务,评估是否可能批量提交(减少提交次数)。
- 使用
COMMIT WRITE BATCH [NOWAIT](11g+) 允许 LGWR 稍后批量处理提交记录,降低log file sync等待(但牺牲一点持久性保证,需评估业务容忍度)。NOWAIT让提交立即返回,风险更高。 - 确保应用没有不必要的提交。
- 减少 Redo 生成 (如果可能): 虽然通常难以避免,但某些操作可以考虑:
- 使用
NOLOGGING操作(如CREATE TABLE AS SELECT ... NOLOGGING,ALTER TABLE ... MOVE NOLOGGING,Direct Path Load)谨慎减少特定操作的 Redo。注意风险: 需要备份且恢复时可能需要重新执行该操作。 - 使用
UNRECOVERABLE(较旧语法,同NOLOGGING)。 - 减少索引数量(索引 DML 也产生 Redo)。
- 使用
- 调整
_use_adaptive_log_file_sync(谨慎): 默认 TRUE。Oracle 尝试在post/wait(传统) 和polling(使用 LGWR 通知) 机制间自适应切换以优化log file sync。如果怀疑自适应机制本身导致问题(罕见),可尝试设置为 FALSE 强制使用传统post/wait。需充分测试。 - 确保启用 AIO: 设置
FILESYSTEMIO_OPTIONS = SETALL(首选,包含DIRECTIO和ASYNCH),DISK_ASYNCH_IO = TRUE。调整 OS AIO 队列深度(如 Linux 增大fs.aio-max-nr)。
- 增大 Log Buffer (
-
解决系统资源瓶颈:
- 增加 CPU 资源。
- 增加内存,优化配置,彻底避免交换 (
SWAP)。
总结
log file parallel write 是 LGWR 进程的核心等待事件,它直接衡量联机重做日志文件持久化写入磁盘的性能。其高平均等待时间 (Avg Wait (ms) > 5-10ms) 几乎总是意味着日志文件所在的存储写入性能不足、存在争用或持久化要求 (fsync) 带来的高延迟。
排查核心步骤:
- AWR/ASH: 确认
Avg Wait (ms)高,关联log file sync也高。 - OS I/O 工具 (
iostatetc.): 重点检查日志文件所在磁盘的await/w_await/Avg. Disk sec/Write。 该值必须与log file parallel write的Avg Wait (ms)匹配。高即确诊存储写入慢。 - 检查日志成员位置 (
V$LOGFILE): 所有成员是否分布在不同的、专用的、高性能磁盘上? 是否有慢盘拖累? - 检查存储配置: 确认磁盘类型 (必须SSD/NVMe)、RAID (必须10)、缓存 (WB+电池)、是否绝对隔离。
优化核心:
- 日志盘升级到 SSD/NVMe! (解决根本)
- 绝对隔离日志存储! (专用盘/控制器)
- RAID 10 + 健康电池缓存! (HDD阵列必备)
- 优化日志成员分布! (不同物理盘)
- 增大日志文件 & Log Buffer (酌情)!
- 启用 AIO & SETALL!
通过解决底层存储的写入瓶颈和优化 Oracle 日志写入配置,可以显著降低 log file parallel write 和 log file sync 等待时间,大幅提升事务提交速度和数据库在高并发 OLTP 负载下的整体吞吐量。这是保障数据库核心性能的关键优化。
欢迎关注我的公众号《IT小Chen》
8447

被折叠的 条评论
为什么被折叠?



