Remarques :
- Ce tutoriel nécessite un accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, reportez-vous à Introduction au niveau gratuit d'Oracle Cloud Infrastructure.
- Il utilise des exemples de valeurs pour les informations d'identification, la location et les compartiments Oracle Cloud Infrastructure. Lorsque vous terminez votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
Connectez-vous à Oracle Cloud Infrastructure Database avec PostgreSQL à l'aide de DBeaver
Introduction
Dans ce tutoriel, nous allons découvrir comment nous connecter à 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 open source gratuit qui améliore considérablement l'efficacité des administrateurs de base de données PostgreSQL en fournissant une interface conviviale pour l'administration, le développement et l'analyse des 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, dans la deuxième et la troisième tâche, nous provisionnerons une instance de calcul pour servir de bastion dans le même réseau cloud virtuel (VCN), ce qui permettra d'accéder à la base de données PostgreSQL via 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 Oracle Cloud Infrastructure (OCI) Compute pour vous connecter à PostgreSQL dans un sous-réseau public, en utilisant le même VCN. Ajoutez le port
5432
à la liste de sécurité du sous-réseau privé. -
Connexion à l'aide de DBeaver.
Prérequis
- Accès à une location OCI avec des privilèges permettant de créer des bases de données et des instances de calcul.
Tâche 1 : création d'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, comme la console OCI, l'interface de ligne de commande et l'API. Pour plus d'informations, reportez-vous à Création d'un système de base de données.
Dans cette tâche, nous allons utiliser la console OCI pour créer un système de base de données PostgreSQL géré.
-
Connectez-vous à la console OCI, accédez à 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.
-
Sur la page Créer un système de base de données PostgreSQL, sélectionnez Créer un système de base de données et cliquez sur Suivant.
-
Dans la section Configuration du système de base de données, saisissez les informations suivantes.
-
Nom de système de base de données : entrez le nom du système de base de données.
-
Description (facultatif) saisissez une description du système de base de données.
-
Version majeure de PostgreSQL : sélectionnez une version majeure 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 performances pour la base de données. Pour plus d'informations, reportez-vous à Niveaux de performances.
-
Sélectionnez Placement des données.
- Régional : les données sont stockées de manière durable dans plusieurs domaines de disponibilité de la région.
- Propre au domaine de disponibilité : les données sont stockées durablement dans le domaine de disponibilité sélectionné.
-
Dans la section Configuration matérielle, saisissez 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 réseau, entrez les informations suivantes.
-
Réseau cloud virtuel : sélectionnez le VCN dans lequel vous souhaitez créer la base de données. Si vous devez créer un VCN, cliquez sur créer un VCN. Pour plus d'informations, reportez-vous à VCN and Subnet Management.
-
Sous-réseau : sélectionnez le sous-réseau privé du VCN sélectionné.
-
Adresse IP privée : adresse IP privée du sous-réseau de l'instance de base de données. La valeur est facultative. Si aucune adresse IP n'est fournie, elle est choisie parmi les adresses IP disponibles dans le sous-réseau spécifié.
-
-
Dans la section Informations d'identification d'administrateur de système de base de données, entrez les informations d'identification de la base de données. Les administrateurs n'ont pas accès au superutilisateur. Une base de données OCI avec un administrateur PostgreSQL peut créer des utilisateurs et des rôles.
-
Nom utilisateur : indiquez le nom 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 l'une des options suivantes.
-
Mot de passe d'entrée:
-
Mot de passe : Saisissez le mot de passe de l'administrateur.
-
Confirmer le mot de passe : confirmez le mot de passe de l'administrateur.
-
-
Utiliser OCI Vault:
-
Cault : sélectionnez le coffre qui contient le mot de passe de l'administrateur.
-
Secret : sélectionnez la clé secrète contenant le mot de passe 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.
-
Une fois la création effectuée, accédez à la page d'informations générales du système de base de données.
Tâche 2 : création d'une instance OCI Compute pour la connexion à PostgreSQL
La base de données PostgreSQL est en cours de déploiement au sein d'un réseau privé. Nous allons créer une instance avec une adresse IP publique et lui accorder l'accès à PostgreSQL. Cette instance nouvellement créée servira de point d'entrée à la base de données PostgreSQL.
-
Accédez à la console OCI, puis à Compute et à Instances.
-
Sélectionnez un sous-réseau public dans le même VCN que vous avez provisionné l'instance de base de données OCI PostgreSQL.
-
Connectez-vous en SSH à l'instance et exécutez les commandes suivantes. Le client sera installé pour la version 14 de PostgreSQL.
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
-
Accédez à la page de présentation OCI PostgreSQL, cliquez sur Copier dans le certificat d'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
Exemple :
psql -h 10.0.1.165 -U admin -d postgres
-
Exécutez l'instruction en tant que test pour vérifier la connexion.
SELECT VERSION();
-
Exécutez l'instruction suivante 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>"
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 vérifier si la connexion fonctionne.
SELECT VERSION();
Tâche 3 : connexion à l'aide de DBeaver
Dans cette tâche, nous allons installer DBeaver et nous connecter à PostgreSQL.
-
Téléchargez et installez DBeaver à partir de l'adresse suivante : DBeaver Community.
-
Ajoutez les informations d'identification pour vous connecter à la base de données OCI avec PostgreSQL.
-
Entrez l'adresse IP et le Port 22 de la machine virtuelle. 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'instruction suivante 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;
Présentation de la table créée.
Liens connexes
Remerciements
- Auteurs - Ismael Hassane (architecte de solutions senior, plate-forme de données), Jevon Rowan (ingénieur solutions cloud principal, spécialiste des services de données open source)
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à d'autres contenus de formation gratuits sur le canal Oracle Learning YouTube. De plus, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir la documentation produit, consultez le site Oracle Help Center.
Connect to Oracle Cloud Infrastructure Database with PostgreSQL using DBeaver
G15174-01
September 2024