Table 'QRTZ_LOCKS' donesn`t exist
1、描述:重启数据库日志报错信息为:Table 'QRTZ_LOCKS' donesn`t exist
截图:
2、分析
由于迁移了数据库,从LINUX服务器A服务mysql迁移到LINUX服务器B。数据库用分布式数据库表为小写的,而在程序配置文件中使用的大写字母,所以导致QRTZ_LOCKS不存在。
问题原理是需要通过配置mysql中my.cnf 配置属性:lower_case_table_names 需要赋值为1。值为1表示忽略大小写。在linux默认为0,代表不忽略大小写导致报错。
3、解决方法
方法一:修改表名称与引用程序、应用配置文件一致,此方法不建议使用因为需要修改地方较多不注意容易犯错。
方法二:通过修改配置文件
(1)、在mysql的my.cnf配置文件中增加lower_case_table_names=1,重启数据库
(2)、数据库后台执行:show variables like '%lower_case_table_names%' 查看查询结构value是否为1. 如果为1修改生效。
查询参照截图: