
想学会更多实用技巧,欢迎加入青学会MOP技术社区(实名社区)。
加入方法:公众号后台回复关键字“加入”获取小助手微信,添加后登记入会。

同时欢迎大家在评论区留言互动交流!社区会不定期举行相关的抽奖、公开分享活动。
如果你有想了解的知识点希望我们发文可以后台私信。
正文开始
在当今企业级数据库管理领域,Oracle RAC(Real Application Clusters)作为一项关键的高可用性和扩展性技术,一直是面试中的热门话题。无论是初学者还是资深工程师,掌握RAC的核心概念、架构设计和故障处理能力都是不可或缺的技能。本文整理了50道Oracle RAC相关的面试题及答案,涵盖从基础概念到高级管理的全面知识点,帮助您系统复习并提升面试竞争力。无论您是准备技术面试,还是希望深入理解RAC的工作原理,本文都将为您提供清晰的指导。

1. Oracle RAC的基本概念是什么?
答案:Oracle RAC(Real Application Clusters)是一种允许多个实例同时访问同一数据库的集群技术,提供高可用性和扩展性。
2. RAC环境中主要的后台进程有哪些及其作用?
答案:
LMDn:处理全局锁请求。 LCK0:管理实例级锁。 LMON:监控全局锁和资源。 LMSn:负责全局缓存服务。 RBAL:管理ASM磁盘组的平衡。 ASMB:监控ASM实例。
3. OCR和Voting Disk的作用是什么?
答案:
OCR:存储集群配置信息,用于故障恢复。 Voting Disk:用于节点间投票,解决脑裂问题。
4. 什么是缓存融合(Cache Fusion)?
答案:缓存融合是RAC中通过直接访问其他节点的缓存来减少网络开销,提高数据访问速度的技术。
5. RAC中全局资源目录(GRD)的作用是什么?
答案:GRD跟踪集群资源状态,支持高可用性和负载均衡。
6. 如何查看RAC中节点的资源状态?
答案:使用crsctl stat res -t
命令。
7. RAC中如何实现负载均衡?
答案:通过Oracle Net Services根据负载策略分配客户端请求。
8. RAC中如何处理节点故障(Failover)?
答案:通过Clusterware自动将资源切换到其他节点。
9. RAC中如何配置透明应用故障转移(TAF)?
答案:在tnsnames.ora
中设置FAILOVER=on
,并选择SESSION或SELECT模式。
10. RAC中如何查看节点的VIP状态?
答案:使用srvctl status vip -n <节点名>
命令。
11. RAC中如何创建ASM磁盘组?
答案:使用SQL语句CREATE DISKGROUP <名称> <冗余类型> DISK '<磁盘路径>'
。
12. RAC中如何查看ASM磁盘组的状态?
答案:查询V$ASM_DISKGROUP
视图。
13. RAC中如何添加磁盘到ASM磁盘组?
答案:使用ALTER DISKGROUP <名称> ADD DISK '<磁盘路径>'
。
14. RAC中如何删除ASM磁盘组?
答案:使用DROP DISKGROUP <名称>
。
15. RAC中如何查看数据库实例的状态?
答案:使用srvctl status instance -d <数据库名> -i <实例名>
。
16. RAC中如何启动/停止整个集群?
答案:使用crsctl start crs
和crsctl stop crs
(需root权限)。
17. RAC中如何查看集群的版本信息?
答案:使用crsctl query crs softwareversion
。
18. RAC中如何查看投票磁盘的位置?
答案:使用crsctl query css votedisk
。
19. RAC中如何移动投票磁盘?
答案:使用crsctl replace votedisk <新位置>
。
20. RAC中如何查看OCR备份信息?
答案:使用ocrconfig -showbackup
。
21. RAC中如何检查OCR状态?
答案:使用ocrcheck
命令。
22. RAC中如何查看节点的私网信息?
答案:使用oifcfg getif
。
23. RAC中如何查看集群的活动版本?
答案:使用crsctl query crs activeversion
。
24. RAC中如何查看节点的CRS状态?
答案:使用crsctl check crs
。
25. RAC中如何查看所有CRS资源状态?
答案:使用crsctl stat res -t
。
26. RAC中如何查看节点的SCAN IP配置?
答案:使用srvctl config scan
。
27. RAC中如何查看节点的监听器状态?
答案:使用srvctl status listener
。
28. RAC中如何查看数据库的配置信息?
答案:使用srvctl config database -d <数据库名>
。
29. RAC中如何查看ASM实例的状态?
答案:使用srvctl status asm
。
30. RAC中如何查看节点的VIP别名?
答案:使用srvctl config nodeapps
。
31. RAC中如何查看节点的公共IP和私有IP?
答案:查看/etc/hosts
文件配置。
32. RAC中如何查看节点的内存管理模式?
答案:查询V$MEMORY_DYNAMIC_COMPONENTS
视图。
33. RAC中如何查看节点的SGA和PGA分配?
答案:查询V$SGA
和V$PGA
视图。
34. RAC中如何查看节点的用户资源限制?
答案:查看/etc/security/limits.conf
文件。
35. RAC中如何查看节点的内核参数配置?
答案:查看/etc/sysctl.conf
文件。
36. RAC中如何查看节点的环境变量配置?
答案:查看/home/oracle/.bash_profile
或/home/grid/.bash_profile
。
37. RAC中如何查看节点的多路径配置?
答案:查看/etc/multipath.conf
文件。
38. RAC中如何查看节点的Udev规则?
答案:查看/etc/udev/rules.d/
目录下的规则文件。
39. RAC中如何查看节点的SSH互信配置?
答案:使用ssh -V
检查SSH版本,或直接测试节点间SSH连接。
40. RAC中如何查看节点的Grid Infrastructure状态?
答案:使用crsctl check has
。
41. RAC中如何查看节点的数据库实例启动模式?
答案:查询V$INSTANCE
视图中的STATUS
和DATABASE_STATUS
字段。
42. RAC中如何查看节点的归档日志配置?
答案:查询V$ARCHIVED_LOG
视图。
43. RAC中如何查看节点的控制文件位置?
答案:查询V$CONTROLFILE
视图。
44. RAC中如何查看节点的数据文件位置?
答案:查询DBA_DATA_FILES
视图。
45. RAC中如何查看节点的重做日志文件状态?
答案:查询V$LOG
和V$LOGFILE
视图。
46. RAC中如何查看节点的闪回恢复区使用情况?
答案:查询V$FLASH_RECOVERY_AREA_USAGE
视图。
47. RAC中如何查看节点的告警日志位置?
答案:查询V$DIAG_INFO
视图中的DIAGNOSTIC_DEST
字段。
48. RAC中如何查看节点的网络配置?
答案:查看/etc/sysconfig/network-scripts/
目录下的网络配置文件。
49. RAC中如何查看节点的存储规划?
答案:查看OCR
、DATA
、ARCH
等磁盘组的配置。
50. RAC中如何查看节点的安装包版本?
答案:查看安装包的文件名(如LINUX.X64_193000_grid_home.zip
)或使用opatch lspatches
。
通过以上50道面试题的梳理,我们全面覆盖了Oracle RAC的核心知识点,包括集群架构、资源管理、故障处理以及性能优化等方面。这些内容不仅是面试中高频出现的考点,更是实际工作中解决复杂问题的关键技能。希望本文能帮助您在面试中脱颖而出,同时为您的日常运维工作提供参考。记住,掌握RAC不仅需要理论知识,还需要结合实际操作不断积累经验。祝愿您在面试中取得优异成绩,迈向职业发展的新高度!
往期文章回顾
MOP社区新闻
金仓专栏
告别繁琐!KingbaseES v9数据库一键安装-青学会&金仓专栏(1)
KingbaseES v9数据库Docker安装-青学会&金仓专栏(2)
DBA实战小技巧
实战:记一次RAC故障排查
DBA实战运维小技巧安装篇(一)Oracle 主流版本不同架构下的静默安装指南
DBA实战运维小技巧存储篇(一)根目录满了如何处理
DBA实战运维小技巧存储篇(二)打包迁移单机数据库至新存储
MOP社区投稿-内核开发
简单解析 IvorySQL 增强 Oracle xml 兼容能力的原理
简单讨论 PostgreSQL C语言拓展函数返回数据表的方式
简单分析 pg_config 程序的作用与原理
Redis 日志机制简介(一):SlowLog
Redis 日志机制简介(二):AOF 日志
Redis 日志机制简介(三):RDB 日志
pg_cron插件使用介绍
Redis 的指令表实现机制简介
pg几款源码工具介绍
Redis 事务功能简介




