Скачиваний:
4
Добавлен:
28.12.2024
Размер:
186.15 Кб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

Факультет: Кибербезопасности

Кафедра: Защищенных систем связи

Дисциплина: Основы построения сертифицированных защищенных БД РФ

ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №4

РЕЗЕРВНОЕ КОПИРОВАНИЕ

(тема отчета)

Направление/специальность подготовки

10.03.01 Информационная безопасность

(код и наименование направления/специальности)

Выполнили работу:

Травкина Е.А., ИКБ-14

(Ф.И.О., № группы) (подпись)

Федченко А.С., ИКБ-14

(Ф.И.О., № группы) (подпись)

Ящук А.А., ИКБ-14

(Ф.И.О., № группы) (подпись)

Принял работу:

к.т.н., доцент, Пестов И.Е.

(должность, Ф.И.О.) (подпись)

Оглавление

Цель лабораторной работы 3

Задачи 3

Используемое программное обеспечение 3

Ход выполнения лабораторной работы 3

Вывод 5

Листинг 6

Цель лабораторной работы

Изучить процесс резервного копирования баз данных стандартными командами в PostgreSQL.

Задачи

Для достижения поставленной цели были разработаны следующие задачи:

  1. создать новую базу данных db2;

  2. создать новый tablespace для db2 для хранения данных в различных директориях;

  3. выполнить резервное копирование данных из базы данных db1 в новую базу данных db2;

  4. проверить целостность восстановленных данных.

Используемое программное обеспечение

Для выполнения лабораторной работы используется установленный дистрибутив ОС Astra Linux.

Ход выполнения лабораторной работы

Для выполнения лабораторной работы были выполнены следующие шаги:

  1. Необходимо создать новую базу данных db2 (см. Рис. 1), которая станет резервной копией базы данных db1, созданной в 1 лабораторной работе.

Рис. 1. Создание db2

  1. Далее нужно создать новый tablespace (см. Рис. 2) и поменять директорию для db2 на созданную (см. Рис. 3).

Рис. 2. Создание новой директории для bd2

Рис. 3. Смена tablespace для db2

  1. Проверку tablespace баз данных можно выполнить командой продемонстрированной на Рис. 4.

Рис. 4. Вывод баз данных и их tablespace

  1. Далее для резервного копирования необходимо воспользоваться командой pg_dump для создания резервной копии базы данных db1 и последующего восстановления в db2 (см. Рис. 5).

Рис. 5. Команда для резервного копирования базы данных

  1. Проверку данных можно произвести путём подключения к новой базе данных db2 и выполнения запросов для проверки наличия таблиц (см. Рис. 6). Все данные db1 теперь скопированы в db2.

Рис. 6. Вывод таблиц db2

Вывод

В ходе лабораторной работы был успешно выполнен процесс резервного копирования и восстановления базы данных PostgreSQL с использованием нового tablespace. Создание новой базы данных db2 и tablespace позволило расширить знания о работе с PostgreSQL и управлении данными. Результаты работы подтвердили целостность и доступность данных в восстановленной базе, что свидетельствует о корректности выполненных операций резервного копирования и восстановления.

Листинг

postgres=# CREATE DATABASE db2;

CREATE DATABASE

user@server:~$ sudo mkdir -p /mnt/pg_data/tablespace/conf_star

user@server:~$ sudo chmod 700 /mnt/pg_data/tablespace/conf_star

user@server:~$ sudo chown postgres:postgres /mnt/pg_data/tablespace/conf_star

postgres=# CREATE TABLESPACE conf_star LOCATION '/mnt/pg_data/tablespace/conf_star';

CREATE TABLESPACE

postgres=# ALTER DATABASE db2 SET TABLESPACE conf_star;

ALTER DATABASE

postgres=# SELECT datname, spcname

FROM pg_database d LEFT JOIN pg_tablespace t ON d.dattablespace = t.oid;

datname | spcname

-----------+------------

postgres | pg_default

template1 | pg_default

template0 | pg_default

db1 | pg_default

db2 | conf_star

(5 строк)

postgres=# \c db1

db1=# \dt

Список отношений

Схема | Имя | Тип | Владелец

--------+----------+---------+----------

public | orders | таблица | postgres

public | payments | таблица | postgres

public | users | таблица | postgres

(3 строки)

postgres=# \! pg_dump -U postgres -d db1 | psql -U postgres -d db2

SET

SET

SET

SET

SET

set_config

------------

(1 строка)

SET

SET

SET

SET

SET

MAC LABEL

MAC CCR

MAC LABEL

MAC CCR

SET

SET

CREATE TABLE

ALTER TABLE

MAC LABEL

MAC CCR

CREATE SEQUENCE

ALTER TABLE

ALTER SEQUENCE

MAC LABEL

MAC CCR

CREATE TABLE

ALTER TABLE

MAC LABEL

MAC CCR

CREATE SEQUENCE

ALTER TABLE

ALTER SEQUENCE

MAC LABEL

MAC CCR

CREATE TABLE

ALTER TABLE

MAC LABEL

MAC CCR

CREATE SEQUENCE

ALTER TABLE

ALTER SEQUENCE

MAC LABEL

MAC CCR

ALTER TABLE

ALTER TABLE

ALTER TABLE

COPY 10

COPY 0

COPY 10

setval

--------

10

(1 строка)

setval

--------

3

(1 строка)

setval

--------

10

(1 строка)

ALTER TABLE

ALTER TABLE

ALTER TABLE

ALTER TABLE

ALTER TABLE

ALTER TABLE

postgres=# \c db2

Вы подключены к базе данных "db2" как пользователь "postgres".

db2=# \dt

Список отношений

Схема | Имя | Тип | Владелец

--------+----------+---------+----------

public | orders | таблица | postgres

public | payments | таблица | postgres

public | users | таблица | postgres

(3 строки)

Санкт-Петербург

2024

Соседние файлы в предмете Основы построения сертифицированных защищенных баз данных РФ