我们的文章会在微信公众号IT民工的龙马人生博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢!

由于博客中有大量代码,通过页面浏览效果更佳。

这是今年和朋友一起讨论的第5个关于一体机磁盘故障的案例,这几个案例都有一个通用的问题就是朋友他们把Oracle一体机当着普通的X86服务器来维护,最后在磁盘更换后引起各种问题。其实在上一篇文章中,我们就说过Oracle一体机是软硬一体机架构,磁盘故障的发现和更换都不能基于普通X86模式来弄,这里我们把建议部分放到开头,希望能引起大家的注意。

5,建议

Oracle一体机的硬件运维与普通x86服务器有本质区别,尤其是在磁盘和存储子系统的管理上,需要用户引起高度重视:

  • 软硬件深度融合:Oracle一体机将硬件(如磁盘、控制器、HBA卡等)与专有的软件栈(如CellCLI、自动化健康检测、磁盘隔离机制等)深度集成。任何硬件更换或调整,都会被系统自动检测并触发一系列自保护和校验机制,这与普通x86服务器“即插即用”的理念完全不同。

  • 磁盘状态自动管理:一体机会根据I/O错误、健康状态等自动将磁盘隔离(如confinedOffline),并进行后续检测和处理。普通x86服务器通常只依赖SMART等简单健康检测,磁盘异常时不会自动隔离,更多依赖人工介入。

  • 更换硬件需配合软件操作:在Oracle一体机上,硬件更换(如HBA卡、磁盘、RAID卡等)后,往往需要配合专有命令(如CellCLI)进行状态同步、重检测、强制上线等操作,否则即使物理更换完成,系统层面依然无法正常识别和使用新硬件。而普通x86服务器更换硬件后,操作系统通常能自动识别并使用。

  • 运维知识储备:建议运维人员定期学习Oracle一体机相关的硬件管理、告警处理、恢复操作等知识,避免用传统x86服务器的思路处理一体机故障,减少因操作不当带来的风险。

总之,Oracle一体机的磁盘和存储管理机制远比普通x86服务器复杂和严格,任何硬件操作都需谨慎,务必遵循官方流程和最佳实践,确保数据安全和业务连续。

1,故障描述

朋友反应X7一体机更换HBA卡后,部分磁盘的状态异常,让帮忙分析一下,状态信息如下:

CellCLI> list physicaldisk
252:0 QWE45T normal
252:1 ZXC12V warning - confinedOffline - powering off
252:2 BNM67U warning - confinedOffline - powering off
252:3 YUI89O normal
252:4 MNB34R warning - confinedOffline - powering off
252:5 LKJ56P normal
FLASH_10_1 XJKE942601126Q8WZ-1 normal
FLASH_10_2 XJKE942601126Q8WZ-2 normal
FLASH_5_1 XJKE942601276Q8WZ-1 normal
FLASH_5_2 XJKE942601276Q8WZ-2 normal
M2_SYS_0 XJDW9420020Q2150B normal
M2_SYS_1 XJDW9420020N150B normal

2,故障分析

warning - confinedOffline其实是一个中间状态,是一体机认为磁盘有问题后,主动对磁盘进行隔离。隔离后一体机会主动对磁盘进行测试,如果测试正常,那么清除此状态;如果测试磁盘后确认存在问题,会更改磁盘状态到对应的错误的状态。

2.1 查看alert日志

27_1     2025-06-19T00:37:31+08:00  critical    "DiskController check has detected the following issue(s):     Attribute Name : DiskControllerModel     Required       : Avago MegaRAID SAS 9361-16i     Found          : Unknown     Attribute Name : DiskControllerFirmwareRevision     Required       : 24.19.0-0063     Found          : Unknown"
27_2 2025-07-03T18:56:26+08:00 clear "Check for configuration of DiskController is successful." 28_133 2025-06-19T22:22:49+08:00 info "Data hard disk entered confinement status. The LUN 0_1 changed status to warning - confinedOnline. CellDisk changed status to normal - confinedOnline. Status : WARNING - CONFINEDONLINE Manufacturer : HGST Model Number : X7210B520QUN010Y Size : 010T Serial Number : 1841ZXC12V Firmware : B4Y2 Slot Number : 1 Cell Disk : CD_01_nodeadm99 Grid Disk : RECOC1_CD_01_nodeadm99, DATAC1_CD_01_nodeadm99 Reason for confinement : threshold for disk I/O errors exceeded."
28_134 2025-06-19T22:23:27+08:00 warning "Data hard disk entered confinement offline status. The LUN 0_1 changed status to warning - confinedOffline. CellDisk changed status to normal - confinedOffline. All subsequent I/Os on this disk are failed immediately. Confinement tests will be run on the disk to determine if the disk should be dropped. Status : WARNING - CONFINEDOFFLINE Manufacturer : HGST Model Number : X7210B520QUN010Y Size : 010T Serial Number : 1841ZXC12V Firmware : B4Y2 Slot Number : 1 Cell Disk : CD_01_nodeadm99 Grid Disk : RECOC1_CD_01_nodeadm99, DATAC1_CD_01_nodeadm99 Reason for confinement : threshold for disk I/O errors exceeded."
29_1 2025-06-19T08:31:56+08:00 info "Data hard disk entered confinement status. The LUN 0_2 changed status to warning - confinedOnline. CellDisk changed status to normal - confinedOnline. Status : WARNING - CONFINEDONLINE Manufacturer : HGST Model Number : X7210B520QUN010Y Size : 010T Serial Number : 1840BNM67U Firmware : B4Y2 Slot Number : 2 Cell Disk : CD_02_nodeadm99 Grid Disk : DATAC1_CD_02_nodeadm99, RECOC1_CD_02_nodeadm99 Reason for confinement : threshold for disk I/O errors exceeded."
29_2 2025-06-19T09:31:15+08:00 info "Data hard disk entered confinement status. The LUN 0_2 changed status to warning. CellDisk changed status to normal - confinedOnline. Status : NORMAL Manufacturer : HGST Model Number : X7210B520QUN010Y Size : 010T Serial Number : 1840BNM67U Firmware : B4Y2 Slot Number : 2 Cell Disk : CD_02_nodeadm99 Grid Disk : DATAC1_CD_02_nodeadm99, RECOC1_CD_02_nodeadm99 Reason for confinement : threshold for disk I/O errors exceeded."

这里明确显示了磁盘因为IO错误次数达到了阈值,一体机主动将磁盘进行隔离。

2.2 查看磁盘详细信息

CellCLI> list physicaldisk 252:1 detail
name: 252:1
deviceId: 16
deviceName: /dev/sdd
diskType: HardDisk
enclosureDeviceId: 252
errOtherCount: 0
luns: 0_1
makeModel: "HGST X7210B520QUN010Y"
physicalFirmware: B4Y2
physicalInsertTime: 2025-07-03T18:33:51+08:00
physicalInterface: sas
physicalSerial: ZXC12V
physicalSize: 8.91015625T
slotNumber: 1
status: warning - confinedOffline - powering off CellCLI> list physicaldisk 252:0 detail
name: 252:0
deviceId: 15
deviceName: /dev/sdc
diskType: HardDisk
enclosureDeviceId: 252
errOtherCount: 0
luns: 0_0
makeModel: "HGST X7210B520QUN010Y"
physicalFirmware: B4Y2
physicalInsertTime: 2019-03-01T12:00:51+08:00
physicalInterface: sas
physicalSerial: QWE45T
physicalSize: 8.91015625T
slotNumber: 0
status: normal

通过physicalInsertTime后面的时间,可以发现正常的磁盘在控制器更换后正常加入时间是对的,异常的磁盘在控制器更换后加入的时间为控制器更换的时间。

2.3 手动测试磁盘

通过smartctl来手动测试磁盘时,并没有提示坏块,也没有触发IO的错误,可以确认磁盘是好的。

smartctl -H /dev/sdg
smartctl 5.43 2012-06-30 r3573 [x86_64-linux-4.1.12-94.8.4.el6uek.x86_64] (local build)
Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net

3,故障原因

磁盘控制器故障后,导致磁盘在写入时报IO错误,一体机主动将磁盘隔离,隔离后一体机主动的磁盘检查功能未完成对磁盘的检查,此时更换磁盘控制器,导致磁盘的状态最后变成warning - confinedOffline - powering off。

4,解决方案:

  • 磁盘删除后更换新的磁盘。
  • 老磁盘强制加入到一体机中,此操作有一定风险(本次建议朋友采用的这一步)。
  • 删除此存储节点的磁盘状态和分配的2进制文件,重启存储节点服务,重新生成对应的2进制文件。
  • 手动修改上面2进制文件,恢复磁盘状态(目前还没有找到对应的方法)

5,建议

Oracle一体机的硬件运维与普通x86服务器有本质区别,尤其是在磁盘和存储子系统的管理上,需要用户引起高度重视:

  • 软硬件深度融合:Oracle一体机将硬件(如磁盘、控制器、HBA卡等)与专有的软件栈(如CellCLI、自动化健康检测、磁盘隔离机制等)深度集成。任何硬件更换或调整,都会被系统自动检测并触发一系列自保护和校验机制,这与普通x86服务器“即插即用”的理念完全不同。

  • 磁盘状态自动管理:一体机会根据I/O错误、健康状态等自动将磁盘隔离(如confinedOffline),并进行后续检测和处理。普通x86服务器通常只依赖SMART等简单健康检测,磁盘异常时不会自动隔离,更多依赖人工介入。

  • 更换硬件需配合软件操作:在Oracle一体机上,硬件更换(如HBA卡、磁盘、RAID卡等)后,往往需要配合专有命令(如CellCLI)进行状态同步、重检测、强制上线等操作,否则即使物理更换完成,系统层面依然无法正常识别和使用新硬件。而普通x86服务器更换硬件后,操作系统通常能自动识别并使用。

  • 运维知识储备:建议运维人员定期学习Oracle一体机相关的硬件管理、告警处理、恢复操作等知识,避免用传统x86服务器的思路处理一体机故障,减少因操作不当带来的风险。

总之,Oracle一体机的磁盘和存储管理机制远比普通x86服务器复杂和严格,任何硬件操作都需谨慎,务必遵循官方流程和最佳实践,确保数据安全和业务连续。

------------------作者介绍-----------------------

姓名:黄廷忠

现就职:Oracle中国高级服务团队

曾就职:OceanBase、云和恩墨、东方龙马等

电话、微信、QQ:18081072613

个人博客: (http://www.htz.pw)

CSDN地址: (https://blog.csdn.net/wwwhtzpw)

博客园地址: (https://www.cnblogs.com/www-htz-pw)


故障处理:Oracle一体机更换磁盘控制器后部分磁盘状态异常的案例处理的更多相关文章

  1. Mac Pro更换SSD后,在Win7下启用ACHI的方法AHCI

    在Mac Pro下更换SSD后,如果安装Win7,要将SSD改为AHCI模式是非常麻烦的.本文介绍如何将Mac的Win7下的SSD改为AHCI方式驱动,及几种常见问题的处理. 一.当Lion与Win7 ...

  2. 一步一步搭建oracle 11gR2 rac+dg之共享磁盘设置(三)【转】

    一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之共享磁盘准备 (三) 注意:这一步是配置rac的过程中非常重要的一步,很多童鞋 ...

  3. 使用 MegaCLI 检测磁盘状态并更换磁盘

    专栏首页阿dai_linux使用 MegaCLI 检测磁盘状态并更换磁盘 原 10

  4. Windows 10系统更换Windows 7系统磁盘分区注意事项一

    新买的电脑预装系统是WIN10,考虑到兼容性问题,打算更换为WIN7,但在新机上不能直接装WIN7系统,需要在BIOS启动中做一点小改动. 原因分析:由于Windows 8采用的是UEFI引导和GPT ...

  5. DBCP连接Oracle,数据库重启后现OALL8 is in an inconsistent state异常

    最近,DBCP连接Oracle,数据库重启后现OALL8 is in an inconsistent state异常. 版本说明 commons-dbcp-1.4.jar commons-pool-1 ...

  6. PLSQL往Oracle数据库插入中文后变为问号 和 启动PLSQL时提示NLS_LANG在客户端不能确定的解决办法

    PLSQL往Oracle数据库插入中文后变为问号 和 启动PLSQL时提示NLS_LANG在客户端不能确定的解决办法 1.检查服务器的字符编码 Select * from V$NLS_PARAMETE ...

  7. Oracle误删除表数据后的恢复具体解释

    Oracle误删除表数据后的恢复具体解释 測试环境: SYSTEM:IBM AIX 5L                         Oracle Version:10gR2 1. undo_re ...

  8. 织梦DEDECMS更换目录后页面内的图片和缩略图无法显示解决方法

    http://www.win8f.com/seoyouhua/6609.html 很多人碰到织梦更换目录后内容图片和缩略图无法显示的问题,在此,慧鸿网络特地搜集整理了一篇关于织梦出现缩略图和内容无法显 ...

  9. Harbor删除镜像后且GC清理后,磁盘空间没有释放的问题

    1.原因 Harbor删除镜像后且GC清理后,磁盘空间没有释放.因为我们push大量相同标签的镜像,Docker 镜像由标签引用,并由唯一的摘要标识.这意味着如果myImage使用标记推送两个图像,在 ...

  10. 当ORACLE归档日志满后如何正确删除归档日志

    当ORACLE 归档日志满了后,将无法正常登入ORACLE,需要删除一部分归档日志才能正常登入ORACLE. 一.首先删除归档日志物理文件,归档日志一般都是位于archive目录下,AIX系统下文件格 ...

随机推荐

  1. C# 工业视觉开发必刷20道 Halcon 面试题

    前言 随着工业4.0的深入推进,越来越多的企业开始重视智能制造和自动化生产.在这个背景下,对具备C#和Halcon开发经验的专业人才需求也日益增长. 为了帮助广大 C#工业视觉开发的朋友更好地备战面试 ...

  2. Grafana将弃用AngularJS-我们该如何迁移

    AngularJS 弃用时间线 AngularJS 支持已在 Grafana 9 中正式弃用.在 2024 年 5 月发布的 Grafana 11 中,所有 Grafana Cloud 和自托管安装默 ...

  3. 🎀springboot banner介绍及使用

    简介 Banner是指应用程序启动时显示的信息.对于Spring Boot应用来说,默认情况下,当你启动一个 Spring Boot应用时,控制台上会打印出一段由 Spring Boot自带的ASCI ...

  4. 【work记录:c++web聊天服务器】解决了聊天窗口的问题|修复了"没有区分好友或者群聊的聊天窗口"的bug|修复了"群聊消息undefined"的bug

    日期:2025.4.24 学习内容: 解决了聊天窗口的问题 修复了"没有区分好友或者群聊的聊天窗口"的bug 修复了"群聊消息undefined"的bug 个人 ...

  5. hadoop部署安装(三)zookeeper+yarn

    1. 配置zookeeper 3.1 解压存放指定目录 [root@bogon src]# tar xf zookeeper-3.4.10.tar.gz [root@bogon src]# mv zo ...

  6. 【笔记】Excel 2021|(二)VBA删除数组中的一个元素、循环时删除一行、选择一列删除指定一行

    主要问题是循环的时候删除一行比较麻烦,因为删除了一行后,循环仍然直接访问后一行,会导致一定的异常. 文章目录 选择一列,删除指定一行 删除数组中的一个元素 方法1:利用动态数组,在循环中条件判断删除 ...

  7. 【HUST】网安|操作系统实验|实验三 内存管理

    文章目录 任务 任务1 Win/Linux编写二维数组遍历程序,理解局部性的原理. 1. 提示 2. 任务代码 3. 结果及说明 任务2 Windows/Linux模拟实现OPT和LRU淘汰算法. 1 ...

  8. js技术之获取当前元素的上一个/下一个兄弟级元素等元素的方法(获取上一个/下一个input)

    一.说明 jQuery获取: jQuery.parent(expr),找父亲节点,可以传入expr进行过滤,比如$("span").parent()或者$("span&q ...

  9. MyCAT 2实现mysql8主从同步读写分离

    一.MyCAT2介绍 1.1 什么是MyCAT?MyCAT是目前最流行的分布式数据库中间插件,是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器.前端用户可以把它看作一个数据库代理,用M ...

  10. centos7部署keepalived

    yum install keepalived -y 修改/etc/keepalived.conf配置文件,达到高可用状态 vim /etc/keepalived/keepalived.conf ! C ...