Перенос базы данных

Выполнив шаги, описанные в этом руководстве, вы сможете безопасно и эффективно перенести базу данных Security Center на новый хост.

В этом руководстве описаны шаги по переносу базы данных с помощью Docker и различных команд. Процесс включает в себя создание дампа базы данных, его перенос на удаленный сервер и восстановление в новом контейнере. Если вы изменили значения по умолчанию для DB_USERNAME и DB_NAME, обязательно используйте свои собственные значения в командах, приведенных ниже. В противном случае для обоих значений следует использовать значения postgres.

Шаг 1: Подготовка нового хоста

Перед переносом базы данных на новый хост убедитесь, что Security Center установлен и правильно настроен на новом хосте. Выполните следующие шаги, чтобы подготовить новый хост к переносу базы данных:

  1. Убедитесь, что конфигурация Security Center правильно настроена на новом хосте, включая параметры подключения к базе данных. Если в процессе настройки были изменены DB_USERNAME и DB_NAME, убедитесь, что в конфигурации используются пользовательские значения.

  2. Удалите существующую базу данных внутри контейнера с помощью следующей команды:

docker exec -i security-center_postgres_1 dropdb -U <DB_USERNAME> <DB_NAME>
  1. Создайте новую базу данных. Находясь внутри контейнера, создайте новую базу данных с тем же именем с помощью следующей команды:

docker exec -i security-center_postgres_1 createdb -U <DB_USERNAME> <DB_NAME>

Шаг 2: Создайте дамп базы данных на текущем хосте

  1. Откройте терминал или командную строку. Перейдите в каталог, в котором вы хотите создать файл дампа базы данных:

cd /path/to/destination_directory
  1. Выполните следующую команду, чтобы создать дамп базы данных с текущего хоста:

docker exec -i security-center_postgres_1 pg_dump -U <DB_USERNAME> <DB_NAME> > pg_dump

Файл pg_dump будет создан в ранее указанном каталоге.

Шаг 3: Перенесите дамп базы данных на новый хост

Скопируйте файл дампа базы данных (pg_dump) на новый хост, используя безопасный метод, например SCP (Secure Copy) или любой другой механизм передачи файлов, который вы предпочитаете.

Шаг 4: Восстановите базу данных на новом хосте

  1. После того как файл дампа базы данных окажется на новом хосте, откройте терминал или командную строку на новом хосте. Перейдите в каталог, в котором находится файл дампа базы данных.

cd /path/to/source_directory
  1. Скопируйте файл дампа базы данных в контейнер security-center_postgres_1 на новом хосте:

docker cp pg_dump security-center_postgres_1:/pg_dump
  1. Восстановите базу данных из дампа на новом хосте внутри контейнера:

docker exec -it security-center_postgres_1 psql -U <DB_USERNAME> -d <DB_NAME> -f /pg_dump

Поздравляем! Вы успешно перенесли базу данных.

Вы также можете использовать это руководство для восстановления базы данных из резервной копии, пропустив шаги 2 и 3.

Last updated