Skip to content

访问数据抛出“存储体正在进行切换操作”错误

在数据库使用过程中,因一些意外原因如服务器宕机、断网、断电、人为误操作或人为KILL数据库节点进程,可能导致存储节点死亡,退出数据库集群。在节点死亡处理过程中,标记该节点存储无效,此时访问到这些存储时,会报错”存储体正在进行切换操作“。在节点判死完成后,会从其他节点选择这些存储的副本成为主版本,则可正常访问。

若需人为KILL数据库节点,需注意KILL节点前,先检查当前数据库存储状态,需要保证集群现有局部存储都处于有效状态:

sql
select store_sta,count(*) from sys_gstores group by store_sta;

STORE_STA用于指示所有版本状态,按位使用由低到高标记第一、第二、第三版本状态信息,每个版本存在4个状态,分别为:

  • 不存在(00)
  • 主版本(01)
  • 副版本(10)
  • 无效版本(11)
表1 存储状态速查表
第一版本第二版本第三版本STORE_STA十进制
0000000
0100001
1000002
1100003
01101041
11011039
11100127
11011155
11110131
11111163

注意:

上述操作请联系技术支持人员实施。