upd lab1
This commit is contained in:
Binary file not shown.
@@ -1,5 +1,13 @@
|
||||
#set text(size: 1.3em)
|
||||
#show link: underline
|
||||
#set page(footer: context {
|
||||
if counter(page).get().first() > 1 [
|
||||
#align(center)[
|
||||
#counter(page).display("1")
|
||||
]
|
||||
]
|
||||
})
|
||||
|
||||
|
||||
#show raw.where(block: false): box.with(
|
||||
fill: luma(240),
|
||||
@@ -25,7 +33,7 @@
|
||||
\
|
||||
\
|
||||
#align(center)[Практическая работа №1]
|
||||
#align(center)[Установка и первоначальная настройка СУБД PostgreSQL. Создание и исследование баз данных Demo и HR]
|
||||
#align(center)[Установка и первоначальная настройка субд postgresql.]
|
||||
\
|
||||
\
|
||||
\ //#align(center)[Вариант 19]
|
||||
@@ -50,47 +58,43 @@
|
||||
|
||||
=== Цель работы:
|
||||
|
||||
Освоить базовые приёмы установки и настройки СУБД PostgreSQL, научиться использовать pgAdmin для администрирования, развернуть учебную базу данных Demo и ознакомиться с её структурой, а также закрепить навыки создания баз данных и схем на примере учебной БД HR.
|
||||
Освоить базовые приёмы установки и настройки субд "postgresql", научиться использовать pgadmin для администрирования, развернуть учебную базу данных "demo" и ознакомиться с её структурой, а также закрепить навыки создания баз данных и схем на примере учебной бд "hr".
|
||||
|
||||
=== Задачи, решаемые при выполнении работы.
|
||||
|
||||
- Установить и настроить СУБД PostgreSQL и клиент pgAdmin.
|
||||
- Проверить корректность работы сервера с помощью выполнения тестового SQL-запроса.
|
||||
- Развернуть учебную базу данных Demo из предоставленного SQL-дампа и убедиться в доступности её объектов.
|
||||
- Ознакомиться со структурой базы данных Demo и проанализировать основные сущности.
|
||||
- Создать учебную базу данных HR двумя способами: через графический интерфейс pgAdmin и с помощью SQL-оператора `CREATE DATABASE`.
|
||||
- Создать в базе данных HR схемы для группировки объектов (через GUI и SQL).
|
||||
- Установить и настроить субд postgresql и клиент pgadmin.
|
||||
- Проверить правильность работы сервера с помощью выполнения тестового запроса.
|
||||
- Развернуть учебную базу demo и убедиться в доступности её объектов.
|
||||
- Ознакомиться со структурой базы demo и проанализировать основные сущности.
|
||||
- Создать учебную базу данных двумя способами: через графический интерфейс и с помощью `CREATE DATABASE`.
|
||||
- Создать в базе данных hr схемы для группировки объектов.
|
||||
|
||||
=== Исходные данные.
|
||||
|
||||
- Сервер с установленными Docker и контейнерами:
|
||||
- postgres:16 — сервер СУБД PostgreSQL,
|
||||
- Сервер с установленными docker и контейнерами:
|
||||
- postgres:16 — сервер субд postgresql,
|
||||
- dpage/pgadmin4 — веб-интерфейс для администрирования.
|
||||
- Учебный SQL-дамп базы данных Demo (`demo-medium-20170815.sql`), предоставленный разработчиками Postgres Pro.
|
||||
- Методические материалы по практической работе №1.
|
||||
- Доступ к веб-интерфейсу pgAdmin 4 для подключения и выполнения SQL-запросов.
|
||||
- Учебная база данных demo.
|
||||
|
||||
=== Выполнение работы.
|
||||
|
||||
==== Задание 1. Установка необходимого ПО.
|
||||
|
||||
Для выполнения работы была установлена система управления базами данных PostgreSQL и клиентское приложение pgAdmin. Установка производилась в среде Docker.
|
||||
Для выполнения работы была установлена субд postgresql и приложение pgadmin. Установка производилась в среде docker.
|
||||
|
||||
- На сервере был установлен Docker и запущены контейнеры:
|
||||
- `postgres:16` - сервер СУБД PostgreSQL,
|
||||
- `dpage/pgadmin4` - веб-интерфейс pgAdmin для администрирования.
|
||||
На сервере был установлен docker и запущены контейнеры: `postgres:16`, `dpage/pgadmin4`.
|
||||
|
||||
#align(center)[#image("assets/18.png")]
|
||||
|
||||
- Контейнеры были объединены в общую сеть Docker, чтобы pgAdmin мог напрямую подключаться к Postgres.
|
||||
Контейнеры были объединены в общую сеть docker, чтобы pgadmin мог напрямую подключаться к postgres.
|
||||
|
||||
#align(center)[#image("assets/19.png")]
|
||||
|
||||
- pgAdmin 4 стал доступен по адресу #link("https://db.fymio.us")[db.fymio.us]
|
||||
pgadmin стал доступен по адресу #link("https://db.fymio.us")[db.fymio.us]
|
||||
|
||||
#align(center)[#image("assets/20.png")]
|
||||
|
||||
- В pgAdmin был зарегистрирован новый сервер. В настройках подключения были указаны следующие параметры:
|
||||
В pgadmin был зарегистрирован новый сервер. В настройках подключения были указаны следующие параметры:
|
||||
|
||||
#align(center)[#image("assets/16.png")]
|
||||
#align(center)[#image("assets/17.png")]
|
||||
@@ -130,24 +134,7 @@ SELECT * FROM bookings.aircrafts_data;
|
||||
|
||||
==== Задание 3. Ознакомление с учебной БД.
|
||||
|
||||
Я открыл в pgAdmin дерево объектов и изучил структуру. В схеме `booking` находятся основные таблицы:
|
||||
|
||||
#align(center)[
|
||||
#table(columns: 2)[*Таблица*][*Описание*][bookings][содержит данные о бронированиях][tickets][хранит информацию о билетах и пассажирах][flights][сведения о рейсах][airports][справочник аэропортов][aircrafts][справочник моделей самолетов][seats][информация о местах в самолётах и классах обслуживания][ticket_flights][связь билетов и рейсов][boarding_passes][посадочные талоны с указанием мест в самолёте]
|
||||
]
|
||||
|
||||
Для проверки содержимого таблиц я выполнил несколько тестовых запросов, например:
|
||||
|
||||
```sql
|
||||
SELECT * FROM bookings.bookings LIMIT 5;
|
||||
SELECT * FROM bookings.tickets LIMIT 5;
|
||||
SELECT * FROM bookings.flights LIMIT 5;
|
||||
```
|
||||
|
||||
#align(center)[#image("assets/21.png")]
|
||||
#align(center)[#image("assets/22.png")]
|
||||
#align(center)[#image("assets/23.png")]
|
||||
|
||||
Я ознакомился с описанием БД на сайте #link("https://postgrespro.ru/education/demodb")[postgrespro.ru/education/demodb]
|
||||
|
||||
==== Задание 4. Создание учебной базы данных HR средствами pgAdmin.
|
||||
|
||||
@@ -212,18 +199,9 @@ AUTHORIZATION postgres;
|
||||
|
||||
=== Выводы.
|
||||
|
||||
В ходе выполнения работы я освоил базовые приёмы установки и настройки СУБД PostgreSQL, а также работу с клиентским приложением pgAdmin. Было развернуто необходимое программное обеспечение в контейнерах Docker.
|
||||
В ходе выполнения работы я освоил базовые приёмы установки и настройки субд postgresql, а также работу с клиентским приложением pgadmin. Было развернуто необходимое программное обеспечение в контейнерах Docker.
|
||||
|
||||
В процессе работы удалось:
|
||||
В процессе работы удалось установить postgresql и pgadmin, загрузить и подключить учебную базу данных и выполнить тестовые запросы к ней, ознакомиться со структурой demo и основными сущностями, создать учебную базу данных двумя способами, через графический интерфейс pgadmin и с использованием `CREATE DATABASE`, создать в базе две схемы: одну средствами pgadmin, вторую — с помощью sql-запроса.
|
||||
|
||||
- установить PostgreSQL и pgAdmin
|
||||
- загрузить и подключить учебную базу данных и выполнить тестовые запросы к ней
|
||||
- ознакомиться со структурой Demo и основными сущностями
|
||||
- создать учебную базу данных двумя способами — через графический интерфейс pgAdmin и с использованием SQL-оператора `CREATE DATABASE`
|
||||
- создать в базе две схемы: одну средствами pgAdmin, вторую — с помощью SQL-запроса.
|
||||
|
||||
При выполнении работы возникли следующие трудности:
|
||||
|
||||
- при создании базы данных через SQL возникала ошибка с параметрами локали. Она была устранена с помощью указания `TEMPLATE template0` и нейтральной локали `C`
|
||||
- при подключении pgAdmin к серверу пришлось настраивать отдельную Docker-сеть и регистрировать контейнеры, чтобы обеспечить доступность сервиса по адресу `db.fymio.us`.
|
||||
При выполнении работы возникли следующие трудности: при создании базы данных через SQL возникала ошибка с параметрами локали. Она была устранена с помощью указания `TEMPLATE template0` и нейтральной локали `C`. При подключении pgadmin к серверу пришлось настраивать отдельную docker-сеть и регистрировать контейнеры, чтобы обеспечить доступность сервиса по адресу #link("https://db.fymio.us")[`db.fymio.us`].
|
||||
|
||||
|
||||
Reference in New Issue
Block a user