Привет, Я тестирую сервисы Google Cloud, виртуальная машина Debian 10. При попытке запустить сервер у меня возникает следующая ошибка в консоли loginserver:
На gameserver: [08-02-2024 13:32:17] INFO Подключение к логину по адресу 127.0.0.1:9014. [08-02-2024 13:32:17] INFO Регистрация LoginServer не удалась: Причина: неправильный hexid.
Проблема в том, что я выполнил "RegisterGameServer.sh" и зарегистрировал новый hexid.txt
Ниже приведены мои конфигурации loginserver/gameserver
Я не знаю, какую еще информацию я могу предоставить, чтобы найти корень проблемы.
У кого-нибудь есть представление, в чем может быть проблема?
Error connectTimeout 30,000 ms:
[2024-02-08 14:17:28] Error loading registered gameservers.
java.sql.SQLSyntaxErrorException: No connection available within the specified time (option 'connectTimeout': 30,000 ms)
at org.mariadb.jdbc.internal.util.exceptions.ExceptionFactory.createException(ExceptionFactory.java:62)
at org.mariadb.jdbc.internal.util.exceptions.ExceptionFactory.create(ExceptionFactory.java:153)
at org.mariadb.jdbc.MariaDbPoolDataSource.getConnection(MariaDbPoolDataSource.java:239)
at net.sf.l2j.commons.pool.ConnectionPool.getConnection(ConnectionPool.java:47)
at net.sf.l2j.loginserver.data.manager.GameServerManager.loadRegisteredGameServers(GameServerManager.java:89)
at net.sf.l2j.loginserver.data.manager.GameServerManager.load(GameServerManager.java:50)
at net.sf.l2j.loginserver.data.manager.GameServerManager.<init>(GameServerManager.java:41)
at net.sf.l2j.loginserver.data.manager.GameServerManager$SingletonHolder.<clinit>(GameServerManager.java:183)
at net.sf.l2j.loginserver.data.manager.GameServerManager.getInstance(GameServerManager.java:178)
at net.sf.l2j.loginserver.LoginServer.<init>(LoginServer.java:64)
at net.sf.l2j.loginserver.LoginServer.main(LoginServer.java:36)
Caused by: java.sql.SQLSyntaxErrorException: No connection available within the specified time (option 'connectTimeout': 30,000 ms)
at org.mariadb.jdbc.internal.util.exceptions.ExceptionFactory.createException(ExceptionFactory.java:62)
at org.mariadb.jdbc.internal.util.exceptions.ExceptionFactory.create(ExceptionFactory.java:171)
at org.mariadb.jdbc.internal.util.pool.Pool.getConnection(Pool.java:413)
at org.mariadb.jdbc.MariaDbPoolDataSource.getConnection(MariaDbPoolDataSource.java:237)
... 8 more
Проблема в том, что я выполнил "RegisterGameServer.sh" и зарегистрировал новый hexid.txt
Ниже приведены мои конфигурации loginserver/gameserver
/root/server/login/config/loginserver.properties:
# Это передается клиентам, поэтому это должнен быть IP или разрешаемое имя хоста
Hostname = localhost
# IP доступности сервера авторизации. Используется символ * для всех адресов.
LoginserverHostname = *
LoginserverPort = 2106
# Хост и порт Loginserver.
LoginHostname = *
LoginPort = 9014
# Количество попыток входа с неверным логином/паролем, после которых IP будет забанен.
LoginTryBeforeBan = 3
# Время бана IP за неправильные данные при входе.
LoginBlockAfterBan = 600
# Могут ли любые игровые сервера регистрироваться в свободные слоты?
AcceptNewGameServer = False
# Включение/отключение показа лицензии при входе.
ShowLicence = True
#=============================================================
# Информация о базе данных
#=============================================================
URL = jdbc:mariadb://localhost/RUSaCis?useUnicode=true&characterEncoding=UTF-8
#URL = jdbc:mysql://localhost/RUSaCis?serverTimezone=UTC
#URL = jdbc:hsqldb:hsql://localhost/RUSaCis
#URL = jdbc:sqlserver://localhost/database=RUSaCis/user=sa/password=
Login = mydbuser
Password = mydbpasswd
/root/server/gameserver/config:
# This is transmitted to the clients, so it has to be an IP or resolvable hostname. If this ip is resolvable by Login just leave *
Hostname = my Gcloud VM IP
# Bind ip of the gameserver, use * to bind on all available IPs.
GameserverHostname = *
GameserverPort = 7777
# The Loginserver host and port.
LoginHost = 127.0.0.1
LoginPort = 9014
# This is the server id that the gameserver will request.
RequestServerID = 1
# If set to true, the login will give an other id to the server (if the requested id is already reserved).
AcceptAlternateID = True
# Use Blowfish cipher to encrypt packet data between server and client (by default: True).
# /!\ Don't edit this value and reload config while the server is running. It would lead to all connected clients to become unresponsive (waiting de/crypted packets, but receiving the versus).
UseBlowfishCipher = True
# ================================================================
# Database informations
# ================================================================
URL = jdbc:mariadb://localhost/rusacis?useUnicode=true&characterEncoding=UTF-8
#URL = jdbc:mysql://localhost/rusacis?serverTimezone=UTC
#URL = jdbc:hsqldb:hsql://localhost/rusacis
#URL = jdbc:sqlserver://localhost/database=rusacis/user=sa/password=
Login = mydbuser
Password = mydbpasswd
User DB Privileges:
MariaDB [(none)]> SHOW GRANTS FOR 'mydbuser'@'%';
+---------------------------------------------------------------------------------------------------------------+
| Grants for mydbuser@% |
+---------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO `mydbuser`@`%` IDENTIFIED BY PASSWORD 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' |
+---------------------------------------------------------------------------------------------------------------+
1 row in set (0.000 sec)
/etc/mysql/mariadb.conf.d/50-server.cnf:
bind-address = 0.0.0.0
Я не знаю, какую еще информацию я могу предоставить, чтобы найти корень проблемы.
У кого-нибудь есть представление, в чем может быть проблема?