На vps loginserver коннектится только на root

trololo1234

Путник
Пользователь
Сообщения
38
Розыгрыши
0
Репутация
0
Реакции
2
Баллы
26
Хроники
  1. Interlude
Исходники
Отсутствуют
Сборка
RUSaCis
Доброго времени суток всем помогающим

Ситуация: после тестов на локальном ПК купил vps и накатил сервер туда. При стандартных конфигах подключения к MySQL (т.е. root\root) всё запускается и работает прекрасно, также клиент после проброски портов подключается на ура к внешнему ip.

НО! Как только я в MySQL создаю нового юзера с нормальным логином и паролем, чтобы подключаться через него, то логин выдаёт ошибку (скрин ниже).
ad.webp
Создавать пробовал через MySQL, через Navicat, через phpMyAdmin - всё то же самое. Привилегии всегда все выдавал новому юзеру. Тип подключения localhost.

В конфигах ЛС и ГС естественно прописывал новый логин и пароль, путь оставлял старый (?) , например sql.url = jdbc:mysql://localhost/dbname?serverTimezone= UTC&characterEncoding=UTF-8

Сборка если что RUSaCis

Подскажите пожалуйста в чём может быть проблема.
 
Вообще паролем под root заходить на впс по SSH можно, но лучше настроить SSH ключи и по ним заходить.
Касательно mysql, есть ява сервера где "оЧепятки", но и в исходнике может быть прописан конфиг не правильно или пропускать конфиг в файле.
Лучшим вариантом если хотите дать определенному пользователю права доступа будет выдать только к базам лс и гс на чтение/запись с 127.0.0.1 без внешнего доступа, максимум это сделать веб API на json для получения сайтом отдельно где то топов и тд.
В общем почитайте и посмотрите, всегда можно часть скинуть на gpt, простой код напишет без проблем и подскажет в некоторых вопросах по mysql.
там тупость разработчика и не внимательность пользователя а как совет очень внимаемый и адекватный
 

Та тут виндовс сервер, я в таком не шарю, вот если бьі на десятке - тогда да.
Та основано на 10, просто встроен менеджер сервера и прочие фишки которые не нужны в 10 :pandaredlol:
 
  • Люблю это
Реакции: Rolo
Если был бы исходник, я бы сказал глянуть класс L2DatabaseFactory и посмотреть, что там прописано в настройках соединения:

Java:
_source.setDriverClass("com.mysql.jdbc.Driver");
_source.setJdbcUrl(Config.DATABASE_URL);
_source.setUser(Config.DATABASE_LOGIN);
_source.setPassword(Config.DATABASE_PASSWORD);

Есть еще вариант с декомпиляцией ядра, если у вас достаточно знаний в этой теме.
Можешь ядро сборки прикрепить? Попробую глянуть.
 
Последнее редактирование:
Дружище, дело в том что xampp использует на самом деле не mysql, а mariadb. А у меня всё изначально под mysql продумывалось, и из-за этого возникают конфликты, поэтому я был вынужден отказаться от использования xampp


Я дико извиняюсь, сначала не тот лог скинул, вот правильный:
Код:
[2025-01-29 02:36:21] --------------------------------------------------=[ Config ]
[2025-01-29 02:36:21] Loading loginserver configuration files.
[2025-01-29 02:36:21] -------------------------------------------------=[ Poolers ]
[ WARN] (main) Error: 1045-28000: Access denied for user 'root'@'localhost' (using password: YES)
[ERROR] (main) error initializing pool connection - java.sql.SQLInvalidAuthorizationSpecException: (conn=34) Access denied for user 'root'@'localhost' (using password: YES)
java.sql.SQLInvalidAuthorizationSpecException: (conn=34) Access denied for user 'root'@'localhost' (using password: YES)
        at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:293)
        at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:378)
        at org.mariadb.jdbc.client.impl.ConnectionHelper.authenticationHandler(ConnectionHelper.java:275)
        at org.mariadb.jdbc.client.impl.StandardClient.<init>(StandardClient.java:194)
        at org.mariadb.jdbc.Driver.connect(Driver.java:69)
        at org.mariadb.jdbc.pool.Pool.addConnection(Pool.java:196)
        at org.mariadb.jdbc.pool.Pool.<init>(Pool.java:98)
        at org.mariadb.jdbc.pool.Pools.retrievePool(Pools.java:35)
        at org.mariadb.jdbc.MariaDbPoolDataSource.config(MariaDbPoolDataSource.java:62)
        at org.mariadb.jdbc.MariaDbPoolDataSource.setUrl(MariaDbPoolDataSource.java:248)
        at net.sf.l2j.commons.pool.ConnectionPool.init(ConnectionPool.java:37)
        at net.sf.l2j.loginserver.LoginServer.<init>(LoginServer.java:101)
        at net.sf.l2j.loginserver.LoginServer.main(LoginServer.java:36)
[2025-01-29 02:36:22] Initializing ConnectionPool.
[2025-01-29 02:36:22] -----------------------------------------=[ LoginController ]
[2025-01-29 02:36:24] Cached 10 KeyPairs for RSA communication.
[2025-01-29 02:36:24] Stored 20 keys for Blowfish communication.
[2025-01-29 02:36:24] ---------------------------------------=[ GameServerManager ]
[2025-01-29 02:36:24] Loaded 127 server names.

А, и вот ещё что, я до этого устанавливал xampp, а в нём свой пакет mysql, но на самом деле это mariadb. Я всё что связано с xampp и его самого удалил, с чисткой реестра и т.д., процессы в винде от марии не висят. Я серверную машину ребутнул, и накатил официальный дистрибутив mysql от оракла. Но вот правда теперь у меня в логах не mysql, а mariadb, но серв запускается:D Может там сокеты какие-нибудь остались от марии...я не силён пока в этом просто
Ну хзы я вижу тут что у рута проблемы с правами 1) Попробуйте поменять в My.ini Хост с которого можно подключаться. 2 создать пользователя с правами на базу и нужным хостом.
 
Если был бы исходник, я бы сказал глянуть класс L2DatabaseFactory и посмотреть, что там прописано в настройках соединения:

Java:
_source.setDriverClass("com.mysql.jdbc.Driver");
_source.setJdbcUrl(Config.DATABASE_URL);
_source.setUser(Config.DATABASE_LOGIN);
_source.setPassword(Config.DATABASE_PASSWORD);

Есть еще вариант с декомпиляцией ядра, если у вас достаточно знаний в этой теме.
Можешь ядро сборки прикрепить? Попробую глянуть.
Да не нужен никакой декомпил, я уже решение проблемы отписал. там в конфиге не хватает ' знака, по итогу должно получиться (sql.login')
 
Лень читать весь тред, в самих .sh/bat файлах коннект не прописывается?
 
Сидеть на форуме ммо, спрашивать про сборку русацис, когда есть официальный форум, притом живой где есть ответы на эти вопросы, что с вами не так? Тас уже говорили, что в конфиге url опечатка, нужно в конце добавить ' все.
О спасибо привеликоогромнейшее, ВЫ во истину магистр в теме L2j:D
З.Ы. Я так то обычно гуглю у них на форуме, но в этот раз по запаре чё то как то упустил этот момент, за что всем отписавшимся от меня чистосердечный сорян)
Та тут виндовс сервер, я в таком не шарю, вот если бьі на десятке - тогда да.
Тонко)

Всем отписавшимся и пытавшимся помочь огромное спасибо, а проблема заключалась всего лишь в отсутствии апострофа < ' > в конфигах ЛС и ГС в url строчке, после слова login.
Наверно на этом тему можно //close
 
Назад
Сверху Снизу