Установка и настройка 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_size | 0 | Кэш запросов. Рекомендуется его отключение, т.к. происходит постоянное обновление данных в таблицах. |
innodb_flush_log_at_trx_commit | 2 | Метод "сброса" на диск данных из кэша. Позволяет уменьшить нагрузку на диск. Внимание! При установке данного параметра требуется резервирование питания для сервера. Иначе при внезапном отключении возможно нарушение структуры/данных БД - вплоть до полной невозможности ее восстановления! |
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_table | 1 | Для каждой таблицы хранить данные в отдельном файле. Позволит освобождать место на диске при очистке данных из таблиц. |
innodb_stats_on_metadata | 0 | Не обновлять каждый раз статистику при обращении к структуре таблиц. Позволяет уменьшить нагрузку на диск, ускорить загрузку объектов. |
wait_timeout | 180 | Таймаут для закрытия неактивных соединений |
interactive_timeout | 180 | Таймаут для закрытия интерактивных неактивных соединений |
net_read_timeout | 30 | Таймаут при ожидании чтения данных при получении запроса |
net_write_timeout | 60 | Таймаут при ожидании записи данных при ответе на запрос |
innodb_open_files | Минимальное значение: 200 + кол-во объектов | Сколько файлов можно держать открытыми. Необходимо значение держать всегда выше, чем кол-во таблиц в БД. Позволяет уменьшить нагрузку на диск.. Внимание! При задании параметра в Linux проверить значения ulimit! |
table_open_cache | Минимальное значение: 200 + кол-во объектов | Сколько таблиц можно держать в памяти. Необходимо значение держать всегда выше, чем кол-во таблиц в БД. Позволяет уменьшить нагрузку на диск. |
table_definition_cache | Минимальное значение: 200 + кол-во объектов | Сколько структур для таблиц можно держать в памяти. Необходимо значение держать всегда выше, чем кол-во таблиц в БД. Позволяет уменьшить нагрузку на диск. |
innodb_flush_method | O_DIRECT | Способ "сброса" данных на диск. Ускоряет сброс кэшей на диск. Внимание! Применимо только для Linux! |
Если используется репликация | ||
slave_compressed_protocol | 1 | Использовать сжатие данных при передаче. Позволяет уменьшить нагрузку на сеть. |
sync_binlog | 0 | Отключить синхронизацию при записи в bin-log. Позволяет ускорить вставку/изменение данных в БД. |
Если Вы имеете опыт оптимизации работы MySQL под характеристики конкретного компьютера (размер кэша, размер временных таблиц и т.п.), проведите необходимые изменения.
При этом обязателен мониторинг работы БД, так как производить изменения этих и других параметров нужно только в зависимости от результатов мониторинга.