Migracija sa MySQL-a na PostgreSQL
From RCUB
Line 1: | Line 1: | ||
− | PostgreSQL se čita kao "Postgres Kju El" ili samo "Postgres". | + | Timovi koji imaju nameru da MySQL zamene sa PostgreSQL-om, ovaj dokument mogu da koriste kao polaznu osnovu. PostgreSQL se čita kao "Postgres Kju El" ili samo "Postgres". |
==JDBC parametri konekcije za PostgreSQL== | ==JDBC parametri konekcije za PostgreSQL== | ||
Line 35: | Line 35: | ||
==Performanse== | ==Performanse== | ||
− | + | Vrlo površno merenje pod koliko-toliko ravnopravnim uslovima (isti | |
server, isti skup podataka, isti upit, deset ponavljanja) je pokazalo +30% u brzini u korist Postgresa. | server, isti skup podataka, isti upit, deset ponavljanja) je pokazalo +30% u brzini u korist Postgresa. | ||
==Hijerarhija== | ==Hijerarhija== | ||
− | + | Hijerarhija u Postgresu je baza, šema, tabela. | |
JDBC string za konekciju prima kao parametar samo ime baze, a ne i šemu. | JDBC string za konekciju prima kao parametar samo ime baze, a ne i šemu. | ||
Tako da je verovatno najlakše kreirati posebne baze i koristiti njihove | Tako da je verovatno najlakše kreirati posebne baze i koristiti njihove | ||
Line 47: | Line 47: | ||
==PSQL komande== | ==PSQL komande== | ||
− | psql je linux konzolni SQL klijent. Komande koje vam mogu biti od interesa: | + | '''psql''' je linux konzolni SQL klijent. Komande koje vam mogu biti od interesa: |
\l - listanje baza podataka | \l - listanje baza podataka | ||
Line 54: | Line 54: | ||
\du - listanje svih korisnika | \du - listanje svih korisnika | ||
− | CREATE USER username PASSWORD 'l0zinka'; | + | Kreiranje baze: |
− | GRANT ALL ON SCHEMA public TO username; | + | |
+ | CREATE DATABASE "TestBaza" WITH ENCODING='UTF8'; | ||
+ | |||
+ | Kreiranje korisnika: | ||
+ | |||
+ | CREATE USER username PASSWORD 'l0zinka'; | ||
+ | |||
+ | Dodeljivanje privilegija nad default "public" šemom. | ||
+ | |||
+ | GRANT ALL ON SCHEMA public TO username; | ||
==Konfigurisanje servera== | ==Konfigurisanje servera== | ||
Da bi ste omogućili pristup serveru preko JDBC-ja odnosno TCP/IP-ja, | Da bi ste omogućili pristup serveru preko JDBC-ja odnosno TCP/IP-ja, | ||
− | potrebno je da u data/postgresql.conf navedete: | + | potrebno je da u '''data/postgresql.conf''' navedete: |
− | listen_addresses = '*' # what IP address(es) to listen on; | + | listen_addresses = '*' # what IP address(es) to listen on; |
− | port = 5432 # (change requires restart) | + | port = 5432 # (change requires restart) |
− | i da u data/pg_hba.conf dodate: | + | i da u '''data/pg_hba.conf''' dodate: |
− | # TYPE DATABASE USER CIDR-ADDRESS METHOD | + | # TYPE DATABASE USER CIDR-ADDRESS METHOD |
− | host mydb ognjen 147.91.4.66/32 md5 | + | host mydb ognjen 147.91.4.66/32 md5 |