Найти тему
Блог разработчика

Подключение внешней базы данных к MajorDoMo и бекап

Оглавление

Каждый пользователь MajorDoMo сталкивался с тем, что на Raspberry Pi или на любом другом одноплатнике тормозит и разрастается MySQL. Решение окажется довольно нетривиальным, если у вас уже есть NAS или внешний сервер.

Источник фото: https://unsplash.com/
Источник фото: https://unsplash.com/

В этой будет рассмотрен перенос системы на работу с базой данных NAS Asustor AS1002T. MajorDoMo в моем случае установлен на Linux. В Windows все делается практически так же, за исключением расположения папок.

Внешний сервер базы данных

Для переноса MajorDoMo достаточно сделать резервную копию системы и скачать ее на ПК:

Создание резервной копии системы MajorDoMo
Создание резервной копии системы MajorDoMo

Проверьте, чтобы dump.sql не был пустым, если пустой - попробуйте ещё раз. Его также можно достать по адресу /var/www/dump.sql

Резервная копия системы MajorDoMo. dump.sql не должен быть пустым
Резервная копия системы MajorDoMo. dump.sql не должен быть пустым

Лучше остановить систему на время манипуляций.

Остановка MajorDoMo для последующей смены базы данных
Остановка MajorDoMo для последующей смены базы данных

Следующим шагом нужно включить службу MariaDB на нашем Asustor

Служба MariaDB на Asustor
Служба MariaDB на Asustor

Создав базу данных в phpMyAdmin, импортируем dump.sql своей системы MajorDoMo

Импорт dump.sql в новую базу данных
Импорт dump.sql в новую базу данных

Дело осталось за малым. Открываем терминал и переходим в папку системы командой cd /var/www и делаем копию текущей конфигурации введя sudo cp config.php old_conf.php

Корневая директория MajorDoMo на Linux
Корневая директория MajorDoMo на Linux

Откроем файл config.php (sudo nano config.php) и изменим настройки доступа к MySQL сверху

Настройки доступа к базе данных в системе MajorDoMo
Настройки доступа к базе данных в системе MajorDoMo

Осталось только перезапустить систему (sudo /etc/init.d/majordomo start, а лучше sudo reboot), и все будет работать намного стабильнее, чем раньше. Полгода в таком режиме, полёт нормальный.

Если после перезагрузки не стартует и ругается на права доступа для ip адреса, скорее всего нужно их поправить:

Права доступа для ip адреса MajorDoMo в phpMyAdmin
Права доступа для ip адреса MajorDoMo в phpMyAdmin

Оптимизация базы данных

Очень советую поставить модуль Optimizer, он позволит оптимизировать количество записей в базе данных в автоматическом режиме:

Это поможет избавиться от лишних записей в вашем MySQL и установить срок жизни истории свойства.

Резервная копия системы на NAS

Для начала нам потребуется установить модуль под названием Backup. С помощью него мы сможем делать копии на FTP сервера, Яндекс диск, Облако и так далее.

Включим FTP службу на NAS Asustor

Настройка FTP сервера на Asustor
Настройка FTP сервера на Asustor

Затем нужно создать папку на сервере, и дать ей права доступа

Права доступа к папке Asustor
Права доступа к папке Asustor

Вводим все параметры доступа к папке, куда будет делаться бекап, сохраняем и радуемся автоматическим копиям вашей системы ;)

Настройки модуля Backup в MajorDoMo
Настройки модуля Backup в MajorDoMo

Создадим задачу ежедневного копирования через модуль Cron

Cron задача для модуля Backup в MajorDoMo
Cron задача для модуля Backup в MajorDoMo

Если вам была полезна эта статья, обязательно поставьте большой палец вверх и подпишитесь на канал. В ближайшее время на канале выйдет ещё несколько статей по настройке и работе с MajorDoMo и другими системами управления умным домом. Есть вопросы? Добро пожаловать в комментарии)

Вам могут понравиться другие мои статьи:

  • Wi-Fi термостат Equation из Леруа. Интеграция в умный дом MajorDoMo
  • Мини-ПК в качестве сервера умного дома
  • Измерить скорость интернета в MajorDoMo