Резервное копирование и восстановление базы данных PostgreSQL
Last updated
Last updated
Для обслуживания базы данных PostgreSQL наиболее удобным инструментом является программа pgAdmin. Скачать программу можно бесплатно с сайта производителя. Инструкция по созданию резервной копии и восстановлению базы данных доступна тут.
Резервное копирование (backup) и восстановление БД
При установке PostgreSQL создается задание автоматического backup (PostgreSQL backup task) в Планировщике заданий Windows.
В папке bin/ запустить файл pg_backup.bat. При запуске он должен вызвать стандартные инструменты backup PostgreSQ (pg_dumpall и pg_dump) и создать 2 файла по пути: C:\Users\<имя пользователя>\AppData\Roaming\AAM Systems\PassOffice\backup
, например,
Рекомендуется при резервном копировании указывать кодировку:
Восстановление выполняется файлом pg_restore.bat, которому нужно передать имена файлов с backup в качестве аргументов.
В pgAdmin, находящегося по пути C:\Program Files\PostgreSQL\12\pgAdmin 4\bin
, проверяем восстановленные таблицы.
Создание резервной копии (бэкапа) при помощи pgAdmin4
pgAdmin4 использует для резервирования и восстановления БД те же самые утилиты pg_dump и pg_restore, что и при работе из командной строки.
Перед использованием pgAdmin4 для этих целей необходимо указать пути до этих утилит в настройках:
Выберите пункт меню File, далее Preference.
В открывшемся окне найдите пункт Paths - Binary Paths, далее кликните на иконку папки в строчке с установленной версией PostgreSQL и укажите путь до папки bin PostgreSQL.
Нажмите на кнопку Validate и сохраните настройки.
Нажмите правой кнопкой мыши по БД, для которой требуется выполнить резервное копирование и в контекстном меню выберите пункт Backup.
В открывшемся окне в поле Filename введите полный путь до директории, в которой необходимо создать бэкап БД и имя файла (обязательно укажите расширение .backup). В поле Format следует оставить значение Custom. Далее нажмите кнопку Backup.
При успешном резервировании по указанному пути появится файл с копией базы данных.
Восстановление из бэкапа при помощи pg_Admin4
Удалите старую базу (если она была создана)
Нажмите правой кнопкой мыши на Databases и выберите пункт Create - Database
В модальном окне задайте имя базы данных
Далее выберите созданную новую базу данных и кликните правой кнопкой мыши по ней, далее - пункт Restore
После нажмите на значок папки и выберите файл с бэкапом и далее - Restore
Если все прошло успешно, то резервная копия восстановится в выбранную базу.
Резервное копирование базы данных в Passoffice.
1. В Мониторинге задач в «Доступных» выберите «Резервное копирование БД»
2. Выберите будет ли задача Разовая или По расписанию
3. В параметрах укажите Путь для сохранения БД и Путь до папки bin PostgreSQL
4. Далее укажите формат, например, Custom и кодировку.
После запуска файл с бэкапом базы будет находиться по указанному пути.
Восстановление из бэкапа при помощи pg_Admin4
Удалите старую базу (если она была создана)
Нажмите правой кнопкой мыши на Databases и выберите пункт Create - Database
В модальном окне задайте имя базы данных
Далее выберите созданную новую базу данных и кликните правой кнопкой мыши по ней, далее - пункт Restore
В поле «Формат» укажите тот же формат, который был указан в Passoffice при запуске задачи «Резервное копирование базы данных»
После нажмите на значок папки и выберите файл с бэкапом и далее - Restore
Если все прошло успешно, то резервная копия восстановится в выбранную базу.
Обновление версии PostgreSQL
Ручной способ
Необходимо сделать резервную копию базы данных с помощью утилиты pg_dump
Загрузить новую версию PostgreSQL с официального сайта или с сайта российского дистрибьютера - https://postgrespro.ru/
Установить новую версию PostgreSQL
Восстановить базу данных из резервной копии с помощью утилиты pg_restore
Автоматический способ
Автоматический способ подразумевает использование утилиты pg_upgrade. https://postgrespro.ru/docs/postgresql/15/pgupgrade