Все чаще у многих пользователей Home Assistant возникает вопрос о выросшем файле базы данных. При большом количестве датчиков и автоматизаций, базы за месяц не помещаются на карту памяти. Встроенная база SQLite при больших нагрузках работает медленно.
Сейчас мы исправим эту ситуацию установим и настроим SQL сервер MariaDB.
Установка и настройка
Для установки переходим в раздел Supervisor ранее Hass.io, ADD-ON STORE - MariaDB
Нажимаем INSTALL.
Теперь необходимо правильно настроить конфигурацию, для этого переходим ниже и вносим следующие данные
Имя, название базы можно оставить по умолчанию придумайте надежный пароль.
Теперь необходимо открыть порт для доступа к базе данных из внешнего приложения, переходим ниже на следующую вкладку, вписываем порт 3306 и нажимаем SAVE
Перезапускаем сервер коммандой RESTART
Опускаемся вниз и обновляем лог коммандой REFRESH, если все заполнено правильно ошибок не будет. Видим открытый порт 3306 для внешнего управления базой.
Теперь необходимо добавить в configuration.yaml запись которая укажет непосредственный путь к нашей новой базе.
Открываем и добавляем следующий код:
Если хотите ограничить базу количеством дней расскоментируйте запись purge_keep_days и purge_interval, установите желаемое время хранения.
Настройте по своему желанию, что хотите сохранять в базу (include - то что сохраняется, exclude - исключается).
Сохраняем конфигурацию, переходим в раздел Настройки - Сервер - Проверка конфигурации и нажимаем Начать проверку. Если нет ошибок и конфигурация выполнена верно, перезагружаем сервер.
Проверяем логи на наличие ошибок.
Внешнее управление
Теперь можем установить на свой компьютер одну из программ для работы с внешней базой. Я пользуюсь Navicat for MySQL, так же можно использовать MySQL Workbench
Скачиваем устанавливаем. Для настройки открываем вкладку Connection и вносим следующие данные:
Где IP адрес вашего сервера, имя пользователя и пароль, которое заполняли выше и сохраняем.
Нажимаем двойным кликом на новое подключение и попадаем в нашу базу.