文档解释
Error number: MY-013939; Symbol: ER_RES_GRP_SWITCH_FAILED_COULD_NOT_ACQUIRE_LOCK; SQLSTATE: HY000
Message: Failed to switch resource group. Could not acquire lock on resource group %s.
错误说明:
MY-013939 是MySQL中一个错误码,错误名称为 ER_RES_GRP_SWITCH_FAILED_COULD_NOT_ACQUIRE_LOCK,对应的SQLSTATE 为 HY000,该错误的意思是在尝试更改资源组时无法获取锁定。
常见案例
当在MySQL中尝试使用 alter resource group 命令进行资源组切换时,可能会出现这个错误,原因是该操作不能获取资源组的互斥锁定,该错误也可能因MySQL服务器’s InnoDB层或作业调度系统的自旋锁的不同步而触发。
解决方法:
1、重启MySQL服务器,以重新定位各表空间的内存数据;
2、在mysql终端下检查可能发生冲突的表空间状态;
3、调整MySQL InnoDB中buffer pool size的大小,以尽量避免出现这种错误;
4、在MySQL中启用XA分布式事务,检查发生冲突的表空间是否对其有访问权;
5、升级MySQL服务器,保证InnoDB层和作业调度系统的自旋锁的时间同步;
6、手动优化MySQL数据库,清理多余的表空间;
7、如果错误持续出现,应尽量避免使用alter resource group命令,或更改表空间的状态(添加或删除行数据,结合select语句等)。