Note :
- Ce tutoriel nécessite l'accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, voir Démarrer avec le niveau gratuit d'Oracle Cloud Infrastructure.
- Il utilise des exemples de valeurs pour les données d'identification, la location et les compartiments Oracle Cloud Infrastructure. À la fin de votre laboratoire, remplacez ces valeurs par celles propres à votre environnement en nuage.
Connectez-vous à Oracle Cloud Infrastructure Database avec PostgreSQL à l'aide de DBeaver
Présentation
Dans ce tutoriel, nous allons découvrir comment se connecter à une base de données Oracle Cloud Infrastructure Database avec PostgreSQL à l'aide d'un outil d'administration de base de données tel que DBeaver.
DBeaver est un outil de gestion de base de données libre qui améliore considérablement l'efficacité des administrateurs de base de données (DBA) PostgreSQL en fournissant une interface conviviale pour l'administration, le développement et l'analyse des données de base de données. Tout autre outil peut également être envisagé.
Ce tutoriel explique comment provisionner une base de données OCI avec PostgreSQL dans un sous-réseau privé. De plus, lors des deuxième et troisième tâches, nous provisionnerons une instance de calcul pour servir d'hôte bastion dans le même réseau en nuage virtuel (VCN), ce qui permettra d'accéder à la base de données PostgreSQL au moyen d'un outil d'administration de base de données tel que DBeaver.
Le schéma suivant décrit l'approche.
Objectifs
-
Créez une instance de base de données PostgreSQL dans un sous-réseau privé.
-
Créez une instance de calcul Oracle Cloud Infrastructure (OCI) pour vous connecter à PostgreSQL dans un sous-réseau public, à l'aide du même VCN. Ajoutez le port
5432
à la liste de sécurité du sous-réseau privé. -
Connectez-vous à l'aide de DBeaver.
Préalables
- Accès à une location OCI dotée de privilèges permettant de créer des bases de données et des instances de calcul.
Tâche 1 : Créer une instance de base de données PostgreSQL dans un sous-réseau privé
Nous pouvons utiliser plusieurs méthodes pour créer une instance de base de données PostgreSQL telle que la console OCI, l'interface de ligne de commande et l'API. Pour plus d'informations, voir Création d'un système de base de données.
Dans cette tâche, nous utiliserons la console OCI pour créer un système de base de données PostgreSQL géré.
-
Connectez-vous à la console OCI, naviguez jusqu'à Bases de données, PostgreSQL et cliquez sur Systèmes de base de données.
-
Cliquez sur Créer un système de base de données PostgreSQL.
-
Dans la page Créer un système de base de données PostgreSQL, sélectionnez Créer un nouveau système de base de données et cliquez sur Suivant.
-
Dans la section Configuration du système de base de données, entrez les informations suivantes.
-
Nom du système de base de données : Entrez un nom pour le système de base de données.
-
Description (Facultatif) : Entrez une description pour le système de base de données.
-
Version principale de PostgreSQL : Sélectionnez une version principale de la base de données PostgreSQL. La seule valeur autorisée est 14.
-
-
Dans la section Système de base de données, entrez une valeur pour Nombre de noeuds. Un noeud principal est requis. Les noeuds supplémentaires sont réservés en tant que noeuds de réplique de lecture.
-
Sélectionnez Niveau de performance pour la base de données. Pour plus d'informations, voir Niveaux de performance.
-
Sélectionnez Positionnement des données.
- Régional : Les données sont stockées durablement dans plusieurs domaines de disponibilité de la région.
- Spécifique au domaine de disponibilité : Les données sont stockées durablement dans le domaine de disponibilité sélectionné.
-
Dans la section Configuration du matériel, entrez les informations suivantes.
-
Nombre d'OCPU : Sélectionnez le nombre d'OCPU par noeud.
-
Formes disponibles : Sélectionnez la forme des noeuds de base de données.
-
-
Dans la section Configuration du réseau, entrez les informations suivantes.
-
Réseau en nuage virtuel : Sélectionnez le VCN dans lequel créer la base de données. Si vous devez créer un VCN, cliquez sur créez un VCN. Pour plus d'informations, voir Gestion de VCN et de sous-réseau.
-
Sous-réseau : Sélectionnez le sous-réseau privé du VCN sélectionné.
-
Adresse IP privée : Adresse IP privée dans le sous-réseau de l'instance de base de données. La valeur est facultative. Si aucune adresse IP n'est fournie, une est choisie parmi les adresses IP disponibles dans le sous-réseau spécifié.
-
-
Dans la section Données d'identification de l'administrateur de système de base de données, entrez les données d'identification de la base de données. Les administrateurs n'ont pas accès aux superutilisateurs. Une base de données OCI avec l'administrateur PostgreSQL peut créer des utilisateurs et des rôles.
-
Nom d'utilisateur : Spécifiez le nom d'utilisateur de l'administrateur. Cette valeur ne peut pas être modifiée après la création du système de base de données.
-
Options de mot de passe : Sélectionnez une des options suivantes.
-
Entrer le mot de passe :
-
Mot de passe : Entrez le mot de passe de l'administrateur.
-
Confirmer le mot de passe : Vérifiez le mot de passe de l'administrateur.
-
-
Utiliser une chambre forte OCI :
-
Chambre forte : Sélectionnez la chambre forte qui contient le mot de passe de l'administrateur.
-
Clé secrète : Sélectionnez la clé secrète contenant le mot de passe de l'administrateur.
-
Version de clé secrète : Sélectionnez une version de clé secrète.
-
-
-
-
Après avoir configuré le système de base de données, cliquez sur Suivant.
-
Vérifiez la configuration du système de base de données et cliquez sur Soumettre.
-
Après la création réussie, accédez à la page de données générales du système de base de données.
Tâche 2 : Créer une instance de calcul OCI pour se connecter à PostgreSQL
La base de données PostgreSQL est en cours de déploiement dans un réseau privé. Nous créerons une instance avec une adresse IP publique et lui accorderons l'accès à PostgreSQL. Cette instance nouvellement créée servira de point d'entrée à la base de données PostgreSQL.
-
Allez à la console OCI, naviguez jusqu'à Calcul et Instances.
-
Sélectionnez un sous-réseau public dans le même VCN que celui où vous avez provisionné l'instance de base de données OCI PostgreSQL.
-
Accédez par SSH à l'instance et exécutez les commandes suivantes. Cela installera le client pour PostgreSQL version 14.
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm sudo dnf -qy module disable postgresql sudo dnf install -y postgresql14-server sudo /usr/pgsql-14/bin/postgresql-14-setup initdb sudo systemctl enable postgresql-14 sudo systemctl start postgresql-14
rm -rf ~/.pgpass
-
Allez à la page d'aperçu de PostgreSQL pour OCI, cliquez sur Copier dans le certificat de l'autorité de certification ou téléchargez le certificat et exécutez la commande suivante dans le terminal.
sudo nano ./dbsystem.pub
Copiez et collez le certificat complet dans le fichier
dbsystem.pub
. Enregistrez et fermez le fichier. -
Testez la connexion à l'aide de la commande suivante.
psql -h [DB Private IP] -U [user name] -d postgres
Par exemple :
psql -h 10.0.1.165 -U admin -d postgres
-
Exécutez l'instruction comme test pour vérifier la connexion.
SELECT VERSION();
-
Exécutez l'énoncé suivant pour vous connecter en tant qu'utilisateur.
psql "sslmode=verify-full sslrootcert=./dbsystem.pub host=<endpoint_fqdn> hostaddr=[DB private IP] dbname=postgres user=<user_name>"
Par exemple :
psql "sslmode=verify-full sslrootcert=dbsystem.pub host= yfya3utrulnsbuzniy7545tsnwvuzq-primary.postgresql.eu-madrid-1.oc1.oraclecloud.com hostaddr=10.0.1.165 dbname=postgres user=admin"
-
Exécutez l'instruction suivante pour tester si la connexion fonctionne.
SELECT VERSION();
Tâche 3 : Se connecter à l'aide de DBeaver
Dans cette tâche, nous allons installer DBeaver et nous connecter à PostgreSQL.
-
Téléchargez et installez DBeaver à partir d'ici : Communauté DBeaver.
-
Ajoutez les données d'identification pour vous connecter à la base de données OCI avec PostgreSQL.
-
Entrez l'adresse IP de la machine virtuelle et le port 22. DBeaver utilisera la même instance de machine virtuelle dans le sous-réseau public à l'aide de SSH pour accéder à la base de données OCI avec la base de données PostgreSQL.
-
(Facultatif) Exécutez l'énoncé suivant pour créer une table et charger des données à l'aide de DBeaver.
DROP TABLE cars; CREATE TABLE cars ( brand VARCHAR(255), model VARCHAR(255), year INT ); INSERT INTO cars (brand, model, year) VALUES ('Toyota', 'Camry', 2023), ('Honda', 'Accord', 2022), ('Ford', 'Mustang', 2024), ('Chevrolet', 'Corvette', 2023), ('BMW', '3 Series', 2021), ('Mercedes-Benz', 'C-Class', 2022), ('Volkswagen', 'Golf', 2023), ('Audi', 'A4', 2024); COMMIT; SELECT * FROM cars;
Aperçu de la table créée.
Liens connexes
Confirmation
- Auteurs - Ismael Hassane (architecte de solution principal, plate-forme de données), Jevon Rowan (ingénieur principal en solution en nuage, spécialiste des services de données à code source libre)
Autres ressources d'apprentissage
Explorez d'autres laboratoires sur la page docs.oracle.com/learn ou accédez à plus de contenu d'apprentissage gratuit sur le canal YouTube d'Oracle Learning. De plus, visitez education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir de la documentation sur le produit, visitez Oracle Help Center.
Connect to Oracle Cloud Infrastructure Database with PostgreSQL using DBeaver
G15173-01
September 2024