Введение
Данные программы (GEO.RITM, PCN6, PCN8), такие как: события от объектов, координаты объектов, история перемещений объектов, отчёты, пользователи программы, карточки объектов и прочее, хранятся в базе данных MySQL. Для надёжности необходимо периодически делать резервные копии БД. Также создание резервной копии БД необходимо при переносе БД на другой сервер. Для создания дампов БД можно использовать различные программы - можно запускать как вручную, так и пор расписанию, для любителей есть консольная программа. Рассмотрим несколько вариантов.
Скорость резервирования зависит от размера БД, а также скорости чтения и записи диска. Скорость восстановления зависит от размера файла резервной копии, а также скорости чтения и записи диска.
Получившийся дамп БД храните на надёжном носителе. Например на другом ПК или на флэшке.
Список БД
Различные БД используются различными программами. Для резервирования данных, выбирайте соответствующие БД при создании дампа.
Название БД | PCN6 | PCN8 | RITM.LINK (IDP) | GEO.RITM | GEO.RITM SE |
---|---|---|---|---|---|
contact | Все данные PCN6 хранятся в БД "contact" | GEO.RITM не хранит данные в в БД "contact", но наличие БД обязательно | GEO.RITM SE не хранит данные в в БД "contact", но наличие БД обязательно | ||
voyager | Все данные PCN8 хранятся в БД "voyager" | GEO.RITM хранит частичную информацию по объектам, наличие БД обязательно | GEO.RITM SE хранит частичную информацию по объектам, наличие БД обязательно | ||
idp | Все данные RITM.LINK хранятся в БД "idp" | Все данные RITM.LINK (часть GEO.RITM SE) хранятся в БД "idp" | |||
georitm | Основные данные GEO.RITM хранятся в БД "georitm" | Основные данные GEO.RITM SE хранятся в БД "georitm" | |||
georitm_data | GEO.RITM хранит данные по трекам и отчётам мобильных объектов в БД "georitm_data", наличие БД обязательно | GEO.RITM SE хранит данные по трекам и отчётам мобильных объектов в БД "georitm_data", наличие БД обязательно |
Например для программы GEO.RITM SE нужно сделать дампы БД: contact, voyager, idp, georitm, georitm_data; для PCN6 резервировать нужно только БД contact.
Создание резервной копии БД вручную с помощью MySQL Administrator
MySQL Administrator - устаревшее ПО для Windows, но вполне способное создавать резервные копии БД, выполнять запросы и т.п. Распространяется бесплатно.
- Установите на ПК с Windows MySQL Administrator;
- Запустите MySQL Administrator;
- Укажите параметры подключения к серверу БД:
- Sever host - адрес вашего сервера MySQL;
Server host для GEO.RITM SE на ВМ - укажите адрес ВМ.
Server host для GEO.RITM SE на docker - укажите адрес ПК с docker.
Server host для PCN6/PCN8 - обычно localhost.
- Port - порт (по умолчанию 3306);
- Username - имя пользователя (по умолчанию root);
- Password - пароль (по умолчанию masterkey);
- Sever host - адрес вашего сервера MySQL;
- Нажмите "OK";
- Перейдите на страницу "Backup";
- Нажмите кнопку "New Project";
- Укажите название проекта в "Project Name". Например можете указать название БД;
- В списке БД "Schemata" выделите БД;
- Нажмите ">". В список "Backup content" добавится БД из п. 8;
- Перейдите на закладку "Advanced Options";
- Выключите опцию "Complete backup";
- Нажмите "Execute Backup Now";
- Укажите название файла для резервной копии БД и путь для сохранения;
- Дождитесь окончания процесса. Скорость выполнения зависит от размера БД и скорости накопителя.
- Повторите п. 6-14 для всех БД, которые использует ваше ПО.
Дамп БД создаётся в виде текстового файла. Текст легко сжимается архиваторами. Для экономии места на диске вы можете заархивировать получившуюся резервную копию БД.
Восстановление из резервной копии БД, созданной MySQL Administrator
Восстановление означает, что из файла резервной копии БД (дампа) будут записаны данные в БД MySQL. При этом данные из резервной копии не добавятся к существующим данным в работающей БД, а перезапишут их. Данная процедура необратима.
- Запустите MySQL Administrator;
- Укажите параметры подключения к серверу БД:
- Sever host - адрес вашего сервера MySQL;
Server host для GEO.RITM SE на ВМ - укажите адрес ВМ.
Server host для GEO.RITM SE на docker - укажите адрес ПК с docker.
Server host для PCN6/PCN8 - обычно localhost.
- Port - порт (по умолчанию 3306);
- Username - имя пользователя (по умолчанию root);
- Password - пароль (по умолчанию masterkey);
- Sever host - адрес вашего сервера MySQL;
- Нажмите "OK";
- Перейдите на страницу "Restore";
- Нажмите "Open Backup File", укажите путь к файлу дампа БД;
- Нажмите "Start Restore", запустится процесс восстановления.
Создание резервной копии БД по расписанию с помощью SQLBackupAndFTP
SQLBackupAndFTP условно-бесплатное ПО, позволяет автоматизировать создание резервных копий БД по расписанию с одновременным архивированием файлов. В бесплатной версии ограничение на 2 проекта (в каждом может быть несколько БД).
- Установите на ПК с Windows SQLBackupAndFTP;
Версия MySQL 5.1, входящая в дистрибутив PCN6 и PCN8 - не поддерживается данной программой. Для создания дампов этой программой необходимо переносить БД на новую версию MySQL;
Версия MySQL 5.7, входящая в дистрибутив GEO.RITM (SE) - поддерживается SQLBackupAndFTP 12.5.13
Версия MySQL 8 поддерживается SQLBackupAndFTP 12.7.24
- Запустите SQLBackupAndFTP;
- Нажмите кнопку "Connect to Database Server" ⚙;
- Укажите параметры подключения к серверу БД:
- Server type - MySQL Server (TCP/IP);
- Server name - адрес сервера MySQL;
Server name для GEO.RITM SE на ВМ - укажите адрес ВМ.
Server name для GEO.RITM SE на docker - укажите адрес ПК с docker.
Server name для PCN6/PCN8 - обычно localhost.
- Port - порт (по умолчанию 3306);
- User Name - имя пользователя (по умолчанию root);
- Password - пароль (по умолчанию masterkey);
- Для проверки подключения нажмите "Test Connection";
- Нажмите "Save & Close";
- Нажмите ; "Select Database"
- Выберите опцию "Backup all non-system databases" и нажмите "Save & Close";
- Нажмите "Store backups in selected destinations" . Выберите Local/Network Folder/NAS;
- Укажите путь для сохранения файлов, укажите период хранения старых резервных копий для экономии места на диске;
- Нажмите "Save & Close";
- Включите резервирование по расписанию "Schedule backups" ;
- Укажите желаемое расписание. Например каждую ночь в 02:00.
Восстановление из резервной копии БД, созданной SQLBackupAndFTP
Восстановление означает, что из файла резервной копии БД (дампа) будут записаны данные в БД MySQL. При этом данные из резервной копии не добавятся к существующим данным в работающей БД, а перезапишут их. Данная процедура необратима.
- В правой части окна SQLBackupAndFTP - History & restore - выберите желаемый файл дампа БД, откроется окно Job log;
- Нажмите кнопку Restore from Backup;
- Откроется новое окно со списком БД, которые находятся в этом дампе БД - последовательно нажмите restore для каждой.
Создание резервной копии БД из консоли Linux по расписанию
Для создания резервных копий БД по расписанию в Linux вы можете использовать sh-скрипты. Для каждой БД
- contact
- georitm
- georitm_data
- idp
- voyager
создайте отдельный скрипт sh в каталоге /root/backup, укажите адрес БД, название, логин и пароль.
Например для резервирования БД georitm
#!/bin/bash DATABASE=georitm HOST=127.0.0.1 DB_FILE=georitm_${HOST}.sql USER=root PASSWORD=masterkey cd /root/backup/ # echo "Dump structure" mysqldump --host=${HOST} --user=${USER} --password=${PASSWORD} --single-transaction --no-data --routines ${DATABASE} > ${DB_FILE} # echo "Dump content" mysqldump --host=${HOST} --user=${USER} --password=${PASSWORD} ${DATABASE} --no-create-info >> ${DB_FILE} rm -f ${DB_FILE}.tar.gz tar -zcf ${DB_FILE}.tar.gz ${DB_FILE} rm -f ${DB_FILE}
Добавьте запись в планировщик cron (/var/spool/cron/). Пример для ежедневного выполнения скрипта в 02:00:
0 2 * * * /root/backup/backup_georitm.sh
Не забывайте после последней строки добавить перенос строки ↵
Восстановление резервной копии БД, созданной из консоли Linux
Восстановление означает, что из файла резервной копии БД (дампа) будут записаны данные в БД MySQL. При этом данные из резервной копии не добавятся к существующим данным в работающей БД, а перезапишут их. Данная процедура необратима.
Для восстановления (на примере БД georitm) выполните
tar -xvf georitm_127.0.0.1.sql.tar.gz mysql -hlocalhost -uroot -pmasterkey -Bse "CREATE DATABASE georitm;" mysql -hlocalhost -uroot -pmasterkey georitm < georitm_127.0.0.1.sql
Связанные статьи: