Привет, коллеги! В медицинских учреждениях всё чаще встаёт вопрос импортозамещения, и многие сталкиваются с необходимостью разворачивать серверы на отечественных операционных системах. ОС Альт 8 СП Сервер — один из популярных вариантов.
В этой статье я поделюсь проверенной инструкцией по развёртыванию сервера базы данных MariaDB (СУБД, используемая в т.ч. с МИС Самсон) на Альт 8 СП. Мы пройдём путь от обновления системы до первичной настройки безопасности и оптимизации производительности.
Важно: Все команды выполняются от суперпользователя (
root). Чтобы переключиться, введите в терминале:su -
Шаг 1. Подготовка системы
Прежде чем ставить СУБД, нужно привести саму операционную систему в актуальное состояние и немного её подготовить.
Обновляем ядро и пакеты:
apt-get update
apt-get dist-upgrade
update-kernel
Перезагружаем сервер, чтобы изменения вступили в силу:
reboot
Отключаем firewall (iptables), если он мешает на начальном этапе настройки, или вы планируете настроить его позже отдельно:
systemctl stop iptables
systemctl disable iptables
Примечание: В боевой среде firewall обязательно нужно будет настроить, открыв только необходимые порты (по умолчанию для MariaDB это порт 3306).
Устанавливаем полезные утилиты: файловый менеджер Midnight Commander (mc) и консольный загрузчик wget. Они очень пригодятся в работе.
apt-get install -y mc wget
Шаг 2. Установка MariaDB
В репозиториях Альт 8 СП Сервер есть готовый пакет MariaDB. Устанавливаем его одной командой:
apt-get install mariadb-server
Шаг 3. Настройка конфигурации (ключевой момент для производительности)
Самый важный этап — настройка параметров сервера БД под ваше железо и нагрузку. Редактировать будем файл /etc/my.cnf.d/server.cnf.
Удобнее всего это сделать через Midnight Commander:
mc
Найдите файл по пути /etc/my.cnf.d/server.cnf и откройте его для редактирования (F4).
В файле найдите или добавьте секцию [mysqld] и пропишите следующие параметры:
innodb_buffer_pool_size— это самый важный параметр. Он задаёт размер кэша InnoDB. Рекомендация: выставляйте 60-80% от оперативной памяти сервера.innodb_log_file_size— размер логов. Обычно его ставят как 25% отinnodb_buffer_pool_size
Важное примечание от практика:
При расчёте нужно учитывать не только размер RAM, но и объём баз данных. Есть эмпирическое правило:innodb_buffer_pool_sizeдолжен быть примерно в 1.25 раза больше суммарного размера ваших баз.Также нельзя забывать про память для подключений. Параметры
sort_buffer_size,read_buffer_size,join_buffer_sizeв сумме дают память, потребляемую на одно подключение (temp_ram).Золотая формула баланса:
RAM — (Размер_БД * 1.25 + 0.1 * RAM) = temp_ram * N_подключенийЕсли выставить
sort_buffer_sizeслишком большими, то при множестве подключений сервер быстро исчерпает память и «ляжет». Если занизить — запросы будут выполняться медленно. Это искусство настройки под вашу конкретную нагрузку.
Шаг 4. Запуск и безопасность
Запускаем службу и добавляем её в автозагрузку:
systemctl start mariadb
systemctl enable mariadb
Запускаем скрипт безопасности, чтобы установить пароль root и убрать лишнее:
mysql_secure_installation
В первом диалоге система спросит текущий пароль root. Так как мы его ещё не задавали, просто нажмите Enter.
Шаг 5. Подготовка для работы МИС (например, Самсон)
Если вы ставите БД для конкретной системы, например, МИС Самсон, вам понадобится создать пользователей и базу. Обычно для этого есть готовый скрипт.
Скопируйте ваш скрипт (например, set_mysql_for_samson) в каталог /root. Это удобно сделать через того же mc
Сделайте скрипт исполняемым и запустите:
chmod +x /root/set_mysql_for_samson
/root/set_mysql_for_samson
В процессе он запросит пароли для пользователей (servicedesk, dbuser и т.д.).
Мы разобрали базовую, но очень важную настройку сервера БД на отечественной ОС. Конечно, в боевых условиях потребуется более тонкая настройка (например, под конкретные запросы вашей МИС) и обязательно — настройка резервного копирования.


