Error number: MY-010436; Symbol: ER_ENGINE_COST_UNKNOWN_STORAGE_ENGINE; SQLSTATE: HY000
Message: Unknown storage engine “%s” in mysql.engine_cost table
错误说明:
ER_ENGINE_COST_UNKNOWN_STORAGE_ENGINE 错误代码意味着MySQL引擎无法估算从某种存储引擎可能产生的操作成本(COST)。这通常是由于MySQL引擎无法识别该存储引擎并且无法采用合适的估算策略。由于MySQL作为关系型数据库管理系统,它有一个优化程序,可以实时估算最佳执行计划,以确保查询在最小的操作成本内获得最佳性能。
此错误经常发生在在尝试使用MySQL时添加了新存储引擎。当MySQL未正确安装此新存储引擎,而MySQL又对此存储引擎一无所知时,就会报出此错误。另一种案例是,当通过某些MySQL操作尝试使用某个已知的存储引擎,而这个引擎本身却不支持相应的操作,服务器也会报出此错误。
解决方法:
1. 优化评估:确保MySQL已经正确安装了所有新增存储引擎,并将其启动。
2. 检查存储引擎是否支持所执行的操作:确认所执行的操作是否有新存储引擎支持,如果没有,请选择默认的存储引擎。
3. 检查语法:确定当前存储引擎是否支持该语句,如果没有,检查语法,或者换用其他部分替代的语法。
4. 更改MySQL配置:调整MySQL的配置以便支持此新存储引擎,并检查是否与MySQL版本兼容,以免出现诸如不受存储引擎支持的新特性等MySQL功能缺失的情况。