Création de la base et des schémas

MéthodeSe connecter en administrateur

Faire Objet-> Créer un serveur (ou utiliser le lien rapide de l'onglet 'tableau de bord' : ajouter un nouveau serveur) et utiliser les paramètres (hôte, port) de connexion qui vous ont été fournis par les organisateurs.

Pour la formation les paramètres sont :

  • Nom : Serveur_formation - stageXX (remplacer XX par le numéro qui vous est attribué)

  • Hôte : localhost

  • port : 5432

  • Base maintenance : postgres (remplacer XX par le numéro qui vous est attribué)

  • Nom utilisateur : stageXX

  • mot de passe : stageXX

  • Couleur : choisir éventuellement une autre couleur an arrière plan et/ou en premier plan. Ceci permettra de mettre en exergue que cette connexion est faite avec un rôle d'administrateur - nonsuperuser (privilège accordé par l'administrateur système).

On peut « Enregistrer le mot de passe » dans l'onglet connexion.

Dans la suite de la formation remplacer XX ou 00 par le numéro qui vous est attribué (ex : droit01 à la place de droitXX ou de droit00)

Pour la formation (octobre 2020), la version suivante de PostgreSQL :

PostgreSQL 12.4, compiled by Visual C++ build 1914, 64-bit

et la version de PostGIS suivante :

POSTGIS="3.0.2 3.0.2" [EXTENSION] PGSQL="120" GEOS="3.8.1-CAPI-1.13.3" PROJ="Rel. 5.2.0, September 15th, 2018" LIBXML="2.9.9" LIBJSON="0.12" LIBPROTOBUF="1.2.1" WAGYU="0.4.3 (Internal)"

doivent être installées.

MéthodeCréer la base

Faire un clic droit sur Bases de données

et créer une base de données (nous reviendrons plus tard sur les paramètres de création des bases de données).

Remplir l'onglet Propriétés comme indiqué ci-contre (remplacer le 00 de droit00 par votre numéro de stagiaire).

Remplir l'onglet Définition comme indiqué ci-contre.

Utiliser la base template_stageXX fraîchement créée comme modèle de création.

Vérifier que l'on a bien dans l'onglet SQL :

CREATE DATABASE droit00

WITH

OWNER = admin00

TEMPLATE = template_stage00

ENCODING = 'UTF8'

CONNECTION LIMIT = -1;

puis valider.

nb : il faut se déconnecter de la base template_stageXX pour pouvoir l'utiliser comme modèle de création d'une nouvelle base.

MéthodeVérifier l'extension PostGIS

A l'aide du requêteur SQL vu précédemment, vérifier la présence de l'extension PostGIS en lançant la commande suivante :

1
SELECT PostGIS_full_version();

Vous pourrez aussi apprécier la présence des fonctions, tables et vues liées à l'extension.

MéthodeCréer les schémas

Double cliquer sur la base de données droit00 (remplacer 00 par votre numéro)

Par défaut cette base contient au moins un schéma public.

Comme déjà indiqué il n'est pas conseillé de travailler dans le schéma public.

Nous allons créer les schémas production et consultation :

  • Pour le schéma production, nous aurons deux types d'utilisateurs :

    • les écrivainsXX qui auront les droits de modifier les tables existantes du schéma production de la base droitXX

    • les lecteursXX qui n'auront que les droits de les visualiser.

  • Pour le schéma consultation, tous les utilisateurs n'auront que les droits de lecture.

Pour créer le schéma production :

  • faire un clic droit sur la base droitXXCréer → schéma...

  • Nous rajouterons les droits plus tard. Faire OK.

Puis, de même, créer le schéma consultation.

Rappel : jeux de données à télécharger

Pour remplir ces schémas par des tables nous allons restaurer un backup (nous reverrons plus tard, plus en détail, la problématique de sauvegarde et de restauration des bases).

  • Se positionner sur la base droitXX, puis clic droit ‘restaurer' :

  • Indiquer le fichier gestiondesdroits.backup.

  • Dans l'onglet Options de restauration cocher dans sections : pre-data et data et dans ne pas enregistrer : propriétaire.

  • Lancer la restauration.

Une fenêtre apparaît en bas à droite et indique la progression de la restauration...

Après un certain temps (un peu plus de 1 mn), la fenêtre indique 'Echec (code de sortie 1). Si on affiche les détails on se rend compte qu'il ne s'agit que de 'WARNING' du au fait que les schémas production et consultation existent déjà dans la base.

La base doit maintenant contenir la table commune dans le schéma consultation et les tables route_xy et zonageppri_lafleche dans le schéma production.

Le cas échéant rafraîchir l'affichage par un clic droit puis 'actualiser...'

Vérifier dans l'onglet que le propriétaire des tables (par exemple commune dans le schéma consultation) est bien stageXX (XX étant votre numéro de stagiaire).

Si ce n'est pas le cas c'est que vous n'avez pas coché ne pas sauvegarder propriétaire au moment de la restauration.

La base doit maintenant ressembler à ceci :