PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 07/05/2018 17:11:38

pg_upgrade_cluster 9.5 -> 10 : problème avec les tablespaces

Bonjour,

J'utilise la méthode suivante : https://gist.github.com/mdesantis/ebab3 … 894ca0cde2 sur Ubuntu 16.04

Elle a bien marché sur un de mes serveurs.

Mais quand je l'ai appliquée à un serverur où j'ai créé des tablespaces, je reçois des messages tels que

...
ERROR:  tablespace "rsc_pg" does not exist
ERROR:  database "rsc" does not exist
ERROR:  database "rsc" does not exist
ERROR:  database "rsc" does not exist
...

Le cluster 9.5 reste actif mais le 10 n'est pas créé.

Je n'ai pas trouvé grand-chose sur le net. Que faire ?

Merci pour votre attention,
m

Hors ligne

#2 07/05/2018 18:02:10

rjuju
Administrateur

Re : pg_upgrade_cluster 9.5 -> 10 : problème avec les tablespaces

Il faudrait les premiers messages d'erreurs pour savoir quel est le problème d'origine.  Le retour d'un "\db" sur psql pourrait peut être également aider.

Hors ligne

#3 07/05/2018 18:24:25

Re : pg_upgrade_cluster 9.5 -> 10 : problème avec les tablespaces

Merci pour votre prompte réponse.

Voici l'output de 'sudo pg_ugradecluster 9.5 main' (fin)

.../...
Disabling connections to the new cluster during upgrade...
Roles, databases, schemas, ACLs...
ERROR:  directory "/home/rubin/Production/costs_pg_data/PG_10_201707211" already in use as a tablespace
ERROR:  directory "/home/rubin/Production/contacts_pg_data/PG_10_201707211" already in use as a tablespace
ERROR:  directory "/home/rubin/Production/ADC_pg_data/PG_10_201707211" already in use as a tablespace
ERROR:  directory "/home/rubin/Production/RSC_pg_data/PG_10_201707211" already in use as a tablespace
ERROR:  directory "/home/rubin/Production/sdbx_pg_data/PG_10_201707211" already in use as a tablespace
ERROR:  tablespace "adc" does not exist
ERROR:  database "adc_pg" does not exist
ERROR:  database "adc_pg" does not exist
ERROR:  database "adc_pg" does not exist
ERROR:  database "adc_pg" does not exist
ERROR:  database "adc_pg" does not exist
ERROR:  tablespace "contacts" does not exist
ERROR:  database "contacts" does not exist
ERROR:  database "contacts" does not exist
ERROR:  database "contacts" does not exist
ERROR:  tablespace "costs" does not exist
ERROR:  database "costs" does not exist
ERROR:  database "costs" does not exist
ERROR:  database "costs" does not exist
ERROR:  database "costs" does not exist
ERROR:  database "costs" does not exist
ERROR:  tablespace "sdbx" does not exist
ERROR:  database "kernel" does not exist
ERROR:  database "kernel" does not exist
ERROR:  database "kernel" does not exist
ERROR:  database "kernel" does not exist
ERROR:  database "kernel" does not exist
ERROR:  tablespace "rsc" does not exist
ERROR:  database "rsc_pg" does not exist
ERROR:  database "rsc_pg" does not exist
ERROR:  database "rsc_pg" does not exist
ERROR:  database "rsc_pg" does not exist
ERROR:  database "rsc_pg" does not exist
ERROR:  tablespace "sdbx" does not exist
ERROR:  database "sdbx_ariel" does not exist
ERROR:  database "sdbx_ariel" does not exist
ERROR:  database "sdbx_ariel" does not exist
ERROR:  database "sdbx_ariel" does not exist
ERROR:  tablespace "sdbx" does not exist
 set_config 
------------
 
(1 row)

\connect: FATAL:  database "adc_pg" does not exist
Re-enabling connections to the old cluster...
Re-enabling connections to the new cluster...
Error during cluster dumping, removing new cluster

Voici les tablespaces :

postgres=# \db 
                      List of tablespaces 
   Name    |  Owner   |                Location                  
------------+----------+----------------------------------------- 
adc        | rubin    | /home/rubin/Production/ADC_pg_data 
contacts   | rubin    | /home/rubin/Production/contacts_pg_data 
costs      | rubin    | /home/rubin/Production/costs_pg_data 
pg_default | postgres |  
pg_global  | postgres |  
rsc        | rubin    | /home/rubin/Production/RSC_pg_data                                                                   
sdbx       | rubin    | /home/rubin/Production/sdbx_pg_data                                                                  
(7 rows)                                                         

Et voici le lien entre les databases et les tablespaces :

     Name     | Tablespace  
--------------+------------ 
OfficeMail   | pg_default 
adc_pg       | adc 
contacts     | contacts 
costs        | costs 
kernel       | sdbx 
postgres     | pg_default 
rsc_pg       | rsc 
sdbx_ariel   | sdbx 
sdbx_micheld | sdbx 
template0    | pg_default 
template1    | pg_default 
test         | pg_default

Hors ligne

#4 07/05/2018 20:32:36

rjuju
Administrateur

Re : pg_upgrade_cluster 9.5 -> 10 : problème avec les tablespaces

ERROR:  directory "/home/rubin/Production/costs_pg_data/PG_10_201707211" already in use as a tablespace

À priori le répertoire en question existe déjà et/ou n'est pas vide.

Hors ligne

#5 07/05/2018 21:41:44

gleu
Administrateur

Re : pg_upgrade_cluster 9.5 -> 10 : problème avec les tablespaces

Certainement un premier test de mise à jour, sans nettoyage derrière.


Guillaume.

Hors ligne

#6 07/05/2018 21:51:40

Re : pg_upgrade_cluster 9.5 -> 10 : problème avec les tablespaces

Merci pour votre attention mais je ne vois pas ce que je dois faire.

Devrais-je effacer les fichiers data dans les tablespaces ?

Mais où irai-je donc chercher les données après que le cluster 10 aura été initialisé et le cluster 9.5 aura été désactivé.

Je croyais que la procédure d'upgrade laissait les données en place.

Que faire ?

Hors ligne

#7 07/05/2018 21:59:17

gleu
Administrateur

Re : pg_upgrade_cluster 9.5 -> 10 : problème avec les tablespaces

Tout dépend comment fonctionne pg_upgradecluster (qui, pour infos, n'est pas un outil de la communauté PostgreSQL, mais de la communauté Debian pour "faciliter" les mises à jour). N'ayant pas de Debian, c'est difficile de répondre à coup sûr. Cependant, ce qu'on peut dire, c'est que les répertoires tablespaces en PG_10_* sont des répertoires d'une version 10 de PostgreSQL. Si votre serveur n'a pas encore de données pour la version 10, vous devez pouvoir les supprimer, puis relancer pg_upgradecluster qui ne devrait plus se plaindre (pour ça du moins). Sauvegardez les avant de les supprimer, mieux vaut être prudent.


Guillaume.

Hors ligne

#8 08/05/2018 09:07:34

Re : pg_upgrade_cluster 9.5 -> 10 : problème avec les tablespaces

Pourriez-vous me donner un lien vers une page qui expllque comment faire une migration 9.5 (ou .6) vers 10 avec des outils 100% PostgreSQL ?

Hors ligne

#9 08/05/2018 10:53:42

Re : pg_upgrade_cluster 9.5 -> 10 : problème avec les tablespaces

J'avais effacé les fichiers PG_10*
J'avais restarté la procédure upgrade.
Tout allait bien mais tout à la fin j'ai reçu des messages horribles.
Et ni la 9.5 ni la 10 n'étaient activés.
J'ai effacé la 9.5 et la 10.
Je réinstalle la 10...

Hors ligne

Pied de page des forums