Как подключить базу данных к плагину AuthMe

Вам не следует использовать MySQL, если у вас не несколько серверов и/или нет постоянного онлайна в 100 игроков. Лучше используйте SQLite в качестве типа базы данных - это гораздо проще.

Отличия между MySQL и SQLite

MySQL

Такие базы данных устанавливаются отдельно от сервера, и вы можете подключить к ним несколько серверов сразу.

SQLite

Такие базы данных представляют собой файл, который лежит в папке с конфигурацией плагина, либо в любом другом месте, которое указал разработчик. С SQLite вы всегда можете быть уверены, что база данных доступна: если сервер работает, доступ к файлам есть, а значит, и к базе данных.

По умолчанию сервера Bungee не умеют работать с SQLite. Разработчики плагинов должны самостоятельно реализовать поддержку SQLite. Если плагин не поддерживает SQLite, не остаётся ничего, кроме как использовать MySQL.

Основные отличия

В случае с MySQL не все так радужно, так как это отдельный сервер, который обслуживается нами, его доступность не зависит от того, доступны ли сервера пользователей. Однако SQLite не позволяет, например, подключить несколько серверов авторизации к одной базе данных, в отличие от MySQL. SQLite может не уцелеть в случае повреждения файлов сервера.

Использовать SQLite на нашем хостинге вы можете бесплатно, в отличие от MySQL.

Итак, что же выбрать?

MySQL, если вам нужно подключить несколько серверов к одной базе данных.

SQLite, во всех остальных случаях.

Подключение SQLite

Обычно подключение SQLite не вызывает никаких трудностей, просто пропишите в конфиге, что тип базы данных - SQLite.

Подключение SQLite в AuthMe

Создание базы данных MySQL

Тут всё несколько сложнее. Для начала вам нужно создать базу данных. Делается это в панели, вкладка "Базы данных" и нажмите "Создать Базу Данных".

Далее в этом окошке:

Создание базы данных

Вы должны выбрать имя базы данных, оно может включать в себя только буквы латинского алфавита и цифры. Также, вы можете указать список IP адресов, с которых можно подключаться к базе данных.

После еще одного нажатия кнопки "Создать Базу Данных", вы увидите примерно такую картину:

База данных создана

Разберем что тут написано

  • s12568_authme

12568 - Идентификатор вашего сервера, а authme - название вашей базы данных, указанное ранее.

  • 5.188.140.117:3306 - Сервер

IP адрес и порт для подключения к серверу MySQL.

  • % - Разрешённые подключения

Список IP адресов, разрешенных для подключения, то же самое, что вы указывали при создании.

  • u12568_eiIbMuRUuP - Пользователь

Имя пользователя на сервере MySQL для подключения.

Кнопка "Подробнее"

Кнопка "Подробнее"

Этот глазок отвечает за просмотр более подробной информации, включая пароль от БД.

Данные для подключения

Тут вы можете увидеть те три поля, которые мы видели уже раньше, и два новых.

Посмотрим на новые поля

  • gBWZgJh@=fA@Fn8ke5v6fQH+ - Пароль

Пароль для подключения к базе данных. Этот пароль отличается от пароля вашего аккаунта и не должен нигде использоваться, кроме как при подключении к базе данных.

  • jdbc:mysql://u12568_eiIbMuRUuP:gBWZgJh@=fA@Fn8ke5v6fQH+@5.188.140.117:3306/s12568_authme - Адрес для JDBC

Вы можете не понять где применять эти данные. Они иногда используются в плагинах, просто знайте, если увидете где то в конфигурации "JDBC", скорее всего, речь идет именно об этой строке.

Подключение

Теперь давайте наконец-то перейдем к настройке плагина. Так как об SQLite мы уже рассказали ранее, далее вся статья будет о MySQL.

AuthMe приведён лишь в качестве примера, обычно эти инструкции можно применить к любому плагину, поддерживающему MySQL.

Для начала зайдем в /plugins/AuthMe/config.yml и переключим тип базы данных. Заменим SQLITE на MYSQL:

Сменим тип базы данных

Далее опустимся чуть ниже, и изменим адрес с портом:

Стандартные значения для mySQLHost и Port

Мы укажем значения из поля Сервер, у нас это 5.188.140.117:3306. Как мы уже знаем по опыту с майнкрафтом, адрес указывается в формате IP:port, соотвественно, в нашем случае IP адрес - 5.188.140.117, а порт - 3306.

Наши значения для mySQLHost и Port

Двигаемся дальше. Этот гайд не по настройке AuthMe в целом, а про MySQL, поэтому заострим внимание только на том, что нужно для подключения к базе данных. Всё остальное можно смело игнорировать, а если возникнет какая то ошибка - клиенты в нашей беседе и на Discord сервере готовы вам помочь! В крайнем случае вы можете написать в техническую поддержку.

Поле для ввода пароля и имени пользователя

Здесь мы видим поля для ввода имени пользователя (поле из панели - Имя пользователя) и пароля (поле из панели - Пароль). В нашем случае это u12568_eiIbMuRUuP и соотвественно gBWZgJh@=fA@Fn8ke5v6fQH+.

Наши данные от БД

Перейдем к названию базы данных и имени таблицы.

Стандартные данные mySQLDatabase и Tablename

В первый параметр нам нужно вставить значение имени базы данных, в нашем случае s12568_authme.

mySQLTablename отвечает за название таблицы в базе данных, оно должно быть уникальным. Если вы подключаете несколько плагинов к одной базе данных, вы должны убедиться, что, как минимум, имена таблиц не совпадают.

Мы настоятельно не рекомендуем подключать несколько плагинов к одной и той же базе данных. Некоторые плагины могут записывать данные в одно и то же место, и даже не подозревать об этом. В этом случае плагины постоянно будут перезаписывать данные друг друга, повреждая их.

Конец

Как вы видите, все очень легко. Удачи в настройке!