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

kaket072 years 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?

kaket072 years 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>
kaket072 years 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 < ...)
kaket072 years ago

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

Anton Tananaev2 years ago
kaket072 years 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 Tananaev2 years ago

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

kaket072 years ago

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

Anton Tananaev2 years ago

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

kaket072 years ago

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

kaket072 years ago

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

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

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

Anton Tananaev2 years ago

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

kaket072 years 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: 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 Tananaev2 years ago

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

kaket072 years ago

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