You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

误添加P40磁盘至Azure SQL虚拟机后Repair-VirtualDisk任务挂起求助

问题:Azure SQL虚拟机中Retired磁盘的Repair-VirtualDisk任务挂起

问题背景

  • 误将P40磁盘添加至市场版Azure SQL服务器/虚拟机
  • 已完成物理磁盘的Retired状态设置(截图:物理磁盘Retired状态截图)
  • 执行命令 Repair-VirtualDisk -Friendlyname "<你的虚拟磁盘名称>" 后,修复任务持续处于挂起状态(截图:Repair-VirtualDisk任务挂起截图)

排查与解决步骤

1. 先确认存储资源状态

执行以下PowerShell命令,检查存储池和虚拟磁盘的健康、运行状态:

Get-StoragePool | Select-Object FriendlyName, HealthStatus, OperationalStatus
Get-VirtualDisk | Select-Object FriendlyName, HealthStatus, OperationalStatus, ResiliencySettingName, NumberOfCopies

重点关注:虚拟磁盘是否处于Degraded状态、存储池的健康状态、副本数配置是否与剩余容量匹配。

2. 终止挂起的修复任务

先强制停止当前卡住的修复进程:

Get-StorageJob | Where-Object {$_.Operation -eq "Repair" -and $_.Status -eq "Suspended"} | Stop-StorageJob -Force

等待任务完全终止后,再重新尝试修复操作。

3. 检查存储池可用容量

修复虚拟磁盘需要足够的空闲容量来重建数据。执行命令查看容量情况:

Get-StoragePool | Select-Object FriendlyName, AvailableCapacity, AllocatedCapacity

如果可用容量小于虚拟磁盘已用容量的1/N(N为副本数,如镜像模式N=2),需先扩容存储池或释放冗余空间。

4. 适配Azure环境的特殊配置

  • 统一磁盘缓存策略:在Azure门户中检查所有数据盘的缓存设置,确保P40磁盘与原有磁盘的缓存策略一致(Azure SQL虚拟机通常使用Read-only或None)。
  • 排查IOPS配额限制:修复过程中可能触发Azure磁盘IOPS阈值,可在虚拟机监控面板查看磁盘IO指标,确认是否存在瓶颈。

5. 手动移除Retired磁盘(备选方案)

若修复任务始终无法推进,可尝试直接移除Retired磁盘并重新平衡存储池:

  1. 提前备份虚拟磁盘数据(重要!)
  2. 执行移除命令:
Remove-PhysicalDisk -StoragePoolFriendlyName "<存储池名称>" -PhysicalDisks (Get-PhysicalDisk | Where-Object {$_.OperationalStatus -eq "Retired"})
  1. 重新平衡存储池:
Optimize-StoragePool -FriendlyName "<存储池名称>"

内容的提问来源于stack exchange,提问作者Reinard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 02:23:20