Когда докер развертывает проект JeecgBoot, появляется приглашение при запуске: таблица QRTZ_LOCKS не существует.

Моя операция:

1. Используйте Docker для настройки базы данных Mysql.

2. Запустите JeecgApplication.

Подсказка консоли: таблица «jeecg-boot.QRTZ_LOCKS» не существует.

Причина расследования:

1. По подсказке таблица базы данных не должна быть найдена, а таблица подсказок не существует.

2. Из вопросов Github Issues и JeecgBoot FAQ видно, что проблема вызвана чувствительностью к регистру базы данных под Linux.

Решать проблему:

1. Подключитесь к Mysql и введите командную строку MySQL.

2、执行показать глобальные переменные, такие как '%lower_case%';

Просмотр текущей конфигурации MySQL с учетом регистра

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

3、файловая_система в нижнем регистре

Указывает, чувствителен ли текущий системный файл к регистру.Это параметр только для чтения и не может быть изменен.

ВКЛ: указывает, что текущая система не чувствительна к регистру.

ВЫКЛ: указывает, что текущая система чувствительна к регистру.

4、имена_таблиц в нижнем регистре

Указывает имя созданной таблицы данных, учитывается ли регистр.

low_case_table_names = 1: указывает нечувствительность к регистру.

low_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]

おすすめ

転載: blog.csdn.net/weixin_54514751/article/details/129749020