Настройка базы данных

Материал из SS220 Paradise Wiki (SS13)
Перейти к навигации Перейти к поиску
MakeshiftGarrote.PNGЭтой странице требуется переводMakeshiftGarrote.PNG
Эта статья содержит непереведенную информацию.


Первоначальная настройка и установка

  • Скачайте и установите MariaDB.
    • (настроек по умолчанию достаточно, вам нужно включить tcp и выставить пароль root. Если он предложит, do not set it up to use windows authentication)
      • Если вы выбрали флажек Install as a Windows Service (Установить как службу Windows, по умолчанию он включен), сервер базы данных будет запускатся при старте системы, не нужно будет каждый раз запускать его вручную.
  • Откройте HeidiSQL (идет вместе с Mariadb) и соединитесь с базой данных.
    • Нажмите на кнопку Создать в левом нижнем углу, заполните данные для входа на сервер.
    • Нажмите Сохранить, затем Открыть для входа под заданным пользователем и паролем, выставленным при установке.
  • Выберите базу данных которую вы только что сохранили и затем нажмите Файл -> Загрузить SQL файл, и откройте paradise_schema.sql файл, который находится в папке \SQL билда. Так же вы можете найти его тут, но он может быть новее чем версия которую вы используете.
  • Нажмите на синюю треугольную иконку в тулбаре(либо клавиша F9) и молитесь. Если схема импортирована корректно, внизу в окошке не появится никаких ошибок. На предупреждения можно забить.
    • Обновите панель слева кликнув по ней правой кнопкой и убедитесь что у вас появилась новая база данных "paradise_gamedb"(или "feedback" для старых версий).
  • Создайте новый аккаунт пользователя нажав Инструменты -> Управление пользователями.
    • 'Хост' должен быть 127.0.0.1, не localhost если бд находится на той же машине, иначе впишите IP игрового сервера.
    • Не давайте пользователю глобальные разрешения! Вместо этого нажмите 'Добавить обьект' и выберите вашу базу данных, нажмите окей, затем выберите SELECT, DELETE, INSERT, и UPDATE разрешения вашей базы.
    • Вы можете кликнуть на стрелку в поле пароля и выбрать случайно сгенерированный из предложенных, либо задать свой. Беред сохранением пользователя сохраните набранный вами или сгенерированный пароль куда либо для дальнейшего использования.
  • Откройте файл \config\config.toml в Блокноте, Notepad++, VSCode, или любом другом текстовом редакторе, и проскрольте вниз к секции [database_configuration] . Вы должны были скопировать этот файл из папки \example раньше.
  • Убедитесь что эти настройки изменены:
    • sql_enabled выставлена в true.
    • sql_address выставлена в "127.0.0.1". (Измените на IP сервера базы данных если он установлен на другой машине)
    • sql_port выставлен тот порт, который вы задали при установке MariaDB, обычно это 3306.
    • sql_database выставлено название вашей базы данных, обычно это "paradise_gamedb".
    • sql_username выставлено имя пользователя которого вы создали выше.
    • sql_password выставлен пароль этого пользователя.
  • Теперь база данных готова к логгированию смертей, population logging, polls, библеотеки, privacy poll, логгированию подключений и заходов игроков. Есть еще две вещи, которые вы должны настроить. И лучше всего сделать это сейчас, так как потом это будет очень больно.

Администрирование на основе базы данных

Offers a changelog for changes done to admins, which increases accountability (adding/removing admins, adding/removing permissions, changing ranks); allows admins with +PERMISSIONS to edit other admins' permissions ingame, meaning they don't need remote desktop access to edit admins; Allows for custom ranks, with permissions not being tied to ranks, offering a better ability for the removal or addition of permissions to certain admins, if they need to be punished, or need extra permissions. Enabling this can be done any time, it's just a bit tedious the first time you do it, if you don't have direct access to the database.

Чтобы включить администрирование через базу данных:

  • Откройте \config\config.toml и найдите раздел [admin_configuration].
  • Выставьте use_database_admins в true.
  • Добавьте в базу первого администратора (себя).
  • Готово! Посмните что все люди в списке admin_assignments теперь не считаются админами.
  • Если база данных отвалится, сервер переключится на старую систему администрирования, так что все же хорошей идеей оставлять admin_assignments и admin_ranks с некоторым количеством админов, просто на всякий пожарный. Вдруг база данных накроется с концами и все что делалось на протяжении 6 лет исчезнет за пару секунд.
Как внести свой вклад?
Общее Руководство по разработке
Сервер Настройка базы данных, Запуск локального сервера
Код Структура кода SS13, SS13 для опытных программистов, Форматирование текста, Как делать перевод игры
Маппинг Руководство по маппингу
Спрайтинг Руководство по спрайтингу
Вики Руководство по редактированию вики