Vous n'êtes pas identifié(e).
Pages : 1
Bonjour,
Je travaille sur une base de données spatiale et je souhaite exporter un schéma et tout son contenu (tables, index, procédures...) et l'importer dans un nouveau schéma vide de la même base de données.
Quelle procédure est la plus appropriée?
Merci pour vos réponses
Hors ligne
Pour sauvegarder un schéma seulement, il faut utiliser l'option -n. Par exemple, "pg_dump -n s1 b1" sauvegardera le schéma s1 de la base b1.
Si vous voulez restaurer ce schéma dans la même base mais sous un autre nom, deux solutions :
* modifier le fichier de sauvegarde pour que chaque référence au schéma X fasse maintenant référence au schéma Y ;
* restaurer la sauvegarde sur une base vide, renommer le schéma, sauvegarder cette nouvelle base, la restaurer sur l'ancienne.
Les deux solutions ne sont pas simples car il n'y a pas de solutions simples à ma connaissance. De plus, ce ne sont pas des solutions rapides si les schémas contiennent beaucoup de données.
Guillaume.
Hors ligne
Je pensais utiliser la requête suivante, qui permet de déplacer une table d'un schéma vers un autre, pour que je puisse intégrer de nouvelles données dans l'ancien schéma qui se retrouvera vide.
Etant débutant, cette méthode semble plus simple, mais permet t'elle de copier également tout ce qui est relié à une table (index, vues, procédures..)?
ALTER TABLE S1.T1 SET SCHEMA S2;
Hors ligne
Ça ne déplace que la table. Les index appartiennent à la table, ils la suivent donc (ou autrement dit, il n'y a pas de schéma pour un index, il est lié à la table).
Ce n'est pas le cas du reste : vue, séquence, procédure, etc.
Guillaume.
Hors ligne
Pages : 1