introduzione
PostgreSQL è il sistema di gestione di database relazionali (RDBMS) open source più avanzato al mondo. È conforme agli standard ANSI SQL: 2008 e ha la maggior parte dei tipi di dati definiti nelle sue specifiche, tra cui INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL e TIMESTAMP.
È in fase di sviluppo attivo da più di 15 anni e recentemente ha guadagnato più buzz grazie alla sua aggiunta di tipi di dati nativi JSON e JSONB, facendoli sembrare una soluzione praticabile ai problemi che i database NoSQL sono tradizionalmente usati per risolvere.
Installazione
Aggiorna repository yum:
sudo yum install update
Ottieni l'ultimo pacchetto di PostgreSQL per CentOS 7:
- Visita il repository ufficiale e individua l'ultima versione stabile di PostgreSQL per CentOS 7 (al momento della scrittura, l'ultima versione è 9.3).
- Fare clic con il tasto destro sul collegamento per il download e copiarne l'indirizzo.
- Scarica sul tuo VPS eseguendo:
curl -O http://yum.postgresql.org/9.3/redhat/rhel-7-x86_64/pgdg-centos93-9.3-1.noarch.rpm
(Sostituisci l'URL con il pacchetto repo di conseguenza).
Installa il pacchetto PostgreSQL scaricato:
sudo rpm -ivh pgdg-centos93-9.3-1.noarch.rpm
Installa PostgreSQL:
sudo yum -y install postgresql93-server postgresql93-contrib
Inizializza il database:
sudo service postgresql-9.3 initdb
Se il comando precedente non è riuscito, chiamare direttamente il file binario di installazione:
sudo /usr/pgsql-9.3/bin/postgresql93-setup initdb
Immettere il comando seguente per modificare il /etc/sysconfig/pgsql/postgresql-9.3
file. Se il file non esiste, sarà vuoto, il che va bene.
nano /etc/sysconfig/pgsql/postgresql-9.3
Aggiungi o modifica le opzioni PGPORT e PGDATA in modo che corrispondano all'esempio seguente. Premi CTRL + X , quindi Y dopo la modifica.
PGPORT=5438
PGDATA=/pgdata93
Avviare il database e configurarlo per l'esecuzione all'avvio del server:
sudo service postgresql-9.3 start
sudo chkconfig postgresql-9.3 on
Accesso al database
PostgreSQL crea un utente predefinito sul sistema denominato postgres
senza password. Passa postgres
all'utente e accedi al prompt PostgreSQL.
su postgres
psql
Quando viene visualizzato il messaggio PosgreSQL, è possibile digitare help
per visualizzare un elenco di comandi per facilitare l'accesso al database. Si noti che potrebbe essere necessario digitare q
o :
seguito da q
per uscire dalla schermata della guida.
Esempi di utilizzo
Elenca tutti i database sul sistema e connettiti al database predefinito postgres
:
postgres=# \list
postgres=# \c postgres
You are now connected to database "postgres" as user "postgres".
Elenca le tabelle presenti nel database Postgres (non ce ne dovrebbero essere):
postgres=# \d
No relations found.
Crea una tabella semplice e controlla per assicurarti che sia stata creata correttamente:
postgres=# create table tweets (name varchar(25), twitterHandle varchar(25), message varchar(250));
CREATE TABLE
postgres=# \d
List of relations
Schema | Name | Type | Owner
--------+--------+-------+----------
public | tweets | table | postgres
(1 row)
Inserisci alcuni record nella tabella:
postgres=# INSERT INTO tweets VALUES ('Lami','mrLami','Best cloud hosting on the planet, Vultr');
INSERT 0 1
postgres=# INSERT INTO tweets VALUES ('Vultr Hosting','@TheVultr','50% off coupon for new instances');
INSERT 0 1
Tabella delle query per visualizzare i risultati:
postgres=# select * from tweets;
name | twitterhandle | message
--------------+---------------+--------------------------------------------------
Lami | mrLami | Best cloud hosting on the planet, Vultr
Vultr Hosting | @TheVultr | 50% off coupon for new instances
(2 rows)
Esci dal prompt PosgreSQL:
postgres=# \q
Controlla il servizio PostgreSQL:
sudo service postgresql-9.3 start
sudo service postgresql-9.3 stop
sudo service postgresql-9.3 restart
Conclusione
PosgreSQL è un database altamente avanzato che può fare molto di più di quello che è stato delineato in questo articolo. Visita la documentazione di PostgreSQL per ulteriori informazioni su funzionalità più specifiche come: controllo della concorrenza multi-versione (MVCC), recupero point-in-time, tablespace, replica asincrona, transazioni nidificate (punti di salvataggio), backup online / a caldo, pianificatore di query / ottimizzatore e scrivere in anticipo registrando per tolleranza d'errore.
Altre versioni
Ubuntu
CentOS 7
Scritto da Lami Adabonyan