ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

oracle RAC共享存储换盘操作指南

oracle RAC共享存储换盘操作指南 问题Oracle RAC 集群的共享存储需要换盘替换旧盘/故障盘或扩容增加可用空间要求在尽量不影响集群与业务的前提下安全完成共享磁盘的替换与容量扩展。方案前置准备换盘与扩容通用备份先行对数据库做完整备份OCR 用ocrconfig -export 文件名导出表决盘用dd ifvoting_disk of备份文件备份。存储侧规划在新存储上划分与旧盘同等或更大的 LUN扩容时额外预留空间用于 rebalance重平衡期间需要同时容纳新旧副本数据。多路径与权限确认所有 RAC 节点都能看到新盘且设备名、属主/属组、权限在全部节点保持一致ASM 盘一般属主 grid、属组 asmadmin/asmdisk、权限 660表决盘属主 oracle、属组 dba、权限 644。发现磁盘使用 ASMLIB 时执行oracleasm scandisks、oracleasm listdisks使用裸设备/多路径时确认lsblk、multipath -ll在所有节点均能识别同一批设备。必要时调整asm_diskstring。清空新盘新盘加入前先清零盘头避免残留元数据干扰例如dd if/dev/zero of设备 bs4096 count1⚠️ 高危务必确认设备路径误清会破坏 ASM 元数据。场景一ASM 磁盘组扩容加盘适用于数据/归档等 ASM 磁盘组空间不足需要在线增加容量。查看当前磁盘组容量与状态selectname,state,type,total_mb,free_mb,offline_disksfromv$asm_diskgroup;也可用asmcmd lsdg查看 Total_MB / Free_MB / Usable_file_MB。向磁盘组添加新盘在线操作无需停库alterdiskgroupDATAadddisk/dev/asm-diskN;也可带 rebalance 力度... add disk ... rebalance power 4;监控重平衡进度select*fromv$asm_operation;通过asm_power_limit调整重平衡力度力度越大越快但对业务 I/O 影响越大。验证再次查询v$asm_diskgroup确认free_mb已增加、state为 MOUNTED。扩容后必做检查若采用「新建磁盘组」方式扩容须同步更新db_create_file_dest参数或表空间的 default storage 属性否则新数据文件仍会落在旧磁盘组上新增空间无法被利用。场景二ASM 磁盘组换盘替换旧盘 / 故障盘1计划内换盘旧盘仍在线推荐——在线迁移法思路先加新盘 → 触发重平衡把数据搬过去 → 再删除旧盘 → 再次重平衡。全程在线。添加新盘到目标磁盘组alterdiskgroupDATAadddisk/dev/newdisk;等待重平衡完成v$asm_operation无记录、v$asm_diskgroup中各盘使用均衡。删除旧盘按磁盘名删除ASM 自动再次重平衡alterdiskgroupDATAdropdiskDATA_000N;查看盘名与状态selectgroup_number,disk_number,name,path,state,mode_status,mount_statusfromv$asm_disk;等待删除完成、重平衡结束确认旧盘状态为 dropped 后即可在存储侧下线旧盘。切勿中断加盘/删盘操作加盘过程中断如 CtrlC 或连接中断可能导致磁盘组被强制 dismount、控制文件写入报错严重时需用kfed修复 PST 与 disk directory 元数据风险很高。2故障盘替换磁盘已掉线/损坏确认冗余级别v$asm_diskgroup.typeNORMAL/HIGH 有多副本EXTERNAL 为单副本。NORMAL/HIGH冗余副本仍可用直接删除坏盘再补新盘alterdiskgroupDATAdropdiskDATA_000N;alterdiskgroupDATAadddisk/dev/newdisk;EXTERNAL单副本坏盘数据无冗余需从备份恢复RMAN restore/recover不能仅靠加盘恢复。用kfed read 设备检查盘头状态如kfdhdb.hdrsts辅助判断盘是否可用、是否仍属某磁盘组。若盘被强制离线state 显示 FORCING / mode_status 为 offline或出现_dropped前缀盘应先确认磁盘组剩余冗余与表决盘voting disk状态是否正常避免集群因冗余不足而驱逐节点。场景三OCR 与 Voting Disk 换盘 / 迁移当承载 OCR 和表决盘的 LUN 需要更换时须用集群专用命令不能用 cp/dd 直接搬运行中的文件。OCR须以 root 执行CRS 保持运行检查并备份ocrcheck、ocrconfig -showbackup、ocrconfig -export 导出文件。替换/迁移 OCR 主副本须已存在 ocrmirror否则报 PROT-16/PROT-1ocrconfig -replace ocr OCR新位置替换/迁移 OCR 镜像ocrconfig -replace ocrmirror OCR镜像新位置在所有节点执行ocrcheck校验再用crsctl check crs、crs_stat -t确认集群资源正常。Voting Disk须停止 CRS以 root 执行备份ocrconfig -export 导出文件dd ifvoting_disk of备份文件。所有节点停止集群crsctl stop crs。查看当前表决盘位置crsctl query css votedisk。添加新表决盘CRS 停止时用-forcecrsctl add css votedisk 新位置 -force删除旧表决盘crsctl delete css votedisk 旧位置 -force所有节点启动集群crsctl start crs。验证crsctl query css votedisk、crsctl check crs、crs_stat -t。⚠️ 风险提示不得在 CRS 运行时增删表决盘否则可能造成 OCR 损坏换盘前务必确认备份可用。风险提示汇总⚠️ 重平衡rebalance期间 I/O 明显上升大磁盘组可能持续数天务必避开业务高峰必要时可下调asm_power_limit或暂缓。⚠️ 超大磁盘组、大量新盘加入时ASM 实例共享池可能不足出现 ORA-04031 导致实例 hang需评估 ASM 内存配置。⚠️ 加盘/删盘命令一旦执行不要中断避免元数据残留需 kfed 修复。⚠️ 所有节点设备名与权限必须一致多路径未就绪会导致部分节点识别不到盘。⚠️ EXTERNAL 冗余磁盘组换盘无副本保护须走备份恢复流程。
返回列表