Connexion à un système Oracle Exadata Database Service on Cloud@Customer

Après avoir déployé votre système Oracle Exadata Database Service on Cloud@Customer avec un cluster de machines virtuelles, un répertoire de base Oracle Database et Oracle Database, découvrez comment vous connecter à votre machine virtuelle de cluster de machines virtuelles à l'aide de SSH et à une base de données Oracle Exadata Database Service on Cloud@Customer à l'aide d'Oracle Net Services (SQL*Net).

Connexion à une machine virtuelle avec SSH

Vous pouvez vous connecter aux machines virtuelles dans un système Oracle Exadata Database Service on Cloud@Customer à l'aide d'une connexion Secure Shell (SSH).

La plupart des systèmes de type Unix (notamment Linux, Oracle Solaris et macOS) incluent un client SSH. Pour les systèmes Microsoft Windows, vous pouvez télécharger un client SSH gratuit appelé PuTTY à partir du site suivant : http://www.putty.org.

Rubriques connexes

Conditions requises pour la connexion à un système Oracle Exadata Database Service on Cloud@Customer

Pour accéder à une machine virtuelle dans un système Oracle Exadata Database Service on Cloud@Customer à l'aide de SSH, préparez-vous à fournir le nom d'hôte ou l'adresse IP de la machine virtuelle.

  • Fichier de clés privées SSH correspondant à une clé publique inscrite dans le système.

    Lorsque vous créez un cluster de machines virtuelles sur votre système Oracle Exadata Database Service on Cloud@Customer, vous devez spécifier la partie de clé publique des paires de clés SSH. Vous pouvez également inscrire des clés supplémentaires séparément une fois que vous avez créé le cluster de machines virtuelles.

    Remarque

    Les clés publiques sont stockées dans le fichier authorized_keys, dans ~/.ssh/authorized_keys. Des fichiers authorized_keys distincts sont situés dans les répertoires de base des utilisateurs de système d'exploitation. Par défaut, seul le compte utilisateur opc dispose d'une entrée authorized_keys et peut se connecter à distance. N'enlevez pas ni ne modifiez l'entrée générée automatiquement dans authorized_keys pour l'utilisateur opc.
  • Nom d'hôte ou adresse IP de la machine virtuelle à laquelle vous voulez accéder.

    Reportez-vous à Utilisation de la console pour vérifier le statut d'une machine virtuelle de cluster de machines virtuelles.

Connexion à une machine virtuelle à partir d'un système Microsoft Windows à l'aide de PuTTY

Découvrez comment accéder à une machine virtuelle à partir d'un système Microsoft Windows à l'aide de PuTTY.

Avant de commencer

Avant d'utiliser le programme PuTTY pour vous connecter à une machine virtuelle, vous devez disposer des éléments suivants :
  • Adresse IP de la machine virtuelle

  • Fichier de clés privées SSH correspondant à la clé publique associée au déploiement. Ce fichier de clés privées doit être au format PuTTY .ppk. Si le fichier de clés privées a été créé à l'origine sur la plate-forme Linux, vous pouvez utiliser le programme PuTTYgen pour le convertir au format .ppk.

Pour vous connecter à une machine virtuelle à l'aide du programme PuTTY sous Windows, procédez comme suit :

  1. Téléchargez et installez PuTTY.

    Pour télécharger PuTTY, accédez à l'adresse http://www.putty.org/ et cliquez sur le lien de téléchargement de PuTTY.

  2. Exécutez le programme PuTTY (putty.exe).

    La fenêtre de configuration PuTTY est affichée, montrant le panneau Session.

  3. Dans le champ Nom d'hôte (ou adresse IP), entrez le nom d'hôte ou l'adresse IP de la machine virtuelle à laquelle vous voulez accéder.
  4. Vérifiez que l'option Type de connexion est définie sur SSH.
  5. Dans l'arborescence Catégorie, développez Connexion si nécessaire, puis cliquez sur Données.

    Le panneau Données est affiché.

  6. Dans le champ Nom utilisateur pour la connexion automatique, saisissez l'utilisateur de système d'exploitation sous le nom duquel vous voulez vous connecter :
    1. Connectez-vous en tant qu'utilisateur opc pour effectuer des opérations nécessitant un accès root ou oracle à la machine virtuelle, telles que la sauvegarde ou l'application de patches. Cet utilisateur peut se servir de la commande sudo pour obtenir un accès root ou oracle à la machine virtuelle.
  7. Vérifiez que l'option Si le nom utilisateur n'est pas indiqué est définie sur Invite.
  8. Dans l'arborescence Catégorie, développez SSH, puis cliquez sur Authentification.

    Le panneau Authentification est affiché.

  9. Cliquez sur le bouton Parcourir en regard du champ Fichier de clés privées pour l'authentification. Ensuite, dans la fenêtre Sélectionner un fichier de clés privées, accédez au fichier de clés privées correspondant à la clé publique associée au déploiement et ouvrez-le.
  10. Dans l'arborescence Catégorie, cliquez sur Session.

    Le panneau Session est affiché.

  11. Dans le champ Sessions enregistrées, entrez le nom de la configuration de connexion. Ensuite, cliquez sur Enregistrer.
  12. Cliquez sur Ouvrir pour ouvrir la connexion.

    La fenêtre Configuration PuTTY se ferme et la fenêtre de terminal PuTTY est affichée.

    S'il s'agit de votre première connexion à la machine virtuelle, la fenêtre d'alerte de sécurité PuTTY s'affiche, vous invitant à confirmer la clé publique. Cliquez sur Oui pour continuer la connexion.

Accès à une base de données après la connexion à la machine virtuelle

Une fois connecté à une machine virtuelle, vous pouvez utiliser la série de commandes suivante pour identifier une base de données et vous y connecter.

  1. Connectez-vous via SSH en tant qu'utilisateur opc.
  2. sudo su oracle
  3. Servez-vous de l'utilitaire srvctl situé sous le répertoire de base Oracle Grid Infrastructure afin de répertorier les bases de données sur le système. Par exemple :
    /u01/app/12.2.0.1/grid/bin/srvctl config database -v
    nc122   /u02/app/oracle/product/12.2.0/dbhome_6 12.2.0.1.0
    s12c    /u02/app/oracle/product/12.2.0/dbhome_2 12.2.0.1.0
  4. Identifiez les instances de la base de données à laquelle vous voulez accéder. Par exemple :
    /u01/app/12.2.0.1/grid/bin/srvctl status database -d s12c
    Instance s12c1 is running on node node01
    Instance s12c2 is running on node node02
  5. Configurez les paramètres d'environnement de la base de données à laquelle vous voulez accéder. Par exemple :
    . oraenv
    ORACLE_SID = [oracle] ? s12c
    The Oracle base has been set to /u02/app/oracle
    export ORACLE_SID=s12c1
  6. Vous pouvez utiliser la commande svrctl pour afficher des informations plus détaillées sur la base de données. Par exemple :
    srvctl config database -d s12c
    Database unique name: s12c
    Database name:
    Oracle home: /u02/app/oracle/product/12.2.0/dbhome_2
    Oracle user: oracle
    Spfile: +DATAC4/s12c/spfiles12c.ora
    Password file: +DATAC4/s12c/PASSWORD/passwd
    Domain: example.com
    Start options: open
    Stop options: immediate
    Database role: PRIMARY
    Management policy: AUTOMATIC
    Server pools:
    Disk Groups: DATAC4
    Mount point paths:
    Services:
    Type: RAC
    Start concurrency:
    Stop concurrency:
    OSDBA group: dba
    OSOPER group: racoper
    Database instances: s12c1,s12c2
    Configured nodes: node01,node02
    CSS critical: no
    CPU count: 0
    Memory target: 0
    Maximum memory: 0
    Default network number for database services:
    Database is administrator managed
  7. Vous pouvez accéder à la base de données à l'aide de SQL*Plus. Par exemple :
    sqlplus / as sysdba
    
    SQL*Plus: Release 12.2.0.1.0 Production ...
    
    Copyright (c) 1982, 2016, Oracle.  All rights reserved.
    
    Connected to:
    Oracle Database 12c EE Extreme Perf Release 12.2.0.1.0 - 64bit Production

Connexion à partir d'un système de type Unix

Pour accéder à une machine virtuelle sur un système Oracle Oracle Exadata Database Service on Cloud@Customer à partir d'un système de type Unix à l'aide de SSH, suivez cette procédure.

  • Saisissez la commande SSH suivante pour accéder à la machine virtuelle :
    ssh –i private-key user@node

    Dans la syntaxe précédente :

    • private-key est le nom et le chemin complet du fichier qui contient la clé privée SSH correspondant à une clé publique inscrite dans le système.
    • user est l'utilisateur de système d'exploitation à utiliser pour la connexion :
      • Pour effectuer des opérations en tant que propriétaire du logiciel Oracle Database, connectez-vous en tant qu'utilisateur opc et su oracle. L'utilisateur oracle ne dispose pas de l'accès utilisateur root à la machine virtuelle.
      • Pour effectuer des opérations nécessitant un accès root à la machine virtuelle, telles que l'application de patches, connectez-vous en tant qu'utilisateur opc. L'utilisateur opc peut utiliser la commande sudo -s pour obtenir l'accès root à la machine virtuelle.
    • node est le nom d'hôte ou l'adresse IP de la machine virtuelle à laquelle vous voulez accéder.

Connexion à une base de données avec Oracle Net Services

Vous pouvez vous connecter aux machines virtuelles dans un système Oracle Exadata Database Service on Cloud@Customer à l'aide d'Oracle Net Services.

Utilisation d'Oracle Net Services pour se connecter à une base de données

Oracle Database Oracle Exadata Database Service on Cloud@Customer prend en charge l'accès à distance aux bases de données à l'aide d'Oracle Net Services.

Comme Oracle Exadata Database Service on Cloud@Customer utilise Oracle Grid Infrastructure, vous pouvez établir des connexions Oracle Net Services à l'aide de connexions SCAN. Le nom SCAN est une fonctionnalité qui offre aux clients une méthode cohérente d'accès aux instances de base de données Oracle exécutées dans un cluster.

Par défaut, le nom SCAN est associé à trois adresses IP virtuelles. Chaque adresse IP virtuelle SCAN est également associée à un processus d'écoute SCAN qui fournit une adresse de connexion pour les connexions Oracle Database à l'aide d'Oracle Net Services. Pour optimiser la disponibilité, Oracle Grid Infrastructure distribue les adresses IP virtuelles SCAN et les processus d'écoute SCAN sur les noeuds de cluster disponibles. En outre, en cas d'arrêt ou de défaillance d'un noeud, les adresses IP virtuelles SCAN et les processus d'écoute SCAN sont automatiquement migrés vers un noeud survivant. Grâce aux connexions SCAN, vous améliorez la possibilité qu'ont les clients Oracle Database de disposer d'un ensemble fiable d'adresses de connexion pouvant desservir toutes les bases de données en cours d'exécution dans le cluster.

Les processus d'écoute SCAN complètent les processus d'écoute Oracle Net exécutés sur chaque noeud du cluster, également appelés processus d'écoute de noeud. Lorsqu'une connexion Oracle Net Services provient d'une connexion SCAN, le processus d'écoute SCAN l'achemine vers l'un des processus d'écoute de noeud et n'intervient plus ensuite. 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.

Remarque

Cette documentation fournit les exigences de base pour la connexion aux bases de données Oracle Exadata Database Service on Cloud@Customer à l'aide d'Oracle Net Services.

Prérequis pour la connexion à une base de données avec Oracle Net Services

Passez en revue les prérequis pour la connexion à une instance Oracle Database sur Oracle Oracle Exadata Database Service on Cloud@Customer à l'aide d'Oracle Net Services.

Pour vous connecter à une instance Oracle Database sur Oracle Exadata Database Service on Cloud@Customer avec Oracle Net Services, vous avez besoin des éléments suivants :
  • Adresses IP pour vos 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 voulez accéder.
  • Identificateur de base de données : identificateur système (SID) de base de données ou nom de service.

Connexion à une base de données à l'aide des processus d'écoute SCAN

Pour créer une connexion Oracle Net Services à l'aide de processus d'écoute SCAN, vous avez le choix entre deux approches.

Connexion à une base de données à l'aide d'un descripteur de connexion référençant toutes les adresses IP virtuelles SCAN

Vous pouvez configurer un descripteur de connexion pour le système Oracle Exadata Database Service on Cloud@Customer avec plusieurs processus d'écoute SCAN.

Cette approche exige que vous fournissiez toutes les adresses IP virtuelles SCAN et permet à Oracle Net Services de se connecter à un processus d'écoute SCAN disponible.

  1. Utilisez le modèle suivant afin de définir un alias Net Services, généralement utilisé pour fournir un nom pratique au descripteur de connexion :
    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–3] correspond aux adresses IP virtuelles SCAN.

    sid-or-service-entry identifie le SID de base de données ou le nom de service en utilisant l'un des formats suivants :
    • SID=sid-name. Par exemple : SID=S12C1.
    • SERVICE_NAME=service-name. Par exemple : SERVICE_NAME=PDB1.example.yourcloud.com.
    Remarque

    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'un descripteur de connexion référençant un nom SCAN personnalisé

Vous pouvez configurer un descripteur de connexion pour le système Oracle Exadata Database Service on Cloud@Customer avec un nom SCAN personnalisé.

Avec cette approche, vous définissez dans le DNS un nom SCAN personnalisé qui se résout en trois adresses IP virtuelles SCAN.

  1. 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 le nom de service en utilisant l'un des formats suivants :
    • SID=sid-name. Par exemple : SID=S12C1.
    • SERVICE_NAME=service-name. Par exemple : SERVICE_NAME=PDB1.example.yourcloud.com.
    Vous pouvez également utiliser la méthode de connexion simple afin d'indiquer un descripteur de connexion au format suivant :
    scan-name:1521/sid-or-service-entry
    Par exemple :
    exa1scan.example.com:1521/S12C1
    Ou
    exa1scan.example.com:1521/PDB1.example.yourcloud.com

Connexion à une base de données à l'aide d'un processus d'écoute de noeud

Pour vous connecter à une instance Oracle Database sur Oracle Exadata Database Service on Cloud@Customer avec un descripteur de connexion qui contourne les processus d'écoute SCAN, suivez cette procédure afin d'acheminer votre connexion directement vers un processus d'écoute de noeud.

Avec cette méthode, vous ne bénéficiez pas de la haute disponibilité ni de l'équilibrage de charge fournis par SCAN. Toutefois, cette méthode peut être recommandée si vous voulez diriger les connexions vers un noeud ou une interface réseau spécifique. Par exemple, vous pouvez avoir besoin de vous assurer que les connexions à partir d'un programme qui effectue un chargement de données en masse utilisent le réseau de sauvegarde.

Avec cette approche, vous dirigez votre connexion en utilisant le nom d'hôte ou l'adresse IP du noeud.

Exemple 4-1 Définition d'un alias Net Services faisant 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 la fin du 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 que vous voulez utiliser.

sid-or-service-entry identifie le SID de base de données ou le nom de service en utilisant l'un des formats suivants :
  • SID=sid-name. Par exemple : SID=S12C1.
  • SERVICE_NAME=service-name. Par exemple : SERVICE_NAME=PDB1.example.oraclecloudatcust.com.
Vous pouvez également utiliser la méthode de connexion simple afin d'indiquer un descripteur de connexion au format suivant :
node:1521/sid-or-service-entry
Par exemple :
exa1node01.example.com:1521/S12C1
Ou
exa1node01.example.com:1521/PDB1.example.oraclecloudatcust.com