Séquences PostGIS - Serveur Distant

Une base de données sur un serveur
Et non plus en local sur locahost
Nous allons utiliser notre instance Always Data.
Ajouter une image en markdown

Etape par étape
- se connecter à notre compte always data
- se rendre sur la section PostgreSQL

-
sur cette section on peut repérer le nom de notre serveur distant "Hôte PostgreSQL :
postgresql-thomasidgeo.alwaysdata.net" qui remplace le localhost utilisé jusqu'à présent. -
ensuite on va créer une première base de donnée.
- On lui donne un nom
thomasidgeo_first - On choisit l'encodage fr_FR.UTF-8 ce qui permet d'avoir le bon système (date/heure)
- On ajoute l'extension PostGIS
- On vérifie les permissions d'utilisateur (quand on crée la base on est super utilisateur)
- Le port par défaut est 5432
- On lui donne un nom
-
On a tous les éléments pour se connecter à la base distante grâce aux clients Pgadmin ou QGIS
Options : créer d'autres utilisateurs et leurs octroyer des droits sur la base de données - On peut créer des utilisateurs qui sont des utilisateurs de mon serveur - utilisateur : thomasidgeo_ahah , - mdp
La carto c'est beau la vie
Connexion avec Pgadmin

- on peut créer un groupe de serveur pour différencier des bases qui sont en localhost
- On ajoute la connexion au serveur distant always data
juste définir un nom

=> ajouter le fait de ne voir que c'est - Pour ne voir que notre base de donnée il faut : - 1. se déconnecter de la base - 2. Clic droit, propriété, avancé : limites aux bases de données : rentrer notre base de donnée > entrée puis enregistrer - 3. On se reconnecte et nous n'avons plus que la base en question, il est tout de même possible d'ajouter d'autres bases si nous en avons - Tadam on ne voit plus notre BDD et pas les 1000 autres.

Connexion avec QGIS
![]()
- On ajoute une connexion PostgreSQL / PostGIS avec les bons paramètres

- On retrouve la connexion dans le panneau explorateur

Manipulations
Ajoutons des couches dans la base de données
Avec QGIS, on charge la couche de son choix dans QGIS, puis on ouvre le gestionnaire de base de données et on importe la couche. Il faut patienter que le "job soit terminé".
Une fois les couches importées dans la base, on les charge dans le projet QGIS (projet qui n'est pas encore enregistré) en prenant soin d'enlever les couches locales du projet (elles ne servent plus à rien).
Nous pouvons enregistrer le projet dans la base PostGIS
- Par le menu "Projet/Enregistrer sous => PostgreSQL"


-
[x] Notre projet est enregistré dans la base de données distante hébergée sur Always Data.
-
On vérifie l'emplacement du projet

- Et des couches

Nous pouvons de la même manière enregistrer les styles dans la base de données. On passe par les propriétés de la couche, bouton styles et on choisi dans le menu déroulant "In Database Datasource"
Ca va créer une table qgis_styles dans la base
Exercice en binome
Chacun votre tour, vous allez créer un utilisateur avec les droits nécessaires depuis l'interface always data sur votre base actuelle "nom_first" et jouer en co-édition sur des couches voire la même couche ... racontez votre expérience.
bug ou limitation d'always data quand l'autre utilisateur crée une table sur la base de l'autre, la table est mal référencée dans la table "geometry_colums" ce qui empêche sa bonne utilisation.
info : L'édition sur des couches existantes dans la base fonctionne comme attendu.