Проблема с DB MariaDB-10 для Traccar

kaket079 months ago

Здравствуйте.
Столкнулся с неприятной историей по BD где Traccar хранит данные. Как я понял, вне зависимости от версии сервера Traccar, работает и хранит данные в таблицах UTF8 (UTF8_general_ci). Использовал MariaDB 10 (10.3.32.0) и не знал проблем. Но когда настало время поставить (перенести) на другой компьютер Maria DB 10, взял по старше версию (актуальную даже не подозревая о проблеме) и как оказалось работа BD прекращена UTF8 (UTF8_general_ci) ее просто нет в новых версиях. В новых версиях возможность есть использовать только UTF8mb3 (mb4) и старше как UTF16 (16le), UTF32. Вот - Images.
Подскажите, как быть в этой ситуации, возвращаться к старой версии Maria DB или есть вариант перехода но другой вариант типа таблиц в Maria DB?

kaket079 months ago

Может подскажите какой нужно использовать правильный драйвер или корректный адрес для работы с BD UTF8mb3 (UTF8mb3_general_ci) или UTF8mb4 (UTF8mb4_general_ci) в файле "traccar.xml" в строке:

<entry key='database.driver'>org.mariadb.jdbc.Driver</entry>

и

<entry key='database.url'>jdbc:mariadb://localhost/traccar?serverTimezone=UTC&amp;allowPublicKeyRetrieval=true&amp;useSSL=false&amp;allowMultiQueries=true&amp;autoReconnect=true&amp;useUnicode=yes&amp;characterEncoding=UTF-8&amp;sessionVariables=sql_mode=''</entry>
kaket079 months ago

В логе у меня следующее:

2023-07-30 21:32:06  INFO: Operating system name: Windows 10 version: 10.0 architecture: amd64
2023-07-30 21:32:06  INFO: Java runtime name: OpenJDK 64-Bit Server VM vendor: Eclipse Adoptium version: 17.0.6+10
2023-07-30 21:32:06  INFO: Memory limit heap: 4070mb non-heap: 0mb
2023-07-30 21:32:06  INFO: Character encoding: Cp1251 charset: windows-1251
2023-07-30 21:32:06  INFO: Version: 5.8
2023-07-30 21:32:06  INFO: Starting server...
2023-07-30 21:32:06  INFO: HikariPool-1 - Starting...
2023-07-30 21:32:12 ERROR: HikariPool-1 - Exception during pool initialization. - Unknown system variable 'transaction_isolation' - CJException (... < DatabaseModule:79 < <gener:-1 < *:-1 < ... < MainModule:123 < ...)
2023-07-30 21:32:12 ERROR: Main method error - Unknown system variable 'transaction_isolation' - CJException (... < DatabaseModule:79 < <gener:-1 < *:-1 < ... < MainModule:123 < ...)
2023-07-30 21:32:12  WARN: JNA: Callback org.traccar.WindowsService$ServiceMain@4ebff610 threw the following exception - Unknown system variable 'transaction_isolation' - CJException (... < DatabaseModule:79 < <gener:-1 < *:-1 < ... < MainModule:123 < ...)
kaket079 months ago

Делал таблицу "UTF8mb4_general_ci" или нужно "UTF8mb4_unicode_ci"...
Я окончательно потерялся.

Anton Tananaev9 months ago
kaket079 months ago

Добрый день.
Почитал пост, попробовал применить указанное, не получилось.

<entry key='database.driver'>org.mariadb.jdbc.Driver</entry>
<entry key='database.url'>jdbc:mariadb://localhost:3307/traccar?serverTimezone=UTC&amp;allowPublicKeyRetrieval=true&amp;useSSL=false&amp;allowMultiQueries=true&amp;autoReconnect=true&amp;useUnicode=yes&amp;characterEncoding=utf8&amp;sessionVariables=sql_mode=''</entry>

Лог получаю такой:

2023-08-12 16:28:40  INFO: Operating system name: Windows 10 version: 10.0 architecture: amd64
2023-08-12 16:28:40  INFO: Java runtime name: OpenJDK 64-Bit Server VM vendor: Eclipse Adoptium version: 17.0.6+10
2023-08-12 16:28:40  INFO: Memory limit heap: 4070mb non-heap: 0mb
2023-08-12 16:28:40  INFO: Character encoding: Cp1251 charset: windows-1251
2023-08-12 16:28:40  INFO: Version: 5.8
2023-08-12 16:28:40  INFO: Starting server...
2023-08-12 16:28:40 ERROR: Main method error - org.mariadb.jdbc.Driver - ClassNotFoundException (... < DatabaseModule:63 < <gener:-1 < *:-1 < ... < MainModule:123 < ...)
2023-08-12 16:28:40  WARN: JNA: Callback org.traccar.WindowsService$ServiceMain@4ebff610 threw the following exception - org.mariadb.jdbc.Driver - ClassNotFoundException (... < DatabaseModule:63 < <gener:-1 < *:-1 < ... < MainModule:123 < ...)
Anton Tananaev9 months ago

А вы обновиться не забыли?

kaket079 months ago

Обновиться. Имеете ввиду обновить версию Traccar?

Anton Tananaev9 months ago

Еще раз внимательно почитайте топик по ссылке.

kaket079 months ago

Версия 5.8 установлена в Windows.

kaket079 months ago

Я испробовал в принципе разные варианты из топика:

  • Обновление Traccar
  • Обновить драйвер в фале конфигурации
  • Изменить порт 3306 на 3307 в файле конфигурации
  • Изменить порт при установки MariaDB

Или что то упущено?

Anton Tananaev9 months ago

Если под обновлением вы имеете ввиду до 5.8, то да, упущено. Читайте еще раз внимательно.

kaket079 months ago

Читать внимательнее уже просто некуда.

  • Traccar 5.8 (и привью) удачно подключается к базе c MariaBD 10.3:
    <entry key='database.driver'>com.mysql.cj.jdbc.Driver</entry>
    <entry key='database.url'>jdbc:mysql://localhost:3307/traccar?serverTimezone=UTC&amp;useSSL=false&amp;allowMultiQueries=true&amp;autoReconnect=true&amp;useUnicode=yes&amp;characterEncoding=UTF-8&amp;sessionVariables=sql_mode=''</entry>
  • Traccar 5.8 (и привью) не подключается базе c MariaBD 11 при одинаковых настройках.
    Ошибка:

2023-08-12 23:23:59 INFO: Operating system name: Windows 10 version: 10.0 architecture: amd64 2023-08-12 23:23:59 INFO: Java runtime name: OpenJDK 64-Bit Server VM vendor: Eclipse Adoptium version: 17.0.6+10 2023-08-12 23:23:59 INFO: Memory limit heap: 4070mb non-heap: 0mb 2023-08-12 23:23:59 INFO: Character encoding: Cp1251 charset: windows-1251 2023-08-12 23:23:59 INFO: Version: 5.8 2023-08-12 23:23:59 INFO: Starting server... 2023-08-12 23:23:59 INFO: HikariPool-1 - Starting... 2023-08-12 23:24:04 ERROR: HikariPool-1 - Exception during pool initialization. - Unknown system variable 'transaction_isolation' - CJException (... < DatabaseModule:79 < <gener:-1 < *:-1 < ... < MainModule:123 < ...) 2023-08-12 23:24:04 ERROR: Main method error - Unknown system variable 'transaction_isolation' - CJException (... < DatabaseModule:79 < <gener:-1 < *:-1 < ... < MainModule:123 < ...) 2023-08-12 23:24:05 WARN: JNA: Callback org.traccar.WindowsService$ServiceMain@4ebff610 threw the following exception - Unknown system variable 'transaction_isolation' - CJException (... < DatabaseModule:79 < <gener:-1 < *:-1 < ... < MainModule:123 < ...)

Меняю настройки драйвера как указано в ссылке на другой пост, в "traccar.xml", указывая "org.mariadb.jdbc.Driver", и database.url "jdbc:mysql" на "jdbc:mariadb".

2023-08-12 23:28:40 INFO: Operating system name: Windows 10 version: 10.0 architecture: amd64 2023-08-12 23:28:40 INFO: Java runtime name: OpenJDK 64-Bit Server VM vendor: Eclipse Adoptium version: 17.0.6+10 2023-08-12 23:28:40 INFO: Memory limit heap: 4070mb non-heap: 0mb 2023-08-12 23:28:40 INFO: Character encoding: Cp1251 charset: windows-1251 2023-08-12 23:28:40 INFO: Version: 5.8 2023-08-12 23:28:40 INFO: Starting server... 2023-08-12 23:28:40 ERROR: Main method error - org.mariadb.jdbc.Driver - ClassNotFoundException (... < DatabaseModule:63 < <gener:-1 < *:-1 < ... < MainModule:123 < ...) 2023-08-12 23:28:40 WARN: JNA: Callback org.traccar.WindowsService$ServiceMain@4ebff610 threw the following exception - org.mariadb.jdbc.Driver - ClassNotFoundException (... < DatabaseModule:63 < <gener:-1 < *:-1 < ... < MainModule:123 < ...)

Играть с портами 3306 и 3307 тоже безрезультатно. Так как в первом случае работает с обоими портами если они были указаны при установки MariaBD, во втором случае не помогает и порты.

Anton Tananaev9 months ago

Я же сказал что 5.8 не прокатит и нужно обновиться. Не знаю как вам помочь если в упор игнорируете то что я советую.

kaket079 months ago

Куда обновляться, на сайте в загрузках последняя версия 5.8., другой версии нет.
Или предлагаете обновится в плане понижения до версии 5.7?
Была в топике ссылка на Preview версию, но проблема и с ней такая же.