Восстановление СУБД
При необходимости восстановления служебной базы данных из резервной копии, выполните следующие шаги:
-
Остановите все процессы на всех узлах, подключенных к служебной базе данных, которую необходимо восстановить:
-
на клиентских узлах с помощью команды:
sudo systemctl stop rubackup_client -
на серверных узлах с помощью команд:
sudo systemctl stop rubackup_client sudo systemctl stop rubackup_server sudo systemctl stop rubackup_api -
на АРМ администратора СРК или ином узле, использующемся для запуска Менеджера администратора RuBackup (RBM), закройте окно RBM.
-
-
На узле сервера СУБД PostgreSQL, содержащего служебную базу данных:
-
подключитесь к СУБД в режиме суперпользователя:
sudo -u postgres psql -
удалите базу данных, которую хотите восстановить из резервной копии:
drop database <database_name>;где:
-
<database_name>- это имя базы данных (по умолчанию –rubackup).
-
-
создайте новую пустую базу данных, в которую будет происходить восстановление:
create database <database_name> owner <owner_name>;где:
-
<database_name>- имя новой служебной базы данных; -
<owner_name>- имя владельца новой служебной базы данных (по умолчанию –rubackup).
-
-
завершите работу и выйдите:
exit
-
-
Запустите восстановление служебной базы данных:
-
для резервной копии базы данных в формате
plain text(файл с расширениемsql):sudo -u <admin_user_name> psql <database_name> <file_name_and_path>.sqlгде:
-
<admin_user_name>- имя пользователя, обладающего правами администратора (по умолчаниюpostgres); -
<database_name>- имя созданной новой служебной базы данных; -
<file_name_and_path>.sql— путь до файла резервной копии служебной базы данных.
-
-
для резервной копии базы данных в формате
custom(файл с расширением.dump), с помощью утилитыpg_restoreв терминале выполните следующую команду:pg_restore -h <hostname> -p <port> -U <admin_user_name> -d <database_name> <file_name_and_path>.dumpгде:
-
<hostname>- имя узла, на котором будет восстановлена служебная база данных; -
<port>-номер порта; -
<admin_user_name>- имя пользователя, обладающего правами администратора базы данных (по умолчанию этоpostgres); -
<database_name>- имя созданной новой служебной базы данных; -
<file_name_and_path>.dump— путь до файла резервной копии служебной базы данных.
-
-
-
Дождитесь окончания восстановления базы данных и убедитесь, что оно прошло без ошибок.
-
Перезагрузите настройки
systemdна всех узлах, которые подключены к восстановленной служебной базе данных:sudo systemctl daemon-reload -
Запустите процессы СРК RuBackup на всех узлах, подключенных к восстановленной служебной базе данных:
-
на клиентских узлах с помощью команды:
sudo systemctl start rubackup_client -
на серверных узлах с помощью команд:
sudo systemctl start rubackup_client sudo systemctl start rubackup_server
-