Uvod
Montaža
Konfigurirajte i pokrenite bazu podataka
Pristup bazi podataka
Primjeri upotrebe
Zaključak
Uvod
PostgreSQL je najnapredniji svjetski otvoreni sustav za upravljanje relacijskim bazama podataka (RDBMS). Sukladan je ANSI SQL:2008 standardima i ima većinu tipova podataka definiranih u svojoj specifikaciji, uključujući INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL i TIMESTAMP.
Bio je u aktivnom razvoju više od 15 godina, a u posljednje je vrijeme dobio više pažnje zbog dodavanja izvornih tipova podataka JSON i JSONB, zbog čega se na njega gleda kao na održivo rješenje za probleme koje se tradicionalno koriste NoSQL baze podataka.
Montaža
Ažurirajte yum repozitorij:
sudo yum install update
Nabavite najnoviji paket PostgreSQL za CentOS 7:
- Posjetite službeni repozitorij i pronađite najnoviju stabilnu verziju PostgreSQL-a za CentOS 7 (u trenutku pisanja, najnovija verzija je 9.3).
- Desnom tipkom miša kliknite vezu za preuzimanje i kopirajte njezinu adresu.
- Preuzmite na svoj VPS pokretanjem:
curl -O http://yum.postgresql.org/9.3/redhat/rhel-7-x86_64/pgdg-centos93-9.3-1.noarch.rpm(Zamijenite URL s repo paketom u skladu s tim).
Instalirajte preuzeti paket PostgreSQL:
sudo rpm -ivh pgdg-centos93-9.3-1.noarch.rpm
Instalirajte PostgreSQL:
sudo yum -y install postgresql93-server postgresql93-contrib
Inicijalizirajte bazu podataka:
sudo service postgresql-9.3 initdb
Ako prethodna naredba nije uspjela, pozovite izravno binarni program za postavljanje:
sudo /usr/pgsql-9.3/bin/postgresql93-setup initdb
Izdajte donju naredbu za uređivanje /etc/sysconfig/pgsql/postgresql-9.3datoteke. Ako datoteka ne postoji, bit će prazna, što je u redu.
nano /etc/sysconfig/pgsql/postgresql-9.3
Dodajte ili izmijenite PGPORT i PGDATA opcije tako da odgovaraju uzorku u nastavku. Pritisnite CTRL + X , a zatim Y nakon uređivanja.
PGPORT=5438
PGDATA=/pgdata93
Pokrenite bazu podataka i konfigurirajte je za pokretanje kada se poslužitelj pokrene:
sudo service postgresql-9.3 start
sudo chkconfig postgresql-9.3 on
Pristup bazi podataka
PostgreSQL stvara zadanog korisnika na sustavu postgress imenom bez lozinke. Prijeđite na postgreskorisnika i pristupite PostgreSQL promptu.
su postgres
psql
Kada ste u promptu PosgreSQL, možete upisati helpda biste vidjeli popis naredbi koje će vam pomoći pri pristupu bazi podataka. Imajte na umu da ćete možda morati upisati qili :nakon toga qza izlaz iz zaslona pomoći.
Primjeri upotrebe
Navedite sve baze podataka na sustavu i povežite se sa zadanom bazom podataka postgres:
postgres=# \list
postgres=# \c postgres
You are now connected to database "postgres" as user "postgres".
Navedite tablice prisutne u Postgres bazi podataka (ne smije ih biti):
postgres=# \d
No relations found.
Napravite jednostavnu tablicu i provjerite je li ispravno kreirana:
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)
Umetnite neke zapise u tablicu:
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
Tablica upita da vidite rezultate:
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)
Izađite iz PosgreSQL prompta:
postgres=# \q
Upravljajte uslugom PostgreSQL:
sudo service postgresql-9.3 start
sudo service postgresql-9.3 stop
sudo service postgresql-9.3 restart
Zaključak
PosgreSQL je vrlo napredna baza podataka koja može učiniti više od onoga što je navedeno u ovom članku. Posjetite PostgreSQL dokumentaciju za daljnje čitanje o specifičnijim značajkama kao što su: kontrola istodobnosti više verzija (MVCC), oporavak u trenutku, prostori tablica, asinkrona replikacija, ugniježđene transakcije (točke spremanja), online/hot backups, planer upita/optimizator i unaprijed zapišite zapisnik radi tolerancije grešaka.
Ostale verzije
Ubuntu
CentOS 7
Napisala Lami Adabonyan