news 2026/10/6 9:26:16

22、深入探究 RAC 数据库内部机制

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
22、深入探究 RAC 数据库内部机制

深入探究 RAC 数据库内部机制

1. RAC 数据库概述

RAC(Real Application Clusters)集群由单个数据库和多个实例组成。每个实例都有自己的系统全局区(SGA),其结构与单实例 SGA 相同,包含固定和可变内存区域、缓冲区缓存和日志缓冲区。每个实例都可以访问共享数据库,并可能读取或更新任何数据块。为了维护数据的一致性和完整性,需要在实例之间协调数据块的访问,这个过程称为同步。

为了实现集群中实例之间的同步,引入了两个虚拟服务:全局队列服务(GES)和全局缓存服务(GCS)。GES 控制锁的访问,GCS 控制数据块的访问。

2. 全局队列服务(GES)

2.1 GES 的作用

在 RAC 数据库中,GES 负责实例间的资源协调,管理所有非缓存融合的实例内资源操作。它跟踪所有被多个实例访问的资源的 Oracle 队列机制,用于管理事务、表和其他结构的并发访问,同时还负责死锁检测。

2.2 背景进程

GES 主要通过 LMDO 和 LCKO 两个背景进程来执行活动。一般来说,进程与本地的 LMDO 背景进程通信以操作全局资源,本地的 LMDO 背景进程再与其他实例上的 LMDO 进程通信。LCKO 背景进程用于获取整个实例所需的锁,例如维护字典(行)缓存锁。

服务器进程使用异步陷阱(AST)消息与这些背景进程通信,以避免背景进程在等待远程节点实例的回复时阻塞。背景进程还可以向持有锁的进程发送阻塞异步陷阱(BAST),请求将当前持有的锁降级为限制较小的模式。

2.3 资源和队列

资源是一种内存结构,代表数

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/6 2:57:17

MinHook:深入解析Windows系统函数拦截的核心技术

MinHook:深入解析Windows系统函数拦截的核心技术 【免费下载链接】minhook The Minimalistic x86/x64 API Hooking Library for Windows 项目地址: https://gitcode.com/gh_mirrors/mi/minhook 函数拦截的技术挑战与现代解决方案 在Windows系统开发中&#…

作者头像 李华
网站建设 2026/10/6 2:40:40

从「知道死锁」到「真正理解死锁」:一次 MySQL 锁机制的学习记录

1. 为什么我觉得“我懂死锁”,但又好像没真懂?在学习 MySQL 的过程中,死锁几乎是一个“必学概念”:两个事务互相等待数据库回滚其中一个这些我很早就知道了。但在真正开始深入 MySQL 锁机制之前,我发现一个问题&#x…

作者头像 李华
网站建设 2026/10/6 11:09:03

【计算机毕设推荐】基于Spark+Python的饮食风味数据分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习

✍✍计算机毕设指导师** ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡有什么问题可以…

作者头像 李华
网站建设 2026/10/5 21:12:33

小米AI音箱固件兼容性终极指南:告别配置失败,让xiaogpt完美运行

你是否曾经满怀期待地配置好xiaogpt,却发现小米AI音箱毫无反应?或者升级固件后,原本流畅的对话突然中断?别担心,你不是一个人!通过本文的深度测试与分析,我们将帮你彻底解决这些兼容性难题。 【…

作者头像 李华
网站建设 2026/10/5 3:13:00

Cloudpods多云管理平台:从零开始的完整部署与使用指南

Cloudpods多云管理平台:从零开始的完整部署与使用指南 【免费下载链接】cloudpods 开源、云原生的多云管理及混合云融合平台 项目地址: https://gitcode.com/yunionio/cloudpods Cloudpods是一款开源、云原生的多云管理及混合云融合平台,能够帮助…

作者头像 李华