Mise à jour PostgreSQL 8.1 en 8.4 - 9.0 : Différence entre versions
De wikiGite
(→Installation PostgresSQL 9) |
|||
Ligne 34 : | Ligne 34 : | ||
== Installation PostgresSQL 9 == | == Installation PostgresSQL 9 == | ||
− | Si PostgreSQL8 était déjà installé il faut l'avoir désinstallé avant : | + | Si PostgreSQL8 était déjà installé il faut l'avoir désinstallé avant (avec sauvegardes des bases) : |
+ | mkdir /pgbak | ||
+ | chown postgres:postgres /pgbak/ | ||
+ | su - postgres | ||
+ | pg_dumpall --globals-only > /pgbak/globals.sql | ||
+ | pg_dump --create --oids --format=c --verbose --file=/pgbak/dbX dbX | ||
+ | exit | ||
yum remove postgresql84 postgresql84-server | yum remove postgresql84 postgresql84-server | ||
− | |||
− | |||
Installer le repository PostgreSQL conrrespondant à la version voulue (http://www.pgrpms.org/howtoyum.php) : | Installer le repository PostgreSQL conrrespondant à la version voulue (http://www.pgrpms.org/howtoyum.php) : | ||
Ligne 47 : | Ligne 51 : | ||
/etc/init.d/postgresql-9.0 initdb | /etc/init.d/postgresql-9.0 initdb | ||
Les bases sont désormais dans /var/lib/pgsql/'''9.0'''/data | Les bases sont désormais dans /var/lib/pgsql/'''9.0'''/data | ||
+ | /etc/init.d/postgresql-9.0 start | ||
+ | Et restorer les bases : | ||
+ | su - postgres | ||
+ | psql -f /pgbak/globals.sql | ||
+ | pg_restore --create -d postgres /pgbak/dbX |
Version du 1 avril 2011 à 10:30
Sauvegarder les bases, si nécessaire (sinon, supprimer purement et simplement le répertoire /var/lib/pgsql/data, il sera recréé à l'init)
Les "globales" d'abord :
mkdir /pgbak chown postgres:postgres /pgbak/ su - postgres pg_dumpall --globals-only > /pgbak/globals.sql pg_dump --create --oids --format=c --verbose --file=/pgbak/dbX dbX exit
Et sauvegarder les bases à froid (éteintes) :
/etc/init.d/postgresql stop mv /var/lib/pgsql/data /pgbak
Mettre à jour :
yum remove postgresql yum install postgresql84 postgresql84-server
Réinitialiser les bases système :
/etc/init.d/postgresql initdb
Restorer les fichiers de configuration à partir de /pgback/*.conf, faire les modification nécessaires (dans le pg_hba.conf notamment, des oprions ont changé : sameuser n'existe plus, remplacer password par md5).
Eventuellement :
chkconfig --level 35 postgresql on
Lancer postgresql
/etc/init.d/postgresql start
Restorer les rôles, et les bases de données :
su - postgres psql -f /pgbak/globals.sql pg_restore --create -d postgres /pgbak/dbX exit
Installation PostgresSQL 9
Si PostgreSQL8 était déjà installé il faut l'avoir désinstallé avant (avec sauvegardes des bases) :
mkdir /pgbak chown postgres:postgres /pgbak/ su - postgres pg_dumpall --globals-only > /pgbak/globals.sql pg_dump --create --oids --format=c --verbose --file=/pgbak/dbX dbX exit yum remove postgresql84 postgresql84-server
Installer le repository PostgreSQL conrrespondant à la version voulue (http://www.pgrpms.org/howtoyum.php) :
wget http://www.pgrpms.org/reporpms/9.0/pgdg-centos-9.0-2.noarch.rpm
Désactiver le repo par défaut (enable=0 dans /etc/yum.repos.d/pgdg-90-centos.repo), puis :
yum --enablerepo=pgdg90 install postgresql90 postgresql90-server
Initialiser la base de données
/etc/init.d/postgresql-9.0 initdb
Les bases sont désormais dans /var/lib/pgsql/9.0/data
/etc/init.d/postgresql-9.0 start
Et restorer les bases :
su - postgres psql -f /pgbak/globals.sql pg_restore --create -d postgres /pgbak/dbX