PostgreSQL
From RCUB
(→Upgrade sa 8.1 na 8.3 / 8.4: Promenio verziju) |
(→Upgrade sa 8.1 na 8.3 / 8.4) |
||
Line 136: | Line 136: | ||
vacuumdb -az | vacuumdb -az | ||
− | ==Upgrade | + | ==Upgrade major verzije== |
− | |||
Kod Postgresa su prve dve cifre oznaka major verzije, što znači da je | Kod Postgresa su prve dve cifre oznaka major verzije, što znači da je | ||
− | 8.4 | + | npr. 8.4 major upgrade u odnosu na 8.3 i slično. |
− | + | Major upgrade podrazumeva da je došlo do promene na strukturi podataka | |
− | + | u fajl sistemu i da je potreban export/import prilikom upgrade-a. | |
− | + | Za razliku od toga kod minor upgrade-a (npr. 8.4.0 u 8.4.1) struktura | |
− | + | podataka je sigurno ostala ista i nije potreban eksport i import. | |
− | + | Pre upgrade-a uraditi backup, i premestiti DB klaster direktorijum: | |
− | + | pg_dumpall > pg_all.sql | |
+ | /etc/rc.d/init.d/postgresql stop | ||
+ | /etc/rc.d/init.d/postgresql-9.0 stop | ||
+ | mv /var/lib/pgsql /var/lib/pgsql.old | ||
− | + | Opisano u | |
− | http:// | + | http://www.postgresql.org/docs/9.0/interactive/install-upgrading.html |
− | + | ||
− | + | Za upgrade servera treba koristiti Postgresov yum repozitorijum: | |
− | + | ||
− | + | http://yum.pgrpms.org/reporpms/ | |
− | + | ||
− | + | Prateci linkove, nađite repository RPM, na primer: | |
− | + | http://yum.pgrpms.org/reporpms/8.3/pgdg-centos-8.3-7.noarch.rpm | |
− | rpm -i pgdg-centos- | + | http://yum.pgrpms.org/reporpms/8.4/pgdg-centos-8.4-2.noarch.rpm |
+ | http://yum.pgrpms.org/reporpms/9.0/pgdg-centos-9.0-2.noarch.rpm | ||
+ | |||
+ | Instalirajte RPM sa: | ||
+ | |||
+ | wget http://yum.pgrpms.org/reporpms/9.0/pgdg-centos-9.0-2.noarch.rpm | ||
+ | rpm -i pgdg-centos-9.0-2.noarch.rpm | ||
Proverite da li se u /etc/yum.repos.d/ nalazi pgdg-8*-centos.repo. | Proverite da li se u /etc/yum.repos.d/ nalazi pgdg-8*-centos.repo. | ||
Obrisati viškove. Na primer, ako se radi migracija sa 8.3 na 8.4 moguće je da već postoji | Obrisati viškove. Na primer, ako se radi migracija sa 8.3 na 8.4 moguće je da već postoji | ||
− | stari pgdg-83-centos.repo koga treba obrisati. | + | stari pgdg-83-centos.repo koga treba obrisati. Ako ima konflikta deinstalirati stari Postgres. |
− | + | ||
+ | '''Samo za upgrade na 8.x''', instalirajte javni ključ za Postgres: | ||
wget http://yum.pgsqlrpms.org/RPM-GPG-KEY-PGDG | wget http://yum.pgsqlrpms.org/RPM-GPG-KEY-PGDG | ||
Line 182: | Line 188: | ||
exclude=postgresql* | exclude=postgresql* | ||
− | + | '''Za 8.x''', update-ujte postgres sa: | |
yum update postgresql | yum update postgresql | ||
+ | |||
+ | '''Za 9.0''', instalirajte postgres: | ||
+ | |||
+ | yum install postgresql90-server | ||
Terebalo bi da je kreiran novi, prazan direktorijum /var/lib/pgsql/data. | Terebalo bi da je kreiran novi, prazan direktorijum /var/lib/pgsql/data. | ||
− | Proveriti. Kao korisnik | + | Proveriti. Kao korisnik root izvršiti inicijalizaciju DB klastera: |
+ | |||
+ | Za 9.0: | ||
+ | |||
+ | service postgresql-9.0 initdb | ||
+ | |||
+ | Za 8.x: | ||
su - postgres | su - postgres | ||
Line 194: | Line 210: | ||
Startovati Postgres service kao korisnik root: | Startovati Postgres service kao korisnik root: | ||
+ | exit | ||
+ | /etc/init.d/postgresql-9.0 start | ||
/etc/init.d/postgresql start | /etc/init.d/postgresql start | ||
Uraditi restore baze: | Uraditi restore baze: | ||
− | psql -d postgres -f ../pgsql | + | su - postgres |
+ | psql -d postgres -f ../pgsql.old/pg_all.sql | ||
Uraditi vacuum: | Uraditi vacuum: |