Migracija sa MySQL-a na PostgreSQL
From RCUB
(Dodao podnaslove) |
|||
Line 18: | Line 18: | ||
promeniti parametre konekcije. | promeniti parametre konekcije. | ||
− | + | U slucaju da se koriste Native upiti pod JPA-om, ili da se koristi JDBC, potrebno je | |
− | insertovanje podataka. Sve promene koje | + | nekoliko zahvata na MySQL upitima (npr. skriptovi za kreiranje i |
+ | insertovanje podataka) da bi bili kompatibilni sa Postgresom. Sve promene koje treba obaviti na njima su | ||
lepo dokumentovane na: | lepo dokumentovane na: | ||
− | + | http://www.markslade.name/Articles.html?a=9 | |
Pored navedenih, naišli smo na još dve stvari: | Pored navedenih, naišli smo na još dve stvari: | ||
− | + | # U MySQL-u u insert statmentu za BOOLEAN polje je dozvoljeno staviti | |
vrednost 1, u Postgresu mora '1' (pod apostrofima) | vrednost 1, u Postgresu mora '1' (pod apostrofima) | ||
− | + | # LONGBLOB u MySQL-u se escape-uje heksadekadno, a BYTEA u Postgresu | |
oktalno | oktalno | ||
Line 34: | Line 35: | ||
srpsko sortianje (zavisi od podešavanja locale-a prilikom kreiranja baze). | srpsko sortianje (zavisi od podešavanja locale-a prilikom kreiranja baze). | ||
− | + | ==Performanse== | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | Merenje pod koliko-toliko ravnopravnim uslovima (isti | |
− | server, isti skup podataka, isti upit, deset ponavljanja) | + | server, isti skup podataka, isti upit, deset ponavljanja) je pokazalo +30% u brzini u korist Postgresa. |
− | + | ||
− | + | ==Hijerarhija== | |
Obratite takođe pažnju, hijerarhija u Postgresu je baza, šema, tabela. | Obratite takođe pažnju, hijerarhija u Postgresu je baza, šema, tabela. | ||
Line 50: | Line 46: | ||
Tako da je verovatno najlakše kreirati posebne baze i koristiti njihove | Tako da je verovatno najlakše kreirati posebne baze i koristiti njihove | ||
default "public" šeme. | default "public" šeme. | ||
+ | |||
+ | ==PSQL komande== | ||
psql komande koje vam mogu biti od interesa: | psql komande koje vam mogu biti od interesa: | ||
Line 58: | Line 56: | ||
\du - listanje svih korisnika | \du - listanje svih korisnika | ||
− | CREATE USER username PASSWORD 'l0zinka' - kreiranje korisnika | + | CREATE USER username PASSWORD 'l0zinka'; -- kreiranje korisnika |
− | GRANT ALL ON SCHEMA public TO username; - dodeljivanje privilegija | + | GRANT ALL ON SCHEMA public TO username; -- dodeljivanje privilegija |
+ | |||
+ | ==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, |