mirror of
https://github.com/Steffo99/alexandria.git
synced 2024-11-21 21:34:19 +00:00
55 lines
2 KiB
Markdown
55 lines
2 KiB
Markdown
# Tecnologia database
|
|
|
|
## Database Management System
|
|
|
|
Si è scelto di utilizzare **PostgreSQL** (_Postgres_) come DBMS in quanto è quello con il quale i membri del gruppo erano più famigliari.
|
|
|
|
## Strumenti aggiuntivi
|
|
|
|
Per assistere nella progettazione fisica, sono stati usati due strumenti per la manipolazione di database Postgres:
|
|
|
|
- [pgAdmin 4](https://www.pgadmin.org/)
|
|
- Il plugin [Database Tools and SQL](https://plugins.jetbrains.com/plugin/10925-database-tools-and-sql) per IDE basati su IntelliJ
|
|
|
|
## Hosting
|
|
|
|
Per facilitare la collaborazione, si è scelto di condividere un'**istanza remota** di PostgreSQL installata su un server Ubuntu 18.04.4 LTS, alla quale ci si è connessi con username e password individuali.
|
|
|
|
________________________________________________
|
|
|
|
```bash
|
|
lsb_release -a
|
|
```
|
|
```text
|
|
No LSB modules are available.
|
|
Distributor ID: Ubuntu
|
|
Description: Ubuntu 18.04.4 LTS
|
|
Release: 18.04
|
|
Codename: bionic
|
|
```
|
|
|
|
________________________________________________
|
|
|
|
```sql
|
|
SELECT version();
|
|
```
|
|
|
|
| version |
|
|
|---------|
|
|
| PostgreSQL 10.12 (Ubuntu 10.12-0ubuntu0.18.04.1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0, 64-bit |
|
|
|
|
## Riproduzione del database
|
|
|
|
È allegato alla relazione il file [`5-database.sql`](5-database.sql), contenente tutte le istruzioni necessarie per ricreare il database descritto in questo capitolo.
|
|
|
|
Esso è stato ottenuto tramite [`pg_dump`](https://www.postgresql.org/docs/9.3/app-pgdump.html), un'utilità per l'archiviazione di database Postgres, eseguito con il seguente comando Bash:
|
|
|
|
```bash
|
|
pg_dump --dbname=alexandria --schema='public' --file="5-database.sql" --no-owner --no-acl
|
|
```
|
|
|
|
È possibile ricreare il database eseguendo manualmente tutte le istruzioni contenute nel file `.sql`, oppure eseguendo [`pg_restore`](https://www.postgresql.org/docs/9.3/app-pgrestore.html), la controparte di `pg_dump` per il ripristino, con il seguente comando Bash:
|
|
|
|
```bash
|
|
pg_restore --dbname="alexandria" --schema="public" --file="5-database.sql"
|
|
```
|