docker部署JeecgBoot项目时启动提示:QRTZ_LOCKS表不存在

我的操作:

1、使用Docker配置好Mysql数据库

2、启动JeecgApplication

控制台提示:Table ‘jeecg-boot.QRTZ_LOCKS’ doesn’t exist

排查原因:

1、根据提示,应该是数据库表没有找到,提示表不存在

2、通过 Github Issues、JeecgBoot常见问题答疑,可知是由于linux下数据库对大小写敏感导致。

解决问题:

1、连接Mysql并进入mysql命令行

2、执行show global variables like ‘%lower_case%’;

查看当前mysql的大小写敏感配置

±------------------------------------±------+
| Variable_name | Value |
±------------------------------------±------+
| lower_case_file_system | OFF |
| lower_case_table_names | 0 |
±------------------------------------±------+

3、lower_case_file_system

表示当前系统文件是否大小写敏感,只读参数,无法修改。

ON:表示当前系统对大小写不敏感

OFF:表示当前系统对大小写敏感

4、lower_case_table_names

表示创建的数据表名,是否区分大小写

lower_case_table_names = 1 :表示不区分大小写

lower_case_table_names = 0 :表示区分大小写

5、外部进入容器内部:

docker exec -it [容器id] bash

6、进入配置文件:

vim /etc/mysql/mysql.conf.d/mysqld.cnf

在[mysqld]最后一行添加:

lower_case_table_names=1

7、保存退出,重启容器即可

docker restart [容器id]

你可能感兴趣的:(docker,linux,数据库,docker,数据库,mysql)