PostgreSQL - Didacticiels
Comment provisionner un PaaS PostgreSQL ?
Pour commencer, rendez-vous sur ITCare et recherchez votre service global cible où vous créerez votre nouveau PostgreSQL.
Recherchez votre service Global dans la barre de recherche supérieure et cliquez dessus pour afficher sa page d'information.
Une fois dans votre Service Global, cliquez sur le bouton Créer une ressource et sélectionnez PostgreSQL.
Aller sur Bases de données managées, choisir PostgreSQL et sélectionner la version requise.
Remplir le formulaire et cliquer sur Suivant. Définir les personnalisations et cliquer sur Suivant.
Valider la synthèse et soumettre le formulaire.
Une fois le déploiement prêt, vous en serez informé par e-mail.
Comment gérer votre PostgreSQL ?
Sur la page de ressources de votre PostgreSQL, vous pouvez effectuer toutes les actions disponibles en utilisant le bouton Gérer dans le coin supérieur droit. Cela inclut le démarrage, l'arrêt, la suppression, le redémarrage, le redimensionnement et bien plus encore.
Comment accéder à votre cluster PostgreSQL ?
Lorsque votre cluster est créé avec ITCare, vous avez obtenu un rôle sql avec des informations d'identification.
Avec ces informations d'identification, vous pouvez vous connecter au cluster avec son nom sur le port tcp 5432. Vous pouvez utiliser la base de données postgres pour vous connecter.
Si votre cluster s'appelle "mycluster" vous pouvez utiliser le code python suivant :
Comment accéder à votre cluster PostgreSQL avec TLS/SSL ?
Lorsque votre cluster est créé avec ITCare, vous avez obtenu un rôle sql avec des informations d'identification.
Si vous choisissez d'activer TLS, vous avez reçu le certificat racine auquel vous devez faire confiance et que vous devez donner à la bibliothèque que vous utilisée pour vous connecter, par exemple psycopg2.
Avec ces informations d'identification, vous pouvez vous connecter au cluster avec son nom sur le port tcp 5432. Vous pouvez utiliser la base de données postgres pour vous connecter.
Si votre cluster s'appelle "mycluster" vous pouvez utiliser le code python suivant :
Comment créer un rôle ?
Il est plus sûr de ne pas utiliser un rôle d'administrateur pour les applications.
Une fois connecté, vous pouvez créer un rôle standard comme suit (remplacez <a_role> et <very_strong_password> par vos propres informations d'identification) :
Comment créer une base de données ?
Si vous voulez créer une base de données dont le propriétaire sera le rôle que vous venez de créer, utilisez les requêtes SQL suivantes :
Comment créer une base de données avec un autre encodage et/ou collation ?
Vous pouvez utiliser les requêtes SQL suivantes avec la base de données template0 comme base de données template :
Comment restaurer en libre-service ?
Le PaaS PostgreSQL dispose d'une fonctionnalité permettant de restaurer un PaaS PostgreSQL (source) vers un autre PaaS PostgreSQL (destination) à un moment donné (en utilisant le Point-In-Time Recovery) sous les contraintes suivantes :
l'utilisateur doit avoir accès au cloud de la ferme source et de la ferme de destination
la source doit être sauvegardée (option choisie lors de la création)
la source et la destination doivent être actives
la source et la destination doivent être différentes
la source et la destination doivent être dans la même version de PostgreSQL
la source et la destination doivent être en version 12 ou supérieure
l'heure cible ne doit pas être dans le futur (délimitée à droite par l'heure actuelle).
l'heure cible ne doit pas être inférieure à 7 jours (pour les services de non-production) ou à 14 jours (pour les services de production) avec pour référence l'heure actuelle (délimitée à gauche par la rétention des sauvegardes).
Vous pouvez choisir d'inclure ou d'exclure la cible temporelle dans le processus de restauration.
Comment installer l'extension oracle_fdw ?
Vous pouvez installer l'extension oracle_fdw sur vos bases de données. Cette extension vous permet de vous connecter à un déploiement PostgreSQL et de lire/écrire des tables situées réellement dans un serveur Oracle. Pour ce faire, à l'aide d'ITCare, utiliser le menu Gérer puis Gérer les extensions, choisissez votre base de données, puis oracle_fdw et cliquer sur le bouton Soumettre. On rappelle que selon les bonnes pratiques, vous avez créé un rôle et une base de données dédiée:
Une fois l'extension installée vous devez créer plusieurs objets dans la base de donnée. Vous devez disposez des éléments suivants pour réaliser cette opération:
l'identifiant et le mot de passe du compte (admin) qui vous ont été communiqués lors de la création de votre déploiement PostgreSQL.
le role qui se connectera à la base de données PostgreSQL et qui accédera à la base de données Oracle
le SID de la base Oracle
l'identifiant et le mot de passe du rôle qui le droit de se connecter à la base de données Oracle et qui a le droit de lire/écrire les tables considérées.
le nom et la définition des tables Oracle
Pour la suite de l'exemple, on supposera que sous Oracle, une table a été créée comme suit:
En utilisant votre compte admin sur la base de données customer, vous devez créer une correspondance entre votre serveur Oracle, la base de données Oracle et le rôle Oracle (rôle qui par exemple aura créé la table person)
Enfin, avec le rôle myrole, connecté à la base de données customer (dans PostgreSQL):
En cas d'erreur lors de la déclaration des correspondances entre le serveur et le rôle Oracle, le rôle admin peut faire les modifications suivantes:
La documenration de l'extension oracle_fdw est accessible ici.
Comment installer l'extension postgres_fdw ?
Vous pouvez installer l'extension postgres_fdw sur vos bases de données. Cette extension vous permet de lire/écrire des tables se situant dans un autre déploiement PostgreSQL. Pour ce faire, à l'aide d'ITCare, utiliser le menu Gérer puis Gérer les extensions sur votre déploiement pg16, choisissez votre base de données, puis postgres_fdw et cliquer sur le bouton Soumettre. On rappelle que selon les bonnes pratiques, vous avez créé un rôle et une base de données dédiée sur chacun des déploiements PostgreSQL:
Sur le serveur pg15 en version 15 par exemple (pg15.pg.cegedim.cloud)
Sur le serveur pg16 (pg16.pg.cegedim.cloud):
Avec le rôle admin sur la base de données customer du déploiement pg16, créer les correspondances avec le serveur pg15 et le rôle rolea:
Avec le rôle roleb sur le déploiement pg16, base de données customer, importer la définition de la table mytable:
Démo
Restauration d'une base de données PostgreSQL
Le processus de restauration d'une base de données PostgreSQL est une étape importante. Voyons comment procéder ci-dessous :
Last updated

