Установка и настройка MySQL Community Server

Возможно использование ранее установленной на сервере СУБД MySQL при условии, что:

1. Ее версия не старее рекомендованной:

допускается использование
MySQL (поддерживаются версии 5.1, 5.5, 5.7, 8.х),
MariaDB (поддерживаются версии начиная с 10.1).

2. Все настройки совпадают с указанными ниже.

Процесс установки на примере MySQL 5.7:

Дистрибутив СУБД MySQL 5.7 вы можете загрузить с официального сайта MySQL.

ВНИМАНИЕ: Внимательно и точно выполняйте все пункты инструкции по установке СУБД, невыполнение одного из пунктов может привести к дальнейшей неработоспособности всего ПО FortMonitor или части его функций.

Запустите на выполнение файл "mysql-installer-community-5.7.23.0.msi".

В случае, если установщик не запускается с ошибкой о отсутствии ".NET Framework 4.5.2":

Скачайте и установите его.

После запуска "mysql-installer-community-5.7.23.0.msi", в появившемся окне подтвердите согласие с условиями лицензионного соглашения и нажмите "Next".


В окне "Choosing a Setup Type", выберите "Server only".

В случае, если для установки не будет хватать необходимых компонентов, вы увидите окно "Check Requirements" во время установки, где будет указано, каких компонентов не хватает. Например, "Visual C++ Redistributable". В таком случае нажмите на "Execute".

После чего произведите установку (согласившись с условиями и нажав "Install").

После установки нажмите "Close".


В MySQL Installer нажмите "Next" в окне "Check Requirements" (если такое окно есть).


Далее, в появившемся окне "Installation" нажмите кнопку "Execute".

После завершения установки статус установки продукта изменится на "Complete", нажмите кнопку "Next".

В окне "Product Configuration" нажмите "Next".

В окне "Group Replication" оставьте "Standalone MySQL Server / Classic MySQL Replication" и нажмите "Next".

В окне "Type and Networking" в параметре "Config Type" выберите "Server Computer". При желании можете изменить параметры сети, после чего нажмите "Next".

В окне "Accounts and Roles" задайте пароль администратора СУБД (Параметр "MySQL Root Password") и его подтверждение. Запомните пароль, он понадобится для дальнейшей настройки приложения. Если необходимо, можете создать дополнительно пользователей нажав "Add User". Нажмите "Next".

В окне "Windows Service" можно изменить название службы. Можно оставить всё по умолчанию и нажать "Next".

В окне "Plugins and Extensions" нажмите "Next".

В окне "Apply Configuration" нажмите "Execute".

После применения конфигурации нажмите на "Finish".

В окне "Product Configuration" нажмите "Next".

В окне "Installation Complete" нажмите "Finish".

Минимальные настройки для MySQL / MariaDB:

Перейдите в директорию с установленной базой (по умолчанию – "C:\ProgramData\MySQL\MySQL Server 5.7\"). Откройте любым текстовым редактором файл "my.ini". Добавьте в конец файла следующие строки:

wait_timeout=180

interactive_timeout=180

net_read_timeout=30

net_write_timeout=60

Так же измените в файле строку «innodb_flush_log_at_trx_commit=1» на строку «innodb_flush_log_at_trx_commit=2».

Для применения изменений перезапустите службу "MySQL57".

Далее можно переходить к установке IIS:

Установка IIS на Windows Server 2008 r2

Установка IIS на Windows Server 2012 r2

Установка IIS на Windows Server 2016 r2

Полные рекомендации для MySQL / MariaDB:

При установке MySQL версии 8.х необходимо использовать формат аутентификации mysql_native_password. Подробнее можно ознакомиться в официальной документации

После установки для достижения большего быстродействия Fort Monitor необходимо изменить параметры в файле конфигурации. Описание всех параметров можно посмотреть в официальной документации

ПараметрРекомендуемое значениеОписание
query_cache_size0

Кэш запросов.

Рекомендуется его отключение, т.к. происходит постоянное обновление данных в таблицах.

innodb_flush_log_at_trx_commit2

Метод "сброса" на диск данных из кэша. Позволяет уменьшить нагрузку на диск.

Внимание! При установке данного параметра требуется резервирование питания для сервера. Иначе при внезапном отключении возможно нарушение структуры/данных БД - вплоть до полной невозможности ее восстановления!

innodb_buffer_pool_size

В зависимости от объема оперативной памяти.

До 70% объема.

Объем используемой памяти. Позволяет держать данные в памяти и уменьшить обращения к диску.
innodb_buffer_pool_instancesВ зависимости от настройки innodb_buffer_pool_size

Делит весь объем выделенной памяти на части для улучшения быстродействия. Рекомендуется подбирать кол-во частей таким образом, чтобы объем одной части получался в районе 1Гб.

Пример:

В параметре innodb_buffer_pool_size выставлен объем 35000M (т.е. порядка 35Гб)

Значит, рекомендуемое значение будет 35.

innodb_log_buffer_size

В зависимости от объема данных

50-100M

Размер буфера для ведения файлов логов.

Если объем поступаемых данных от терминалов большой, рекомендуется его увеличение.

Можно выставить в районе 50-100Мб. Позволяет уменьшить нагрузку на диск.

innodb_file_per_table1Для каждой таблицы хранить данные в отдельном файле. Позволит освобождать место на диске при очистке данных из таблиц.
innodb_stats_on_metadata0Не обновлять каждый раз статистику при обращении к структуре таблиц. Позволяет уменьшить нагрузку на диск, ускорить загрузку объектов.
wait_timeout180Таймаут для закрытия неактивных соединений
interactive_timeout180Таймаут для закрытия интерактивных неактивных соединений
net_read_timeout30Таймаут при ожидании чтения данных при получении запроса
net_write_timeout60Таймаут при ожидании записи данных при ответе на запрос
innodb_open_filesМинимальное значение: 200 + кол-во объектов

Сколько файлов можно держать открытыми. Необходимо значение держать всегда выше, чем кол-во таблиц в БД. Позволяет уменьшить нагрузку на диск..

Внимание! При задании параметра в Linux проверить значения ulimit!

table_open_cacheМинимальное значение: 200 + кол-во объектовСколько таблиц можно держать в памяти. Необходимо значение держать всегда выше, чем кол-во таблиц в БД. Позволяет уменьшить нагрузку на диск.
table_definition_cacheМинимальное значение: 200 + кол-во объектовСколько структур для таблиц можно держать в памяти. Необходимо значение держать всегда выше, чем кол-во таблиц в БД. Позволяет уменьшить нагрузку на диск.
innodb_flush_methodO_DIRECT

Способ "сброса" данных на диск. Ускоряет сброс кэшей на диск.

Внимание! Применимо только для Linux!

Если используется репликация
slave_compressed_protocol1Использовать сжатие данных при передаче. Позволяет уменьшить нагрузку на сеть.
sync_binlog0Отключить синхронизацию при записи в bin-log. Позволяет ускорить вставку/изменение данных в БД.

Если Вы имеете опыт оптимизации работы MySQL под характеристики конкретного компьютера (размер кэша, размер временных таблиц и т.п.), проведите необходимые изменения.
При этом обязателен мониторинг работы БД, так как производить изменения этих и других параметров нужно только в зависимости от результатов мониторинга.