Documentazione di PostgreSQL 9.0 > Amministrazione del server > Gestire un database
PrecedenteSicurezza di funzioni e triggerCreare un databaseSuccessivo

21. Gestire un database

Ogni istanza di un server PostgreSQL™ in esecuzione gestisce uno o più database. I database sono inoltre il livello gerarchico più alto per l'organizzazione degli oggetti SQLoggetti del database»). Questo capitolo descrive le proprietà dei database, e come crearli, gestirli e distruggerli.

21.1. Panoramica

Un database è una collezione nominata di oggetti SQLoggetti del database»). Generalmente, ogni oggetto del database (tabelle, funzioni, ecc.) appartiene ad un e uno soltanto database. (Comunque ci sono alcuni cataloghi di sistema, per esempio pg_database, che appartengono all'intero cluster e sono accessibili da ogni database all'interno del cluster). Più precisamente, un database è una collezione di schemi e gli schemi contengono le tabelle, funzioni, ecc. Così la gerarchia completa è: server, database, schema, tabella (o altri tipi di oggetto, tipo una funzione).

Quando ci si connette a un server database, un client deve specificare nella sua richieta di connessione il nome del database a cui vuole connettersi. Non è possibile avere accesso a più di un database per connessione. Comunque, un'applicazione non ha vincoli per quanto riguarda il numero di connessioni che apre sullo stesso o su altri database. I database sono fisicamente separati e il controllo degli accessi è gestito a livello di connessione. Se un'istanza di server PostgreSQL™ serve a più progetti o utenti che dovrebbero essere separati e per la maggior parte insicuri a vicenda, è comunque raccomandabile metterli in database separati. Se i progetti degli utenti sono collegati e dovrebbero essere capaci di usare le risorse vicendevolmente, dovrebbero essere messi nello stesso database ma possibilmente in schemi separati. Hli schemi sono una struttura puramente logica e chi può accedere a cosa è gestito dal sistema dei privilegi. Maggiori informazioni sulla gestione degli schemi si trovano in Sezione 5.7, «Schemi».

I database vengono creati con il comando CREATE DATABASE (si veda Sezione 21.2, «Creare un database») e distrutte con il comando DROP DATABASE (si veda Sezione 21.5, «Distruggere un Database»). Per determinare l'insieme di database esistenti, esaminare il catalogo di sistema pg_database, per esempio

SELECT datname FROM pg_database;

Il meta-comando \l del programma psql(1) e l'opzione a linea di comando -l sono utili anche per eselncare i database esistenti.

[Nota]

Nota

Lo standard SQL chiama i database «cataloghi», ma in pratica non c'è differenza.

Documentazione di PostgreSQL 9.0 > Amministrazione del server > Gestire un database
PrecedenteSicurezza di funzioni e triggerCreare un databaseSuccessivo