Connexion à une base de données
Vous pouvez vous connecter à une base de données dans Data Infrastructure après vous être connecté à une machine virtuelle ou à distance à l'aide d'Oracle Net Services.
Utilisez SSH pour vous connecter à une machine virtuelle lorsque vous avez besoin d'un accès au système d'exploitation avant de vous connecter à une base de données. Utilisez Oracle Net Services lorsque vous avez besoin d'un accès distant à la base de données à partir d'un client.
Connexion à une base de données après connexion à une machine virtuelle
Une fois que vous êtes connecté à une machine virtuelle, vous pouvez utiliser les commandes du système d'exploitation pour identifier une base de données et la connecter.
-
Connectez-vous à la VM en tant qu'utilisateur
opc.Pour obtenir des étapes détaillées, reportez-vous à Connexion à une machine virtuelle avec SSH.
-
Basculez vers l'utilisateur
oracle.sudo su - oracle -
Servez-vous de l'utilitaire
srvctlsitué sous le répertoire de base d'Oracle Grid Infrastructure afin de répertorier les bases de données dans le cluster de machines virtuelles.grid-home/bin/srvctl config database -v -
Identifiez les instances de la base de données à laquelle vous voulez accéder.
grid-home/bin/srvctl status database -d <dbname> -
Configurez les paramètres d'environnement de la base de données à laquelle vous voulez accéder.
. oraenvA l'invite, entrez l'identificateur système (SID) Oracle de la base de données.
ORACLE_SID = [oracle] ? <dbname> -
Définissez la variable d'environnement
ORACLE_SIDsur l'instance de base de données à laquelle vous souhaitez accéder.export ORACLE_SID=<dbname1> -
Vous pouvez éventuellement utiliser la commande
srvctlpour afficher des informations plus détaillées sur la base de données.srvctl config database -d <dbname> -
Connectez-vous à la base de données en utilisant SQL*Plus.
sqlplus / as sysdba
Connexion à une base de données avec Oracle Net Services
Vous pouvez vous connecter à une base de données dans Data Infrastructure à distance à l'aide d'Oracle Net Services.
Comme Data Infrastructure utilise Oracle Grid Infrastructure, vous pouvez créer des connexions Oracle Net Services à l'aide de connexions SCAN (Single Client Access Name). Le protocole SCAN fournit un mécanisme cohérent permettant aux clients d'accéder aux instances de base de données exécutées dans un cluster de machines virtuelles.
Par défaut, le nom SCAN est associé à trois adresses IP virtuelles. Chaque adresse IP virtuelles SCAN est associée à un processus d'export SCAN qui fournit une adresse d'adresse de connexion pour les connexions de base de données à l'aide d'Oracle Net Services. Afin d'optimiser la disponibilité, Oracle Grid Infrastructure distribue les points d'adresse IP virtuelle SCAN et les processeurs d'écoute SCAN sur ces noeuds disponibles. Si un noeud s'arrête ou échoue, les adresses IP virtuelles SCAN et les processus d'écoute SCAN sont automatiquement migrés vers un noeud disponible.
Grâce aux connexions SCAN, les clients Oracle AI Database disposent d'un ensemble fiable d'adresses de connexion pouvant servir les bases de données exécutées dans le cluster de machines virtuelles.
En plus des processus d'écoute Oracle Net exécutés sur chaque noeud du cluster de machines virtuelles, les processus d'écoute SCAN sont également appelés processus d'écoute de noeud. Lorsqu'une connexion Oracle Net Services provient d'une connexion SCAN, le processus d'audit SCAN l'achemine vers l'un des Processus d'écoute de noeud et n'intervient plus dans la connexion. Une combinaison de facteurs, notamment la disponibilité du processus d'écoute, la position de l'instance de base de données et la distribution de la charge globale, détermine le processus d'écoute de noeud qui reçoit chaque connexion.
Cette documentation précise les exigences de base pour la connexion à des bases de données dans Data Infrastructure à l'aide d'Oracle Net Services.
Prérequis pour la connexion à une base de données avec Oracle Net Services
- Adresses IP des adresses IP virtuelles SCAN, ou nom d'hôte ou adresse IP d'une machine virtuelle qui héberge la base de données à laquelle vous souhaitez accéder.
- Identificateur de base de Données, identificateur système (SID) de la base de Données ou nom de service.
Se connecter à une base de donnée à l'aide du nom SCAN
Pour créer une connexion Oracle Net Services à l'aide des processus d'écoute SCAN, vous avez le choix entre les approches suivantes :
- Définissez un descripteur de connexion qui référence toutes les adresses IP virtuelles SCAN.
- Définir un descripteur de connexion qui référence un nom SCAN personnalisée.
Connexion à une base de données à l'aide d'un descripteur de connexion faisant référence à toutes les adresses IP virtuelles SCAN
Vous pouvez configurer un descripteur de connexion à l'aide de plusieurs processus d'écoute SCAN.
Cette approche exige que vous fournissisiez toutes les adresses IP animales SCAN et permette à Oracle Net Services de se connecter à un processus d'oreille SCAN disponible.
-
Pour définir un alias Net Services, utilisez le modèle suivant :
<alias-name> = (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=<SCAN-VIP-1>)(PORT=1521)) (ADDRESS=(PROTOCOL=tcp)(HOST=<SCAN-VIP-2>)(PORT=1521)) (ADDRESS=(PROTOCOL=tcp)(HOST=<SCAN-VIP-3>)(PORT=1521))) (CONNECT_DATA=(<sid-or-service-entry>)))où :
<alias-name>est le nom que vous utilisez pour identifier l'alias.<SCAN-VIP-1>,<SCAN-VIP-2>et<SCAN-VIP-3>correspondent aux adresses IP virtuelles SCAN.<sid-or-service-entry>identifie le SID de base de données ou son nom en utilisant l'un des formats suivants :SID=sid-name. Par exemple :SID=DBNAME1.SERVICE_NAME=service-name. Par exemple :SERVICE_NAME=pdb1.example.com.
Par défaut, Oracle Net Services sélectionne au hasard l'une des adresses dans la liste pour équilibrer la charge entre les processus d'écoute SCAN.
Connexion à une base de données à l'aide d'une descripteur de connexion référençant un Nom SCAN personnalisé
Vous pouvez configurer un descripteur de connexion à l'aide d'un nom SCAN personnalisé.
Cette approche vous permet de définir un nom SCAN personnalisé dans votre serveur de noms de domaine (DNS). Le nom SCAN personnalisé est résolu en trois adresses VIP SCAN.
-
Utilisez le modèle suivant pour définir un alias Net Services qui référence le nom SCAN personnalisé :
<alias-name> = (DESCRIPTION= (ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=<scan-name>)(PORT=1521))) (CONNECT_DATA=(<sid-or-service-entry>)))où :
<alias-name>est le nom que vous utilisez pour identifier l'alias.<scan-name>est le nom SCAN personnalisé.<sid-or-service-entry>identifie le SID de base de données ou son nom en utilisant l'un des formats suivants :SID=sid-name. Par exemple :SID=DBNAME1.SERVICE_NAME=service-name. Par exemple :SERVICE_NAME=pdb1.example.com.
-
Vous pouvez également utiliser une méthode Easy Connect pour indiquer un descripteur de connexion au format suivant :
<scan-name>:1521/<sid-or-service-entry>Exemple :
dbscan.example.com:1521/DBNAME1ou :
dbscan.example.com:1521/pdb1.example.com
Connexion à une base de donnée à l'aide d'un processus d'écoute de noeud
Pour vous connecter à une base de données avec un descripteur de connexion qui contourne les processus d'écoute SCAN, acheminez la connexion directement vers un processus d'écoute de noeud.
Avec cette méthode, vous bénéficiez pas de la haute disponibilité ni de l'équilibrage de charge fournis par SCAN. Toutefois, cette méthode peut s'avérer utile lorsque vous souhaitez diriger des connexions vers un noeud ou une interface réseau spécifique.
-
Le modèle suivant permet de définir un alias Net Services qui fait directement référence au noeud :
<alias-name> = (DESCRIPTION= (CONNECT_TIMEOUT=<timeout>) (ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=<node>)(PORT=1521))) (CONNECT_DATA=(<sid-or-service-entry>)))où :
<alias-name>est le nom que vous utilisez pour identifier l'alias.<timeout>indique un délai d'expiration, en secondes, qui vous permet de mettre fin à une tentative de connexion sans attendre le délai d'expiration TCP. Le paramètre(CONNECT_TIMEOUT=timeout)est facultatif.<node>est le nom d'hôte ou l'adresse IP de la machine virtuelle à utiliser.<sid-or-service-entry>identifie le SID de base de données ou son nom en utilisant l'un des formats suivants :SID=sid-name. Par exemple :SID=DBNAME1.SERVICE_NAME=service-name. Par exemple :SERVICE_NAME=pdb1.example.com.
-
Vous pouvez également utiliser une méthode Easy Connect pour indiquer un descripteur de connexion au format suivant :
<node>:1521/<sid-or-service-entry>Exemple :
node01.example.com:1521/DBNAME1ou :
node01.example.com:1521/pdb1.example.com