GravitLauncher/Launcher

Отваливается подключение MySQL в версии 5.4.1

sverinn opened this issue · 5 comments

После обновления до версии 5.4.1 стал регулярно отваливаться драйвер MySQL. Как воспроизвести без понятия - через какое-то время он снова начинает работать без каких-либо манипуляций.

Конфиг:

"auth": {
	    "std": {
      "core": {
        "type": "mysql",
        "mySQLHolder": {
          "address": "localhost",
          "port": 3306,
          "username": "",
          "password": "",
          "database": "",
          "timezone": "UTC+3",
          "useHikari": true
        },
        "passwordVerifier": {
          "type": "phpass"
        },
        "expireSeconds": 3600,
        "table": "",
        "tableHwid": "hwids",
        "uuidColumn": "uuid",
        "usernameColumn": "",
        "passwordColumn": "",
        "accessTokenColumn": "accessToken",
        "hardwareIdColumn": "hwidId",
        "serverIDColumn": "serverID"
      },
      "textureProvider": {
        "skinURL": "https://mysite.ru/skins/%username%.png",
        "cloakURL": "https://mysite.ru/cloaks/%username%.png",
        "type": "request"
      },
      "isDefault": true,
      "displayName": "Default"
    }
19:03:10.841 [INFO ] Command 'modules'
19:03:10.842 [INFO ] [MODULE] LaunchServerCore v: 5.4.1 p: 0 deps: [] sig: NOT_SIGNED
19:03:10.843 [INFO ] [MODULE] OSSLSignCode v: 1.0.0 p: 0 deps: [LaunchServerCore] sig: NOT_SIGNED
19:03:10.843 [INFO ] [MODULE] AddHash v: 1.0.2 p: 0 deps: [LaunchServerCore] sig: NOT_SIGNED
19:03:10.843 [INFO ] [MODULE] SimpleCabinetModule v: 1.0.0 p: 0 deps: [LaunchServerCore] sig: NOT_SIGNED
19:03:10.844 [INFO ] [LAUNCHER MODULE] JavaRuntime_lmodule.jar sig: null
19:03:10.844 [INFO ] [LAUNCHER MODULE] DiscordGame_lmodule.jar sig: null
19:03:10.844 [INFO ] [LAUNCHER MODULE] Sentry_lmodule.jar sig: null

Какая версия сервера MySQL (точная)?
Попробуйте заменить mysql-connector-j на более старый

mysql Ver 8.0.32-0ubuntu0.22.04.2 for Linux on x86_64 ((Ubuntu))

При пробросе портов 3306 в ufw проблема пропала. К слову, лаунчсервер и MySQL находятся на одной машине, к базе лаунчсервер обращается через localhost.

При перезагрузке ubuntu лаунчсервер снова выдаёт ошибку com.mysql.cj.exceptions.UnableToConnectException: Public Key Retrieval is not allowed.
Правила ufw как видимо не решили проблему.
В логе MySQL ошибок нет.
mysql-connector-j заменил на предыдущую версию - не помогло.

https://stackoverflow.com/questions/50379839/connection-java-mysql-public-key-retrieval-is-not-allowed

Это не причина проблемы, нормально работает и без параметров allowpublickeyretrieval и т.д. Проблема в том, что время от времени начинает выводить ошибку подключения.
При этом:

  • перезагрузка лаунчсервера и даже службы MySQL не помогает;
  • если использовать параметр allowpublickeyretrieval=true ничего не меняется;
  • достаточно просто залогиниться в учётку MySQL лаунчсервера через phpMyAdmin и подключение снова начинает работать, и после этого даже перезагружать лаунчсервер не нужно.