0% ont trouvé ce document utile (0 vote)
57 vues260 pages

Admin 1

Transféré par

Hassan Moeen
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
57 vues260 pages

Admin 1

Transféré par

Hassan Moeen
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Machine Translated by Google

Base de données Oracle 19c : administration


Atelier
Guide étudiant
D106546GC10

En savoir plus sur Oracle University sur [Link]


Machine Translated by Google

Auteurs Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Donna Keesling Clause de non­responsabilité

Darryl Balaski Ce document contient des informations exclusives et est protégé par le droit d'auteur et d'autres lois sur la
propriété intellectuelle. Vous pouvez copier et imprimer ce document uniquement pour votre usage personnel dans
le cadre d'un cours de formation Oracle. Le document ne peut en aucun cas être modifié ou altéré. Sauf lorsque
Contributeurs techniques et votre utilisation constitue une "utilisation équitable" en vertu de la loi sur le droit d'auteur, vous ne pouvez pas utiliser,
réviseurs partager, télécharger, télécharger, copier, imprimer, afficher, exécuter, reproduire, publier, concéder sous licence,
publier, transmettre ou distribuer ce document dans son intégralité ou en partie sans l'autorisation expresse d'Oracle.
Marc Fuller
James Spiller Les informations contenues dans ce document sont susceptibles d'être modifiées sans préavis et ne sont pas
garanties sans erreur. Si vous trouvez des erreurs, veuillez nous les signaler par écrit.
Jim Womack
Avis de droits restreints

Éditeurs Si cette documentation est remise au gouvernement des États­Unis ou à toute personne utilisant la
Pavithran Adka documentation au nom du gouvernement des États­Unis, l'avis suivant s'applique :

Joseph Fernández UTILISATEURS FINAUX DU GOUVERNEMENT DES ÉTATS­UNIS : programmes Oracle (y compris tout
système d'exploitation, logiciel intégré, tout programme intégré, installé ou activé sur le matériel fourni, et les
modifications de ces programmes) et documentation informatique Oracle ou autres données Oracle fournies ou
1008022021 consultées par les utilisateurs finaux du gouvernement des États­Unis sont des "logiciels informatiques commerciaux"
ou de la "documentation de logiciels informatiques commerciaux" conformément au règlement fédéral sur les
acquisitions applicable et aux réglementations supplémentaires spécifiques à l'agence. A ce titre, l'utilisation, la
reproduction, la duplication, la diffusion, l'affichage, la divulgation, la modification, la préparation d'œuvres dérivées
et/ou l'adaptation i) des programmes Oracle (y compris tout système d'exploitation, logiciel intégré, tout programme
intégré, installé ou activé sur le matériel informatique et modifications de ces programmes), ii) la documentation
informatique Oracle et/ou iii) d'autres données Oracle, est soumise aux droits et limitations spécifiés dans la licence
contenue dans le contrat applicable. Les conditions régissant l'utilisation des services cloud d'Oracle par le
gouvernement américain sont définies par le contrat applicable pour ces services. Aucun autre droit n'est accordé au
gouvernement américain.

Avis de marque

Oracle et Java sont des marques déposées d'Oracle et/ou de ses filiales. Les autres noms peuvent être des marques
déposées de leurs propriétaires respectifs.

Intel et Intel Inside sont des marques ou des marques déposées d'Intel Corporation. Toutes les marques SPARC sont
utilisées sous licence et sont des marques ou des marques déposées de SPARC International, Inc. AMD, Epyc et le
logo AMD sont des marques ou des marques déposées d'Advanced Micro Devices. UNIX est une marque déposée
de The Open Group.

Clause de non­responsabilité relative au contenu, aux produits et aux services de tiers

Cette documentation peut fournir un accès ou des informations sur le contenu, les produits et les services de
tiers. Oracle Corporation et ses sociétés affiliées ne sont pas responsables et déclinent expressément toute garantie
de quelque nature que ce soit concernant le contenu, les produits et les services de tiers, sauf indication contraire dans
un accord applicable entre vous et Oracle.
Oracle Corporation et ses sociétés affiliées ne seront pas responsables des pertes, coûts ou dommages encourus
en raison de votre accès ou de votre utilisation du contenu, des produits ou des services tiers, sauf tel qu'énoncé
dans un accord applicable entre vous et Oracle.
Machine Translated by Google

Contenu

1 Introduction à la base de données Oracle

Objectifs 1­2
Architecture du serveur de base de données Oracle : Présentation 1­3
Base de données de conteneur Oracle mutualisée : introduction 1­4
Base de données de conteneurs mutualisée Oracle : Architecture 1­5

Configurations d'instance de base de données Oracle 1­6


Partage de base de données : Introduction 1­7
Serveur de base de données Oracle : diagramme d'architecture interactif 1­8
Résumé 1­9

2 Accéder à une base de données Oracle


Objectifs 2­2
Connexion à une instance de base de données Oracle 2­3
Outils de base de données Oracle 2­5
Choix d'outils de base de données 2­6
SQL*Plus 2­7

Développeur Oracle SQL 2­9


Développeur Oracle SQL : Connexions 2­10
Développeur Oracle SQL : Actions DBA 2­11
Assistant de configuration de base de données (DBCA) 2­12
Base de données Oracle Enterprise Manager Express 2­13
Enterprise Manager Cloud Control 13c Fonctionnalités 2­15
Présentation des composants d'Oracle Enterprise Manager 2­17
Panneau de verre unique pour la gestion d'entreprise 2­18
Gestion de la base de données Oracle Enterprise Manager 2­19
Résumé 2­21

3 Création d'une base de données Oracle à l'aide de DBCA


Objectifs 3­2
Planification de la base de données
3­3 Choix d'un modèle de base de données 3­4
Choix du jeu de caractères approprié 3­5 Comment les jeux
de caractères sont­ils utilisés ? 3­7

Définition correcte de NLS_LANG sur le client 3­8


Utilisation de l'assistant de configuration de base de données 3­9

iii
Machine Translated by Google

Utilisation de DBCA en mode silencieux 3­10


Résumé 3­11
Aperçu de la pratique 3­12

4 Création d'une base de données Oracle à l'aide d'une commande SQL


Objectifs 4­2
Création d'une base de données de conteneur (CDB) 4­3
Création d'une CDB à l'aide d'une commande SQL : Exemple 4­4
Utilisation de la clause SEED FILE_NAME_CONVERT 4­5
Utilisation de la clause ENABLE PLUGGABLE DATABASE 4­6
Résumé 4­7
Aperçu de la pratique 4­8

5 Démarrage et arrêt d'une instance de base de données


Objectifs 5­2
Démarrage de l'instance de base de données Oracle 5­3
Arrêt d'une instance de base de données Oracle 5­4
Comparaison des modes d'arrêt 5­6
Ouverture et fermeture des PDB 5­8
Configuration des PDB pour une ouverture automatique 5­9
Résumé 5­10
Aperçu de la pratique 5­11

6 Gestion des instances de base de données


Objectifs 6­2
Utilisation des paramètres d'initialisation 6­3
Paramètres d'initialisation 6­5

Modification des paramètres d'initialisation 6­7


Affichage des paramètres d'initialisation 6­9
Utilisation du référentiel de diagnostic automatique 6­11
Référentiel de diagnostic automatique 6­12
Affichage du journal des alertes 6­13
Utilisation des fichiers de trace 6­14

Administration du fichier journal DDL 6­16


Interrogation des vues de performances dynamiques 6­17
Considérations relatives aux vues de performances dynamiques 6­18
Dictionnaire de données : Présentation 6­19
Interrogation du dictionnaire de données Oracle 6­20
Résumé 6­22
Aperçu de la pratique 6­23

iv
Machine Translated by Google

7 Oracle Net Services : Présentation

Objectifs 7­2
Connexion à l'instance de base de données 7­3
Oracle Net Services : présentation 7­4

Définition des composants Oracle Net Services 7­5


Outils de configuration et de gestion d'Oracle Net Services 7­6
Oracle Net Listener : Présentation 7­7
L'écouteur par défaut 7­8

Comparaison des architectures de serveur dédié et partagé 7­9


Résumé 7­10

8 Configuration des méthodes de dénomination


Objectifs 8­2
Établissement de connexions réseau Oracle 8­3
Connexion à une instance de base de données Oracle 8­4
Nom Résolution 8­5

Établissement d'une connexion 8­6


Sessions utilisateur 8­7

Méthodes de dénomination 8­8

Connexion facile 8­9


Dénomination locale 8­10
Dénomination des répertoires 8­11

Utilisation des services de base de données pour gérer les charges de travail 8­12

Création de services de base de données 8­13


Résumé 8­14
Aperçu de la pratique 8­15

9 Configuration et administration de l'écouteur


Objectifs 9­2
Révision : présentation d'Oracle Net Services 9­3
Oracle Net Listener : Présentation 9­4
L'écouteur par défaut 9­5

Configuration de l'enregistrement dynamique des services 9­6


Configuration de l'enregistrement de service statique 9­8
Résumé 9­10
Aperçu de la pratique 9­11

10 Configuration d'une architecture de serveur partagé


Objectifs 10­2
Architecture de serveur partagé : présentation 10­3

v
Machine Translated by Google

Comparaison de l'architecture des serveurs dédiés et partagés : révision 10­4


Activation du serveur partagé 10­5
Contrôle des opérations du serveur partagé 10­6
Utilisation de SGA et PGA 10­7
Considérations sur la configuration du serveur partagé 10­8
Résumé 10­9
Aperçu de la pratique 10­10

11 Configuration d'Oracle Connection Manager pour le multiplexage et les objectifs de contrôle d'accès 11­2
Oracle Connection Manager : Présentation 11­3 Processus d'Oracle Connection Manager 11­4 Oracle
Connection Manager : Architecture 11­5 Utilisation des règles de filtrage 11­6 Implémentation du
contrôle d'accès intranet 11­7 Implémentation du contrôle d'accès Internet 11­8 Utilisation du
multiplexage de session 11­9 Configuration d'Oracle Connection Manager 11­10 Configuration du fichier
[Link] 11­11 Exemple de fichier [Link] 11­12 Configuration des clients 11­13 Configuration du
serveur de base de données 11­ 14 Configuration du serveur de base de données pour le multiplexage
(facultatif) 11­15 Utilisation de l'utilitaire de contrôle d'Oracle Connection Manager 11­16 Examen des
fonctionnalités d'Oracle Connection Manager 11­17 Résumé 11­18 Présentation de la pratique 11­19

12 Créer des PDB à partir de Seed


Objectifs 12­2
Provisionnement de nouvelles bases de données enfichables 12­3
Outils 12­4

Création d'un nouveau PDB à partir de PDB$SEED 12­5


Utilisation de la clause FILE_NAME_CONVERT 12­6
Utilisation d'OMF ou du paramètre PDB_FILE_NAME_CONVERT 12­7
Résumé 12­8
Aperçu de la pratique 12­9

13 Utilisation d'autres techniques pour créer des PDB


Objectifs 13­2
Clonage de PDB ordinaires 13­3

vi
Machine Translated by Google

Migration de données d'un non­CDB vers un CDB 13­4


Connexion d'un non­CDB à CDB à l'aide de DBMS_PDB 13­5
Réplication d'un non­CDB dans un CDB à l'aide de GoldenGate 13­6
Clonage d'une PDB non­CDB ou distante 13­7
Utilisation de DBCA pour cloner une PDB distante 13­8
Branchement d'un PDB régulier débranché dans le CDB 13­9
Branchement d'un PDB à l'aide d'un fichier d'archive 13­10
Clonage de PDB distants en mode chaud 13­11
Réinstallation de l'APB avec des temps d'arrêt quasi nuls 13­12

Utilisation de DBCA pour déplacer un PDB distant 13­14


Proxy PDB : Interrogation sur les CDB faisant appel à la réplique racine proxy 13­15
Création d'un proxy PDB 13­16
Résumé 13­17
Aperçu de la pratique 13­18

14 Gestion des PDB

Objectifs 14­2
Modification du mode PDB 14­3
Modification des paramètres PDB 14­4
Impact de la modification des paramètres d'initialisation 14­5
Modification des paramètres d'initialisation : exemple 14­6
Utilisation de la commande ALTER SYSTEM dans un PDB 14­7
Configuration du nom d'hôte et du numéro de port par PDB 14­8
Suppression des PDB 14­9
Sommaire 14­10
Aperçu de la pratique 14­11

15 Présentation du stockage de la base de données

Objectifs 15­2
Architecture de stockage de base de données 15­3
Structures logiques et physiques de la base de données 15­5
Segments, étendues et blocs 15­7
Tablespaces et fichiers de données 15­8
Tablespaces par défaut dans une base de données de conteneur mutualisée 15­9
Tablespaces SYSTEM et SYSAUX 15­10
Types de segments 15­11
Stockage des données de table 15­12
Contenu du bloc de base de données 15­13

Présentation de la création différée de segments 15­14


Contrôle de la création de segments différés 15­15
Surveillance de l'utilisation de l'espace tablespace 15­16

vii
Machine Translated by Google

Structures de stockage de base de données Oracle : diagramme d'architecture interactif 15­17


Résumé 15­18

16 Création et gestion des tablespaces


Objectifs 16­2
Création de tablespaces 16­3
Création d'un tablespace : clauses 16­4
Création de tablespaces permanents dans un CDB 16­7
Définition des tablespaces permanents par défaut 16­8
Tablespaces temporaires 16­9
Modification et suppression de tablespaces 16­10
Affichage des informations sur les espaces disque logiques 16­12

Implémentation des fichiers gérés Oracle (OMF) 16­13


Agrandissement de la base de données 16­15

Déplacer ou renommer des fichiers de données en ligne 16­16


Exemples : Déplacer et renommer des fichiers de données en ligne 16­17
Résumé 16­18
Aperçu de la pratique 16­19

17 Améliorer l'utilisation de l'espace


Objectifs 17­2
Fonctions de gestion de l'espace 17­3
Gestion de l'espace des blocs 17­4
Chaînage de lignes et migration 17­5
Gestion de l'espace libre dans les segments 17­6
Allocation d'étendues 17­7
Utilisation d'index inutilisables 17­8
Utilisation des tables temporaires 17­9
Création de tables temporaires globales 17­10
Création de tables temporaires privées 17­11
Compression de table : Présentation 17­12
Compression de table : Concepts 17­13
Compression pour les opérations d'insertion de chemin direct 17­14
Compression de ligne avancée pour les opérations DML 17­15
Spécification de la compression de table 17­16
Utilisation du conseiller de compression 17­17
Résolution des problèmes d'utilisation de l'espace 17­18

Récupérer de l'espace en réduisant les segments 17­19


Réduction des segments 17­20
Résultats d'une opération de réduction 17­21
Gestion de l'allocation d'espace avec reprise 17­22

viii
Machine Translated by Google

Utilisation de l'allocation d'espace avec reprise 17­23 Reprise

des instructions suspendues 17­25 Quelles opérations peuvent

être reprises ? 17­27 Résumé 17­28 Aperçu de la pratique

17­29

18 Gestion des données d'annulation

Objectifs 18­2
Annuler les données : Présentation 18­3

Transactions et données d'annulation 18­5

Stockage des informations d'annulation 18­6

Comparaison des données d'annulation et de rétablissement 18­7

Gestion de l'annulation 18­8

Comparaison du mode d'annulation PARTAGÉ et du mode d'annulation LOCAL 18­9

Configuration de la rétention d'annulation 18­10

Catégories d'annulation 18­11

Garantir la conservation des annulations 18­12

Modification d'un tablespace d'annulation à une taille fixe 18­13

Annulation temporaire : Présentation 18­14

Avantages d'annulation temporaire 18­15

Activation de l'annulation temporaire 18­16

Surveillance de l'annulation temporaire 18­17

Résumé 18­18
Aperçu de la pratique 18­19

19 Création et gestion des comptes utilisateur

Objectifs 19­2
Comptes utilisateur de la base de données 19­3

Comptes administrateur fournis par Oracle 19­5

Création d'utilisateurs de base de données Oracle dans un environnement mutualisé 19­6

Création d'utilisateurs communs dans la CDB et les PDB 19­7

Création de comptes de schéma uniquement 19­8

Authentification des utilisateurs 19­9

Utilisation de l'authentification par mot de passe 19­10

Utilisation de l'authentification de fichier par mot de passe 19­11

Utilisation de l'authentification du système d'exploitation 19­12

Authentification du système d'exploitation pour les utilisateurs privilégiés 19­14

Attribution de quotas 19­15

Résumé 19­17
Aperçu de la pratique 19­18

ix
Machine Translated by Google

20 Configuration de l'autorisation des privilèges et des rôles


Objectifs 20­2
Privilèges 20­3
Privilèges système 20­4
Privilèges système pour les administrateurs 20­6
Privilèges objet 20­7
Octroi de privilèges dans un environnement mutualisé 20­8
Octroi de privilèges : exemple 20­9
Utilisation des rôles pour gérer les privilèges 20­10
Affectation de privilèges aux rôles et affectation de rôles aux utilisateurs 20­11
Rôles fournis par Oracle 20­12
Attribution de rôles dans un environnement mutualisé 20­13
Octroi de rôles : exemple 20­14
Sécuriser les rôles 20­15
Révoquer des rôles et des privilèges 20­16
Attribution et révocation de privilèges système 20­17
Octroi et révocation de privilèges objet 20­18
Résumé 20­19
Aperçu de la pratique 20­20

21 Configuration des limites de ressources utilisateur


Objectifs 21­2
Profils et utilisateurs 21­3
Création de profils dans une architecture mutualisée 21­4
Création de profils : exemple 21­5
Paramètres de profil : Ressources 21­6

Paramètres de profil : verrouillage et mots de passe 21­8


Fonctions de vérification de mot de passe fournies par Oracle 21­10
Affectation de profils dans une architecture mutualisée 21­11
Résumé 21­12
Aperçu de la pratique 21­13

22 Implémentation de l'audit de base de données Oracle


Objectifs 22­2
Sécurité de la base de données 22­3

Surveillance de la conformité 22­5


Types d'activités à auditer 22­6
Activités obligatoirement auditées 22­7
Comprendre la mise en œuvre de l'audit 22­8
Administration des rôles requis pour l'audit 22­9
Audit de base de données : Présentation 22­10

X
Machine Translated by Google

Configuration de l'audit 22­11


Création d'une stratégie d'audit unifiée 22­12
Création d'une stratégie d'audit : options d'audit à l'échelle du système 22­13
Création d'une stratégie d'audit : actions spécifiques à l'objet 22­14
Création d'une stratégie d'audit : spécification des conditions 22­15
Activation et désactivation des stratégies d'audit 22­16
Actions d'audit dans la CDB et les APB 22­17
Modification d'une stratégie d'audit unifié 22­19
Audit des instructions de niveau supérieur uniquement 22­20

Affichage des informations sur la stratégie d'audit 22­21

Audit basé sur la valeur 22­22


Audit détaillé 22­24
Politique FGA 22­25
Déclaration DML auditée : Considérations 22 à 27
Directives FGA 22­28

Archivage et purge de la piste d'audit 22­29


Purge des enregistrements de piste d'audit 22­30

Sommaire 22­31
Aperçu de la pratique 22­32

23 Introduction au chargement et au transport de données


Objectifs 23­2
Déplacement de données : architecture générale 23­3
Oracle Data Pump : Présentation 23­4
Pompe de données Oracle : Avantages 23­5
Chargeur SQL : Présentation 23­7

Résumé 23­9

24 Chargement des données

Objectifs 24­2
Chargeur SQL : révision 24­3

Création du fichier de contrôle SQL*Loader 24­4


Méthodes de chargement SQL*Loader 24­6
Protection contre la perte de données 24 heures sur 24, 7 jours sur 7

SQL*Loader Express Mode 24­8


Utilisation de SQL*Loader pour charger une table dans une PDB 24­9
Résumé 24­10
Aperçu de la pratique 24­11

xii
Machine Translated by Google

25 Transport de données
Objectifs 25­2
Clients d'exportation et d'importation de pompe de données 25­3

Interfaces et modes de pompe de données 25­4


Transformations d'importation de pompe de données 25­6

Utilisation d'Oracle Data Pump avec les PDB 25­7


Exportation à partir d'une non­CDB et importation dans une PDB 25­8
Exportation et importation entre les PDB 25­9
Exportation/importation entièrement transportable 25­10

Exportation/Importation entièrement transportable : Exemple 25­12


Transport d'une base de données sur le réseau : exemple 25­13
Utilisation de RMAN pour transporter des données entre plates­formes 25­14
Commande RMAN CONVERT 25­15

Transport de données avec un temps d'arrêt minimum 25­16


Transport d'un tablespace à l'aide de copies d'image 25­17
Détermination du format Endian d'une plate­forme 25­18
Transport de données avec des jeux de sauvegarde 25­19
Transport d'un tablespace 25­20
Transport de tablespaces incohérents 25­22
Transport de base de données : fichiers de données 25­23

Transporter une base de données 25­24


Transporter une base de données : Conversion 25­25
Transporter une base de données : Exemple 1 25­26
Transporter une base de données : Exemple 2 25­27
Transporter une base de données : Considérations 25­28
Transport d'une base de données avec des jeux de sauvegarde 25­29
Résumé 25­31
Aperçu de la pratique 25­32

26 Utilisation de tables externes pour charger et transporter des données


Objectifs 26­2
Tableaux externes 26­3
Tables externes : avantages 26­4

Pilote d'accès ORACLE_LOADER 26­5


Pilote d'accès ORACLE_DATAPUMP 26­6
Tableaux externes 26­7

Affichage des informations sur les tables externes 26­8


Résumé 26­9
Aperçu de la pratique 26­10

xii
Machine Translated by Google

27 Tâches de maintenance automatisées : Présentation

Objectifs 27­2
Infrastructure de maintenance proactive de la base de données 27­3

Tâches de maintenance automatisées : Composants 27­4


Tâches de maintenance automatisées prédéfinies 27­5
Fenêtres d'entretien 27­6
Fenêtres de maintenance prédéfinies 27­7

Affichage des détails de la fenêtre de maintenance 27­8


Tâches de maintenance automatisées 27­9

Résumé 27­10

28 Tâches de maintenance automatisées : gestion des tâches et des fenêtres


Objectifs 28­2
Configuration des tâches de maintenance automatisées 28­3
Activation et désactivation des tâches de maintenance 28­4
Création et gestion des fenêtres de maintenance 28­5
Allocations de ressources pour les tâches de maintenance automatisées 28­6

Modification des allocations de ressources pour les tâches de maintenance 28­7


Sommaire 28­8
Aperçu de la pratique 28­9

29 Vue d'ensemble des performances de surveillance et de réglage de la base de données

Objectifs 29­2
Activités de gestion du rendement 29­3
Considérations relatives à la planification des performances 29­4
Maintenance de la base de données 29­6

Référentiel de charge de travail automatique (AWR) 29­7


Moniteur de diagnostic automatique de base de données (ADDM) 29­8
Configuration de l'analyse ADDM automatique au niveau PDB 29­9
Cadre consultatif 29­10
Méthodologie de réglage des performances 29­12
Résumé 29­13

30 Surveillance des performances de la base de données

Objectifs 30­2
Alertes générées par le serveur 30­3

Définition des seuils métriques 30­4


Réaction aux alertes 30­5
Types d'alertes et effacement des alertes 30­6
Statistiques et mesures du serveur de base de données 30­7

Surveillance des performances 30­8

xiii
Machine Translated by Google

Affichage des informations statistiques 30­9


Surveillance des événements d'attente 30­11

Séances de suivi 30­12


Services de surveillance 30­13
Résumé 30­14
Aperçu de la pratique 30­15

31 Analyse SQL et optimisation des chemins d'accès


Objectifs 31­2
Processus de réglage SQL 31­3
Optimiseur Oracle 31­4
Statistiques de l'optimiseur 31­5
Collecte des statistiques de l'optimiseur 31­6
Définition des préférences de statistiques de l'optimiseur 31­8
Conseiller en statistiques de l'optimiseur 31­10
Rapport Optimizer Statistics Advisor 31­11
Exécution des tâches de l'assistant de statistiques de l'optimiseur 31­12
Directives du plan SQL 31­13

Plans d'exécution adaptatifs 31­14


Conseiller de réglage SQL : Présentation 31­16
Conseiller d'accès SQL : Présentation 31­18

Analyseur de performances SQL : présentation 31­19


Gestion des tâches de réglage automatique 31­21
Résumé 31­22
Aperçu de la pratique 31­23

xiv
Machine Translated by Google

Introduction à la base de données Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure de :

• Lister les principaux composants architecturaux d'Oracle Database


• Décrire l'architecture mutualisée

• Décrire le partitionnement de la base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 1 ­ 2


Machine Translated by Google

Architecture du serveur de base de données Oracle : Présentation

Exemple
PGA

Serveur
Structures de la mémoire
processus
(Zone globale du système)

Processus
Serveur

Utilisateur

processus

Base de données (structures de stockage)


Client

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Il existe trois structures principales dans l'architecture du serveur Oracle Database : les structures de mémoire, les
processus et les structures de stockage. Un système de base de données Oracle de base se compose d'une base de données
Oracle et d'une instance de base de données.

La base de données comprend à la fois des structures physiques et des structures logiques. Comme les structures physiques et
logiques sont séparées, le stockage physique des données peut être géré sans affecter l'accès aux structures de stockage logiques.

L'instance se compose de structures de mémoire et de processus d'arrière­plan associés à cette instance.


Chaque fois qu'une instance est démarrée, une zone de mémoire partagée appelée System Global Area (SGA) est allouée et
les processus d'arrière­plan sont démarrés. Les processus sont des tâches qui fonctionnent dans la mémoire des ordinateurs. Un
processus est défini comme un "fil de contrôle" ou un mécanisme dans un système d'exploitation qui peut exécuter une série d'étapes.
Après avoir démarré une instance de base de données, le logiciel Oracle associe l'instance à une base de données spécifique. C'est
ce qu'on appelle monter la base de données. La base de données est alors prête à être ouverte, ce qui la rend accessible aux
utilisateurs autorisés.

Oracle Database 19c : Atelier d'administration 1 ­ 3


Machine Translated by Google

Base de données de conteneurs mutualisée Oracle : introduction

• Conteneur : une collection logique de données ou de métadonnées au sein de l'architecture mutualisée. • Base de données enfichable

(PDB) : une collection portable de schémas, d'objets de schéma et d'objets non schématiques.

• Conteneurs dans une base de données de conteneurs mutualisée (CDB) :

– Conteneur racine CDB (également appelé racine)


– Conteneur système (comprend la racine et tous les PDB)
– Conteneurs d'applications
– PDB racine
­ PDB créés par l'utilisateur

• Toutes les bases de données enfichables partagent :

– Processus d'arrière­plan
– Gestion de la mémoire partagée et de certaines structures de mémoire
– Certaines des métadonnées Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Au niveau physique, la base de données de conteneur mutualisée (CDB) possède une instance de base de données et des
fichiers de base de données, tout comme une base de données non conteneur.

Un CDB évite la redondance de :

• Processus d'arrière­plan • Allocation

de mémoire
• Métadonnées Oracle dans plusieurs dictionnaires de données

Un CDB regroupant plusieurs applications a une instance, un ensemble de processus d'arrière­plan, une allocation SGA et un dictionnaire
de données dans le conteneur racine, commun à tous les PDB, chaque PDB conservant son propre dictionnaire de données d'application.

Lorsque des applications doivent être corrigées ou mises à niveau, l'opération de maintenance n'est effectuée qu'une seule fois sur la
CDB, et par conséquent, toutes les applications sont mises à jour en même temps.

Oracle Database 19c : Atelier d'administration 1 ­ 4


Machine Translated by Google

Base de données de conteneurs mutualisée Oracle : architecture


Serveur Exemple

Zone globale du système


PDBid2 PDBid3 PDBid4 PDBid2 PDBid4
Exemple
Structures de processus

Fichiers de Fichiers de
CDB
contrôle journalisation

Partages de base de données unique :


Fichiers de données
• Processus d'arrière­plan Racine CDB

• Mémoire partagée/processus

• Métadonnées Oracle

• Fichiers journaux de rétablissement

• Fichiers de contrôle

Fichiers de données Fichiers de données Fichiers de données


• Annuler l'espace de table
Semence APB VENTES APB APB RH

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez concevoir votre base de données comme une base de données de conteneur mutualisée (CDB). Un CDB, comme illustré dans
la diapositive, est composé d'un conteneur racine, d'une base de données enfichable de départ (PDB de départ) et d'une ou plusieurs bases
de données enfichables créées par l'utilisateur (simplement appelées PDB). Pour un utilisateur ou une application, les PDB apparaissent
logiquement comme des bases de données distinctes.

• Le conteneur racine, nommé CDB$ROOT, contient plusieurs fichiers de données. Le magasin de fichiers de données Oracle
les métadonnées fournies et les utilisateurs communs (utilisateurs connus dans chaque conteneur). Ces informations
sont partagées avec tous les PDB.

• Le PDB de départ, nommé PDB$SEED, est un modèle de PDB fourni par le système contenant plusieurs
fichiers de données que vous pouvez utiliser pour créer de nouveaux PDB.

• Le PDB créé par l'utilisateur contient plusieurs fichiers de données qui contiennent les données et le code requis pour
prendre en charge une application (par exemple, une application Ressources Humaines). Les utilisateurs interagissent uniquement
avec les PDB, et non avec la PDB de départ ou le conteneur racine. Par exemple, dans la diapositive, il y a deux PDB : un pour
l'organisation commerciale (appelé SALES) et un autre pour le service des ressources humaines (appelé HR). Vous pouvez créer
plusieurs PDB dans un CDB. L'un des objectifs de l'architecture mutualisée est que chaque PDB entretienne une relation un à un
avec une application.

Oracle Database 19c : Atelier d'administration 1 ­ 5


Machine Translated by Google

Configurations d'instance de base de données Oracle

Système non clusterisé Système en cluster

I1

I2 I1 I2 I3

D1

D2

Stockage local

Stockage partagé

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Chaque instance de base de données est associée à une seule base de données. S'il existe plusieurs bases de données
sur le même serveur, il existe une instance de base de données distincte pour chaque base de données. Une instance de
base de données ne peut pas être partagée. Une base de données Oracle Real Applications Cluster (RAC) possède
généralement plusieurs instances sur des serveurs distincts pour la même base de données partagée. Dans ce modèle, la
même base de données est associée à chaque instance RAC, ce qui répond à l'exigence qu'au plus une seule base de
données soit associée à une instance.

Oracle Database 19c : Atelier d'administration 1 ­ 6


Machine Translated by Google

Partage de base de données : introduction

• Une architecture sans partage pour l'évolutivité et la disponibilité • Des

données partitionnées horizontalement sur des bases de données

indépendantes • Une couche de données faiblement couplée sans clusterware

Serveur
Serveur A Serveur B Serveur C

Table partagée dans 3 bases de données

Table non partitionnée dans 1 base de données

Base de données partagée (SDB)

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le partitionnement est une architecture de niveau de données dans laquelle les données sont partitionnées horizontalement sur
des bases de données indépendantes. Chaque base de données dans une telle configuration est appelée une partition. Toutes les
partitions constituent une seule base de données logique, appelée base de données partitionnée ou SDB.

Le partitionnement horizontal consiste à diviser une table de base de données en plusieurs partitions afin que chaque partition contienne la
table avec les mêmes colonnes mais un sous­ensemble de lignes différent. Le diagramme de la diapositive montre un tableau non
partitionné sur la gauche avec les lignes représentées par différentes couleurs. Sur la droite, les mêmes données de table sont affichées
horizontalement réparties sur trois partitions ou bases de données indépendantes. Chaque partition de la table logique réside dans un fragment
spécifique. Nous appelons une telle table une table fragmentée.

Le partitionnement est une architecture de base de données sans partage car les partitions ne partagent pas les ressources physiques telles
que le processeur, la mémoire ou les périphériques de stockage. Les fragments sont également faiblement couplés en termes de logiciels ; ils
n'exécutent pas de clusterware.

Du point de vue d'un administrateur de base de données, un SDB se compose de plusieurs bases de données qui peuvent être gérées
collectivement ou individuellement. Cependant, du point de vue d'un développeur d'applications, un SDB ressemble à une base de données
unique : le nombre de fragments et la distribution des données entre eux sont complètement transparents pour les applications de base de
données.

Oracle Database 19c : Atelier d'administration 1 ­ 7


Machine Translated by Google

Serveur de base de données Oracle : diagramme d'architecture interactif

Accédez au diagramme d'architecture interactif sur la page


"Nouveautés" de la base de données Oracle d'Oracle Help Center.

[Link]

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 1 ­ 8


Machine Translated by Google

Résumé
Dans cette leçon, vous devriez avoir appris à :
• Lister les principaux composants architecturaux d'Oracle Database
• Décrire l'architecture mutualisée

• Décrire le partitionnement de la base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 1 ­ 9


Machine Translated by Google
Machine Translated by Google

Accéder à une base de données Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure de :

• Connectez­vous à une base de données Oracle

• Décrire les outils utilisés pour accéder à une base de données Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 2 ­ 2


Machine Translated by Google

Connexion à une instance de base de données Oracle

• Vous connectez les applications clientes à une base de données Oracle en vous connectant à son instance de base de
données, et non à sa base de données.

• Une session utilisateur est une entité logique qui représente l'état de la connexion de l'utilisateur actuel à l' instance de base de
données.

• Exemples de connexion à une instance Oracle Database :

– En utilisant l'authentification du système d'exploitation

$ sqlplus / comme sysdba

– En utilisant la syntaxe Easy Connect

SQL> connectez hr/hr@[Link]/[Link]

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Connexions par rapport aux sessions

Vous connectez les applications clientes aux instances de base de données (et non aux bases de données).

Une connexion est la voie de communication physique entre un processus client et une instance de base de données.

Une session utilisateur est une entité logique qui représente l'état de la connexion de l'utilisateur actuel à l'instance de
base de données. Une session dure du moment où l'utilisateur est authentifié par l'instance de base de données jusqu'au
moment où l'utilisateur se déconnecte ou quitte l'application cliente.

Connexion aux CDB à l'aide de l'authentification du système d'exploitation

En tant qu'administrateur de base de données, vous pouvez rapidement démarrer SQL*Plus et vous connecter à un
conteneur racine sans mot de passe à l'aide de la commande $ sqlplus / as sysdba. Cette commande vous permet de vous
connecter à la base de données en tant qu'utilisateur SYS avec le privilège SYSDBA. Certaines règles s'appliquent : vous
devez être sur la même machine que l'instance de base de données et l'utilisateur actuel du système d'exploitation doit être
membre du groupe privilégié OSDBA.

Connexion aux PDB à l'aide de la syntaxe Easy Connect Il existe plusieurs

manières de se connecter à une PDB ; cependant, l'utilisation de la syntaxe Easy Connect dans SQL*Plus est la plus
simple car elle est déjà activée par défaut sur le serveur de base de données et ne nécessite aucune configuration côté
client. Cette syntaxe prend uniquement en charge le protocole TCP (pas de SSL). Il ne prend pas en charge les options de
connexion avancées telles que le basculement au moment de la connexion, le routage source et l'équilibrage de charge.

Oracle Database 19c : Atelier d'administration 2 ­ 3


Machine Translated by Google

Les chaînes de connexion Easy Connect prennent la forme


suivante : SQL> CONNECT <username>/<password>@<listener hostname>:<listener port>/<service
name> Par exemple, l'utilisateur SYSTEM demande une connexion au service de base de données
nommé db . [Link]. L'écouteur est situé sur une machine nommée [Link] et
écoute sur le port 1521.

SQL> CONNECT hr/hr@[Link]/[Link]

Si vous démarrez à partir d'une invite de commande, vous pouvez démarrer SQL*Plus et vous connecter en même temps :

$ sqlplus hr/hr@[Link]/[Link]

Le port d'écoute et le nom du service sont facultatifs. Si le port d'écoute n'est pas fourni, Oracle Net suppose
que le port par défaut 1521 est utilisé. Si le nom du service n'est pas fourni, Oracle Net suppose que le nom du
service de base de données et le nom d'hôte fournis dans la chaîne de connexion sont identiques.
Par exemple, en supposant que l'écouteur utilise TCP pour écouter sur le port 1521, la chaîne de connexion ci­dessus
peut être raccourcie.

Par exemple, une chaîne de connexion comme


celle­ci : SQL> CONNECT hr/hr@[Link]/[Link]
... peut être abrégé en :

SQL> CONNECT hr/hr@ [Link]

Déconnexion de l'instance de base de données Utilisez la


commande EXIT pour quitter SQL*Plus, vous déconnecter de l'instance de base de données et mettre fin à toutes les
sessions dans la mémoire de l'instance de base de données.

Oracle Database 19c : Atelier d'administration 2 ­ 4


Machine Translated by Google

Outils de base de données Oracle

• Les outils Oracle Database ont chacun leur propre objectif et certaines opérations peuvent être
effectuée dans plus d'un outil. • Le
choix d'un outil pour une tâche se résume souvent à une préférence personnelle.
• Les outils incluent :
– SQL*Plus

– Développeur SQL
– Ligne de commande du développeur SQL (SQLcl)
– Assistant de configuration de base de données (DBCA)
– Base de données Oracle Enterprise Manager Express (EM Express)
– Oracle Enterprise Manager Cloud Control
– Base de données Oracle Management Cloud Express (OMX)
– Autres tels que Listener Control, Oracle Net Configuration Assistant, Oracle Net
Manager, ADR Command Interpreter, SQL*Loader, Oracle Data Pump Import et
Exportation de la pompe de données Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database comprend les outils suivants :


• SQL*Plus : utilisez cet outil de ligne de commande pour accéder à une base de données.

• Développeur SQL : utilisez cet outil d'interface utilisateur graphique (GUI) pour accéder à une base de données et
effectuer des actions DBA. •

Ligne de commande du développeur SQL (SQLcl) : utilisez cet outil pour accéder à une base de données. •

Assistant de configuration de base de données (DBCA) : utilisez cet outil graphique pour créer des bases de données. Pour utiliser
DBCA, vous devez être sur le serveur pour lancer l'outil depuis le système d'exploitation hébergeant la CDB.

• Oracle Enterprise Manager Database Express (EM Express) : utilisez cet outil graphique pour effectuer
tâches d'administration de base de données sur une instance de base de données à la fois.

• Oracle Enterprise Manager Cloud Control (EM Cloud Control) : utilisez cet outil graphique pour
effectuer des tâches d'administration de base de données sur plusieurs cibles (instances de base de données, écouteurs,
etc.) en même temps.

• Oracle Management Cloud Database Express (OMX) : utilisez cette interface graphique pour effectuer des tâches d'administration
de base de données. OMX remplace EM Express avec un sous­ensemble de fonctionnalités dans la version initiale.

• Autres : de nombreux utilitaires spécialisés sont utilisés pour faciliter l'administration de la base de données. Ceux utilisés dans ce
cours peuvent inclure Listener Control (lsnrctl), Oracle Net Configuration Assistant (netca), Oracle Net Manager (netmgr),
ADR Command Interpreter (adcri), SQL*Loader (sqlldr), Oracle Data Pump Import (impdp) , et Oracle Data Pump Export
(expdp). Cette liste ne couvre pas tous les utilitaires disponibles.

Oracle Database 19c : Atelier d'administration 2 ­ 5


Machine Translated by Google

Choix d'outils de base de données

EM EM Oracle
SQL
Sujet SQL*Plus SQLcl DBCA Base de données Nuage Universel
Développeur Contrôle Installateur
Exprimer

Oui
Créer un Oui (PDB Oui (PDB
Oui Oui Oui (PDB Oui
CDB ou PDB uniquement) uniquement)
uniquement)

Explorer
l'instance,
Oui Oui Oui Non Oui Oui Non
l'architecture et
les PDB de CDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le tableau vous montre en un coup d'œil quel outil peut être utilisé pour effectuer quelles tâches.

Oracle Database 19c : Atelier d'administration 2 ­ 6


Machine Translated by Google

SQL*Plus

• Exemple 1 : à partir d'une ligne de commande, vous pouvez démarrer SQL*Plus, vous connecter et montrer à l'utilisateur
sous lequel vous êtes connecté :

$ sqlplus / comme sysdba


...
SQL> afficher l'utilisateur
L'UTILISATEUR est "SYS"

• Exemple 2 : appelez un script SQL depuis la ligne de commande :

$ sqlplus hr/hr@HRPDB @[Link]

Nom de fichier
Nom d'utilisateur et
mot de passe Identifiant de connexion

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

SQL*Plus

SQL*Plus est un programme de ligne de commande que vous utilisez pour soumettre des instructions SQL et PL/SQL à une base
de données Oracle. SQL*Plus est installé avec Oracle Database et se trouve dans le répertoire $ORACLE_HOME/bin. Vous pouvez
démarrer SQL*Plus à partir de la ligne de commande ou du menu Démarrer sur un client Windows. Utilisez l'interface de ligne de
commande SQL*Plus pour exécuter les commandes SQL*Plus, SQL et PL/SQL afin d'effectuer les opérations suivantes :

• Entrez, modifiez, exécutez, stockez, récupérez et enregistrez des commandes SQL et des blocs PL/SQL

Formater, calculer, stocker et imprimer les résultats des requêtes
• Répertorier les définitions de colonne pour

n'importe quelle table • Envoyer des messages et accepter les réponses d'un utilisateur
final • Effectuer l'administration de la base de données

Appel d'un script SQL depuis SQL*Plus

Lors de l'appel d'un fichier de script SQL depuis SQL*Plus, vous disposez des options suivantes :

• Option 1 : appelez le script à partir de la ligne de commande lorsque vous appelez SQL*Plus pour la première fois :
$ sqlplus hr/hr@HRPDB @[Link]
• Option 2 : appelez le script depuis une session SQL*Plus simplement en utilisant l'opérateur « @ » :
SQL> @[Link]
Lorsqu'un script est enregistré à partir de SQL*Plus à l'aide de la commande SAVE, l'extension .sql est automatiquement
fournie. Vous pouvez alors exécuter le script sans fournir l'extension au moment de l'exécution, par exemple : SQL> @script

Oracle Database 19c : Atelier d'administration 2 ­ 7


Machine Translated by Google

Appel de SQL*Plus à partir d'un script shell

Vous pouvez appeler SQL*Plus à partir d'un script shell ou d'un fichier BAT en appelant sqlplus et en utilisant la syntaxe de
script du système d'exploitation pour transmettre les paramètres. Par exemple, supposons que vous ayez le script shell suivant :
# Nom de ce fichier : batch_sqlplus.sh

# Compter les employés et donner une augmentation.

sqlplus h/h <<EOF

sélectionnez count(*) parmi les employés ;

mise à jour des employés set salaire = salaire*1.10 ;

commettre;

arrêter
EOF

Vous pouvez appeler ce script shell depuis la ligne de commande :

$ ./batch_sqlplus.sh
Pour plus d'informations

Pour savoir comment démarrer SQL*Plus, voir « Démarrage de SQL Plus » dans SQL*Plus Users Guide and Reference.

Oracle Database 19c : Atelier d'administration 2 ­ 8


Machine Translated by Google

Développeur SQL Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle SQL Developer (SQL Developer) est un outil graphique pour les développeurs de bases de données et les DBA
et s'installe avec Oracle Database. Vous pouvez choisir d'afficher plusieurs volets différents dans l'interface SQL
Developer, comme un volet Connexions et DBA. Vous utilisez le premier pour définir des connexions aux bases de
données et utilisez le second pour effectuer des opérations DBA. Vous ne devez ajouter que les connexions pour lesquelles
l'utilisateur de la base de données associée dispose de privilèges DBA ou au moins de privilèges pour les opérations de
navigateur DBA souhaitées sur la base de données spécifiée.

Certaines opérations de type développeur que vous pouvez effectuer avec SQL Developer incluent :
• Développer des scripts dans les langages SQL et PL/SQL • Parcourir des objets de base de
données • Exécuter des instructions SQL et des scripts SQL Modifier et déboguer des instructions
PL/SQL

Oracle Database 19c : Atelier d'administration 2 ­ 9


Machine Translated by Google

Développeur Oracle SQL : Connexions

Effectuez des opérations DBA dans le navigateur DBA à l'aide de


connexions DBA :

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle SQL Developer est un outil qui permet la navigation graphique autonome et le développement d'objets de schéma de
base de données, ainsi que l'exécution de tâches administratives de base de données.
SQL Developer permet aux utilisateurs disposant de privilèges d'administrateur de base de données d'afficher et de
modifier certaines informations relatives aux DBA et d'effectuer des opérations DBA. Pour effectuer des opérations DBA, utilisez le
navigateur DBA, qui est similaire au navigateur Connexions en ce sens qu'il comporte des nœuds pour toutes les connexions de
base de données définies. Si le navigateur DBA n'est pas visible, sélectionnez Affichage, puis DBA. Vous ne devez ajouter que les
connexions pour lesquelles l'utilisateur de la base de données associée dispose de privilèges DBA, ou au moins de privilèges pour
les opérations de navigateur DBA souhaitées sur la base de données spécifiée.

Oracle Database 19c : Atelier d'administration 2 ­ 10


Machine Translated by Google

Développeur Oracle SQL : Actions DBA


Utilisation des fonctionnalités DBA via le navigateur DBA

Exécution d'actions DBA

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les opérations DBA pouvant être effectuées sont les suivantes :

• Démarrage/arrêt de la base de données •

Configuration de la base de données : paramètres d'initialisation, gestion automatique des annulations,


Propriétés de la base de données, Points de restauration, Afficher l'utilisation des fonctionnalités de la base de données

• Affichage de l'état de la base de données

• Tâches d'exportation et d'importation de la pompe de

données • Actions de sauvegarde/récupération RMAN •

Configuration du gestionnaire de ressources • Paramètre

du planificateur

Configuration de la sécurité comme les paramètres d'audit, les profils, les rôles et les utilisateurs

• Configuration du stockage pour les journaux d'archivage, les fichiers de contrôle, les fichiers de données, les groupes de journaux redo, les tablespaces,
et groupes d'espaces de table temporaires

Oracle Database 19c : Atelier d'administration 2 ­ 11


Machine Translated by Google

Assistant de configuration de base de données (DBCA)

• DBCA est un outil de création et de configuration d'une base de données


Oracle. • DBCA a deux modes :
– Interactif : Fournit une interface graphique et un flux de travail guidé
– Non interactif/silencieux : utilise des arguments de ligne de commande, un fichier de réponse ou les deux

• DBCA peut être lancé par Oracle Universal Installer ou invoqué après l'installation du logiciel.
installée.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

L'assistant de configuration de base de données (DBCA) est un outil que vous pouvez utiliser pour effectuer les opérations suivantes :

• Créer des bases de données (CDB et non­CDB)

• Configurer les bases de données existantes

• Supprimer des bases de données

• Gérer les modèles • Gérer les

bases de données enfichables • Gérer les instances

de base de données Oracle RAC DBCA peut être lancé par Oracle

Universal Installer (OUI), selon le type d'installation que vous sélectionnez. Vous pouvez également lancer DBCA en tant qu'outil autonome à tout
moment après l'installation d'Oracle Database.

Reportez­vous au Guide de l'administrateur de la base de données Oracle et à Oracle Database 2 Day DBA pour obtenir des
informations détaillées.

Oracle Database 19c : Atelier d'administration 2 ­ 12


Machine Translated by Google

Oracle Enterprise Manager Database Express

Console Auditeur

partagé
Serveur Répartiteur
Obtenir le rapport Commun
Rapports
Serveur Web Oracle Cadre
Demande
Base de données Oracle
Servlet EM Express
Exemple
• Authentification
• Gestion de session •
Compression • Mise en
cache Gestionnaire de fichiers
Obtenir des fichiers shell

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Enterprise Manager Database Express Oracle Enterprise

Manager Database Express (EM Express) est un outil léger que vous pouvez utiliser pour gérer une CDB et toutes ses PDB (à
l'exception de la PDB de départ). Il fournit une solution de gestion basée sur un navigateur prête à l'emploi, la surveillance des
performances, la gestion de la configuration, l'administration, les diagnostics et le réglage.

Architecture

EM Express utilise une console Web, communiquant avec le serveur Web intégré disponible en XML
BD.

Au fur et à mesure que les demandes de la console sont traitées, le servlet EM Express gère les demandes, y compris
l'authentification, la gestion de session, la compression et la mise en cache. Le servlet transmet les demandes de rapports au
Common Reporting Framework et les actions nécessitant des fichiers shell au gestionnaire de fichiers.
Cette architecture est illustrée dans la diapositive.

EM Express est disponible uniquement lorsque la base de données est ouverte. Cela signifie qu'Enterprise Manager
Database Express ne peut pas être utilisé pour démarrer l'instance de base de données. D'autres opérations nécessitant que la
base de données change d'état, telles que l'activation ou la désactivation du mode ARCHIVELOG, ne sont pas non plus
disponibles dans EM Express.

EM Express est configurable d'un simple clic dans Database Configuration Assistant (DBCA).

EM Express est un servlet construit sur Oracle XML DB. Le portefeuille par défaut Oracle XML DB a un certificat auto­signé, et
certains navigateurs existants considèrent les certificats auto­signés comme non fiables car ils ne sont pas signés par une autorité
de certification (autorité de certification) de confiance. Cependant, le certificat auto­signé est toujours sécurisé, car il garantit que
le trafic est chiffré entre le serveur Oracle XML DB et le client (navigateur). Par conséquent, saisissez une exception de sécurité
pour l'URL EM Express dans votre navigateur Web.

Oracle Database 19c : Atelier d'administration 2 ­ 13


Machine Translated by Google

Exigences

Les éléments suivants sont requis pour EM Express :


• Les composants XMLDB doivent être installés sur le serveur Oracle Database. Toutes les bases de données Oracle
de la version 12.1.0 ou supérieure ont XMLDB installé.
• Le navigateur Web doit avoir le plug­in Flash installé car EM Express utilise
Fichiers Shockwave Flash (SWF).

Démarrage d'EM Express pour les CDB et les PDB

EM Express utilise un port HTTPS global pour se connecter et gérer les non­CDB, les CDB et les PDB.
À partir d'Oracle Database 12c Release 2, vous pouvez définir un port global qui permet à Enterprise Manager
Database Express d'accéder à la CDB et à toutes les PDB sur ce port unique.

Oracle Database 19c : Atelier d'administration 2 ­ 14


Machine Translated by Google

Fonctionnalités d'Enterprise Manager Cloud Control 13c

Prêt pour l'entreprise


Cadre
Nuage unifié
Applications
Gestion:
Gestion Nuage hybride

Intergiciel Rétrofacturation et
Gestion Planification des capacités

Exadata et
Base de données
Exalogique
Gestion
Gestion

Qualité des applications Configuration


Gestion Gestion
Approvisionnement et
Patcher

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Enterprise Manager Cloud Control (EM Cloud Control) est la plate­forme de gestion sur site d'Oracle, offrant un
emplacement unique pour gérer tous vos déploiements Oracle, qu'ils soient dans vos centres de données ou dans Oracle Cloud.
Grâce à une intégration approfondie avec la pile de produits d'Oracle, EM Cloud Control fournit une prise en charge de la gestion
et de l'automatisation pour les applications, les bases de données, les intergiciels, le matériel et les systèmes d'ingénierie Oracle.

Les principaux objectifs de la conception d'Enterprise Manager Cloud Control 13c incluent :

Fournir une solution complète de gestion cloud intégrée pour une combinaison de configurations cloud sur
site et de solutions Oracle Cloud Services (Hybrid Cloud)
• Offrir une gestion améliorée des systèmes d'ingénierie
• Amélioration de la gestion des intergiciels et des bases de données

Maintenir une plate­forme robuste à l'échelle du cloud

Enterprise Manager Cloud Control 13c inclut les fonctionnalités suivantes :

• Structure prête pour l'entreprise : fournit une architecture modulaire et extensible,


entités pouvant être mises à jour, gestion centralisée des incidents, gestion des diagnostics en contexte, ainsi que
sous­systèmes flexibles de planification des tâches et de sécurité

• Gestion du cloud : fournit une gestion complète du cycle de vie du cloud pour les clouds sur site et les services PaaS sur
Oracle Cloud

• Rétrofacturation et planification de la capacité : fournit une rétrofacturation en fonction des types de cible et des utilisations
Entrepôt de référentiel de charge de travail automatique (AWR) pour consolider les rapports AWR de plusieurs bases
de données à travers l'entreprise

Oracle Database 19c : Atelier d'administration 2 ­ 15


Machine Translated by Google

• Exadata et Exalogic Management : Fournit une vue intégrée du matériel et


logiciel dans une machine Exadata et gestion complète du cycle de vie des systèmes Exalogic • Configuration
et gestion : Fournit un ensemble intégré d'outils, la découverte sans agent, l'intégration avec My Oracle Support et
des capacités de configuration personnalisées • Provisioning et Patching : Fournit des profils pour le
provisionnement configurations, procédures de déploiement définies par l'utilisateur et une bibliothèque de logiciels
intégrée avec des capacités d'auto­mise à jour

• Gestion des applications et de la qualité : fournit la relecture de la base de données, le serveur d'applications
Relecture, test d'application réel intégré au masquage des données et gestion de la base de
données de test qui inclut le modèle de données d'application
• Gestion de la base de données : assure la gestion des systèmes de base de données Oracle, y compris
gestion des performances et gestion du cycle de vie des modifications •
Gestion du middleware : Fournit une gestion complète des systèmes middleware • Gestion des
applications : Fournit la gestion des applications Fusion

Oracle Database 19c : Atelier d'administration 2 ­ 16


Machine Translated by Google

Présentation du composant Oracle Enterprise Manager

Gestion d'Oracle Plug­in spécifique


Agent à la cible

Géré
Hôtes

Gestion d'Oracle
Service
Contrôle du nuage
Console

Gestion d'Oracle
Dépôt

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Enterprise Manager Cloud Control est composé de quatre composants principaux, comme illustré dans la
diapositive :
• Référentiel de gestion Oracle (OMR)
• Service de gestion Oracle (OMS)
• Oracle Management Agent (OMA ou agent) avec des plug­ins spécifiques à la cible
• Console de contrôle cloud

L'agent de gestion Oracle s'exécute sur les hôtes, collecte des données de mesure sur ces environnements hôtes et
utilise des plug­ins pour surveiller la disponibilité, la configuration et les performances et pour gérer les cibles exécutées
sur l'hôte. Les agents communiquent avec Oracle Management Service pour télécharger les données de métrique
collectées par eux et leurs plug­ins. À son tour, l'OMS stocke les données qu'il collecte dans le référentiel de gestion
Oracle où il est possible d'y accéder par l'OMS pour des rapports et une surveillance automatisés et manuels. L'OMS
communique également avec les agents pour orchestrer la gestion de leurs cibles surveillées. En plus de coordonner
les agents, l'OMS exécute les pages Web de la console Cloud Control qui sont utilisées par les administrateurs et les
utilisateurs pour signaler, surveiller et gérer l'environnement informatique visible par Cloud Control via les agents et
leurs plug­ins.

Oracle Database 19c : Atelier d'administration 2 ­ 17


Machine Translated by Google

Panneau de verre unique pour la gestion d'entreprise

Pratiques courantes de gestion du cloud

Gestion de la qualité de Gestion du cycle de vie


service et du cloud

Gouvernance des Sauvegarde dans le cloud


données et contrôles de conformité

Portabilité de la charge de travail Catalogue libre­


et clonage bidirectionnel sécurisé service unifié

Réseau Stockage Machines virtuelles/serveurs Bases de données Applications intergiciels

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Un outil de gestion pour les superviser tous Enterprise

Manager Cloud Control 13c a des capacités pour gérer intelligemment les services traditionnels et basés sur le cloud,
atténuant la nécessité d'utiliser plusieurs outils de gestion et de surveillance pour ce qui était auparavant deux environnements
disparates.
• Solution complète pour la gestion de la pile Oracle, y compris les systèmes d'ingénierie, avec intégration en temps réel
de la base de connaissances d'Oracle avec les environnements des clients
• Gestion et automatisation des performances de bout en bout
• Fonctionnalité Ops Center intégrée pour surveiller et gérer à la fois le matériel et les logiciels à partir d'une interface
unique
• Pratiques de gestion courantes applicables aux cibles sur site et aux cibles Oracle Cloud

Gestion de la qualité de service (QoS) pour assurer la livraison du meilleur service possible aux clients
internes et externes

Gestion du cycle de vie et du cloud pour un approvisionnement et des correctifs simplifiés des applications et des
plates­formes
• Gouvernance des données et contrôles de conformité pour se conformer aux exigences internes et externes
normes et exigences

Possibilité de sauvegarder dans le cloud pour tirer parti de la capacité d'Oracle Cloud
• Option de cloud hybride pour déplacer les charges de travail et cloner les cibles entre sur site et Oracle
Nuage

Oracle Database 19c : Atelier d'administration 2 ­ 18


Machine Translated by Google

Gestion de la base de données Oracle Enterprise Manager

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

La gestion de base de données implique la surveillance, l'administration et la maintenance des bases de données et
des groupes de bases de données dans votre entreprise et avec Enterprise Manager, vous recevez :

Un ensemble complet de fonctionnalités intégrées pour la gestion d'Oracle Database, qui vous permet de :

• Effectuer des tâches quotidiennes et exécuter des tâches répétitives


• Détecter les problèmes et utiliser les workflows de résolution guidée disponibles

• Évolutivité qui vous permet de gérer une seule base de données ou des milliers d'instances de base de données. • Un

produit de gestion intuitif qui domine l'industrie en termes de facilité de déploiement et d'utilisation.

En utilisant Oracle Enterprise Manager Cloud Control, vous pouvez garder vos bases de données Oracle disponibles
et fonctionner efficacement.

Vous pouvez utiliser les outils d'administration disponibles pour gérer les objets de base de données et lancer des
opérations de base de données dans une base de données Oracle.

La liste suivante répertorie certaines des tâches d'administration de base de données que vous pouvez effectuer : •

Allouer de l'espace de stockage système et planifier les futurs besoins en espace de stockage.
• Utilisez Oracle Scheduler pour contrôler quand et où les différentes tâches se produisent dans la base de données
environnement.

• Migrez votre stockage de base de données pour utiliser Oracle Automatic Storage Management.

Oracle Database 19c : Atelier d'administration 2 ­ 19


Machine Translated by Google

Page Détails de la base de données Oracle Enterprise Manager (suite) • Utilisez


le gestionnaire de ressources de la base de données pour contrôler la distribution des ressources entre
les différentes sessions en contrôlant la planification d'exécution dans la base de données.
• Créer et gérer des objets de base de données primaires tels que des tables, des vues et des index.
• .Effectuer des tâches d'administration pour Oracle XML DB, telles que l'affichage ou l'édition
paramètres du fichier de configuration Oracle XML DB.
• Créer, gérer et exécuter des actions spécifiques sur des vues matérialisées, qui sont des objets de
schéma pouvant être utilisés pour résumer, calculer, répliquer et distribuer des données

Oracle Database 19c : Atelier d'administration 2 ­ 20


Machine Translated by Google

Résumé

Dans cette leçon, vous devez avoir appris à : • Se connecter


à une base de données Oracle

• Décrire les outils utilisés pour accéder à une base de données Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 2 ­ 21


Machine Translated by Google
Machine Translated by Google

3
Création d'une base de données Oracle par
Utilisation de DBCA

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure de :

• Créer une base de données à l'aide de l'assistant de configuration de base de données (DBCA) •

Générer des scripts de création de base de données à l'aide de DBCA

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 3 ­ 2


Machine Translated by Google

Planification de la base de données

En tant que DBA, vous devez prévoir :

• La structure logique de stockage de la base de données et son implémentation physique :

– Quel type de stockage est utilisé ?


– De combien de fichiers de données aurez­vous besoin ? (Plan de croissance)

– Combien de tablespaces allez­vous utiliser ?


– Quels types d'informations seront stockées ?
– Existe­t­il des exigences de stockage particulières en raison du type ou de la taille ? •

Conception globale de la base de données • Stratégie de sauvegarde de la base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Il est important de planifier comment la structure de stockage logique de la base de données affectera les performances du système et les diverses
opérations de gestion de la base de données. Par exemple, avant de créer des tablespaces pour votre base de données, vous devez savoir combien
de fichiers de données constitueront le tablespace, quel type d'informations seront stockées dans chaque tablespace et où les fichiers de données
seront physiquement stockés. Des informations telles que la disponibilité du stockage en réseau (NAS) et la bande passante du réseau de stockage
privé sont importantes. Si des réseaux de stockage (SAN) doivent être utilisés, il est utile de savoir comment les volumes logiques sont configurés et
la taille de bande.

Lors de la planification du stockage logique global de la structure de la base de données, tenez compte des effets que cette structure aura lors de
la création et de l'exécution de la base de données. Vous pouvez avoir des objets de base de données qui ont des exigences de stockage
particulières en raison de leur type ou de leur taille.

Dans les environnements de bases de données distribuées, cette étape de planification est extrêmement importante. L'emplacement
physique des données fréquemment consultées affecte considérablement les performances des applications.

Au cours de la phase de planification, développez une stratégie de sauvegarde pour la base de données. Vous pouvez modifier la structure
de stockage logique ou la conception de la base de données pour améliorer l'efficacité de la sauvegarde. Les stratégies de sauvegarde
sont présentées dans une leçon ultérieure.

Oracle Database 19c : Atelier d'administration 3 ­ 3


Machine Translated by Google

Choisir un modèle de base de données

• Traitement à usage général ou transactionnel :


– Système de traitement des transactions en ligne (OLTP), par exemple, un système de facturation au détail pour
une maison de logiciels ou une pépinière

• Personnalisé :
– Base de données polyvalente (peut­être une fonctionnalité combinée d'OLTP et d'entrepôt de données)

• Entrepôt de données :
– Données de recherche et de marketing
– Paiements d'impôts étatiques ou fédéraux
– Licences professionnelles (médecins, infirmières, etc.)

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Différents types de bases de données ont leurs propres exigences spécifiques en matière d'instance et de stockage. Votre logiciel
de base de données Oracle inclut des modèles pour la création de ces différents types de bases de données.
Les caractéristiques de ces exemples sont les suivantes : • Usage

général : pour une utilisation à des fins générales ou de traitement des transactions, comme travailler avec des transactions et les
stocker pendant une durée moyenne.

• Personnalisé : pour les bases de données personnalisées qui ne correspondent pas à l'objectif général ou à l'entrepôt de données
modèle

• Entrepôt de données : pour stocker des données pendant de longues périodes et les récupérer lors d'opérations de lecture

Oracle Database 19c : Atelier d'administration 3 ­ 4


Machine Translated by Google

Choisir le jeu de caractères approprié

• Le jeu de caractères est choisi au moment de la création de la base de données. Choisissez le jeu de
caractères qui répond le mieux aux besoins actuels et futurs de votre entreprise, car il peut être difficile
de modifier les jeux de caractères ultérieurement.
• La base de données Oracle prend en charge différentes classes de schémas de codage de caractères :

– Jeux de caractères à un octet


— 7 bits
— 8 bits
– Jeux de caractères multi­octets, y compris Unicode
• En général, Unicode est recommandé car il s'agit du jeu de caractères le plus flexible.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Lorsque les systèmes informatiques traitent des caractères, ils utilisent des codes numériques au lieu de la
représentation graphique du caractère. Un jeu de caractères codés associe des codes numériques à des caractères
qu'un ordinateur ou un terminal peut afficher et recevoir. Différents jeux de caractères prennent en charge différents
répertoires de caractères. Étant donné que les jeux de caractères sont généralement basés sur un script d'écriture
particulier, ils peuvent prendre en charge plusieurs langues. Cependant, les jeux de caractères basés sur des scripts sont
limités en ce sens qu'ils sont limités à des groupes de langues basés sur des scripts similaires. Les jeux de caractères
universels englobent la plupart des principaux scripts du monde moderne et offrent une solution plus utile à la prise en
charge multilingue. Pour plus d'informations sur les normes Unicode, consultez le site Web à l'adresse http:[Link].

La base de données Oracle prend en charge trois classes de schémas de codage : un octet, plusieurs octets à
largeur variable et universel. Choisissez le jeu de caractères correct qui répond le mieux aux besoins actuels et
futurs de votre entreprise, car il peut être difficile de modifier les jeux de caractères ultérieurement. Pour de meilleures
performances, choisissez un jeu de caractères qui évite la conversion du jeu de caractères et utilise le codage le plus
efficace pour les langues souhaitées. Les jeux de caractères à un octet offrent de meilleures performances que les jeux
de caractères multi­octets, et ils sont également les plus efficaces en termes d'espace requis.
Cependant, les jeux de caractères à un octet limitent le nombre de langues que vous pouvez prendre en charge. Pour
choisir votre jeu de caractères de base de données correct, évaluez vos exigences commerciales actuelles et futures,
ainsi que vos exigences techniques (par exemple, les normes XML et Java nécessitent Unicode). En général, Oracle
recommande l'utilisation d'Unicode pour toutes les nouvelles bases de données, car il s'agit du jeu de caractères le plus
flexible et évite les conversions futures.

Jeux de caractères à un octet Dans

un jeu de caractères à un octet, chaque caractère occupe un octet. Les schémas de codage 7 bits à un octet peuvent définir
jusqu'à 128 (27) caractères ; Les schémas de codage 8 bits à un octet peuvent définir jusqu'à 256 (28) caractères.

Oracle Database 19c : Atelier d'administration 3 ­ 5


Machine Translated by Google

Exemples de jeu de caractères 7 bits de


• schémas à un octet :
• Code américain standard pour l'échange d'informations (ASCII) américain 7 bits
(US7ASCII)
• Jeu de caractères 8 bits :

Organisation internationale de normalisation (ISO) 8859­1 Europe occidentale
(WE8ISO8859P1)
• DEC 8 bits Europe occidentale (WE8DEC) • Code
d'échange décimal codé binaire étendu (EBCDIC) Page 1144 8­
peu italien (I8EBCDIC1144)
Jeux de caractères multi­
octets Un jeu de caractères multi­octets de largeur variable est représenté par un ou plusieurs octets par caractère.
Les jeux de caractères multioctets sont couramment utilisés pour la prise en charge des langues asiatiques.
Certains schémas de codage multi­octets utilisent la valeur du bit le plus significatif pour indiquer si un octet
représente un seul octet ou fait partie d'une série d'octets représentant un caractère. Cependant, d'autres schémas de
codage de caractères différencient les caractères à un octet des caractères à plusieurs octets. Un code de commande de
décalage, envoyé par un dispositif, indique que tous les octets successifs sont des caractères à deux octets jusqu'à ce
qu'un code de décalage soit rencontré. Les schémas de codage sensibles au décalage sont principalement utilisés sur les
plates­formes IBM.
Unicode est un jeu de caractères codé universel qui permet de stocker des informations de n'importe quelle langue à l'aide
d'un seul jeu de caractères. Unicode fournit une valeur de code unique pour chaque caractère, indépendamment de la
plate­forme, du programme ou de la langue.
La norme Unicode a été adoptée par de nombreux fournisseurs de logiciels et de matériel. De nombreux systèmes
d'exploitation et navigateurs prennent désormais en charge Unicode. Unicode est requis par des normes telles que XML,
Java, JavaScript, LDAP et WML. Il est également synchronisé avec la norme ISO/IEC 10646.

Exemples de schémas multioctets à largeur variable



Shift­JIS Japonais 16 bits (JA16SJIS) • Page de
codes MS Windows 950 avec jeu de caractères supplémentaires Hong Kong HKSCS­2001
(ZHT16HKSCS)
• Jeu de caractères universel Unicode 4.0 UTF­8 (AL32UTF8) : type d'encodage à largeur variable
et également un sur­ensemble strict d'ASCII
• Unicode (ALl16UTF16 ­ un encodage 16 bits d'Unicode utilisé à la fois par Microsoft
Windows 2000 et Windows XP

Oracle Database 19c : Atelier d'administration 3 ­ 6


Machine Translated by Google

Comment les jeux de caractères sont­ils utilisés ?

• Oracle Net compare le paramètre client NLS_LANG au jeu de caractères sur le serveur.

• Si nécessaire, la conversion se produit automatiquement et de manière transparente.

NLS_LANG

Réseau Oracle

Client Serveur

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le paramètre NLS_LANG définit le schéma de codage des caractères d'un terminal client. Différents clients peuvent utiliser
différents schémas de codage. Les données transmises entre le client et le serveur sont converties automatiquement entre les
deux schémas de codage. Le schéma de codage de la base de données doit être un sur­ensemble, ou équivalent, de tous les
schémas de codage des clients. La conversion est transparente pour l'application cliente.

Lorsque le jeu de caractères de la base de données et le jeu de caractères du client sont identiques, la base de données
suppose que les données envoyées ou reçues sont du même jeu de caractères, de sorte qu'aucune validation ou conversion
n'est effectuée.

La conversion du jeu de caractères peut être nécessaire dans un environnement client/serveur, si une application client réside
sur une plate­forme différente de celle du serveur et si les plates­formes n'utilisent pas les mêmes schémas de codage de
caractères. Les données de caractères transmises entre le client et le serveur doivent être converties entre les deux schémas
de codage. La conversion des caractères se produit automatiquement et de manière transparente via Oracle Net.

Oracle Database 19c : Atelier d'administration 3 ­ 7


Machine Translated by Google

Définition correcte de NLS_LANG sur le client

• Aucune conversion ne se produit car elle ne semble pas nécessaire.

• Des données invalides sont saisies dans la base de données.

NLS_LANG=AL32UTF8

Réseau Oracle

Client Serveur

Windows anglais Jeu de caractères de la base de données :

Page de code : WE8MSWIN1252 AL32UTF8

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les données non valides entrent généralement dans une base de données lorsque le paramètre NLS_LANG n'est pas défini correctement sur le client.
La valeur NLS_LANG doit refléter le codage des données entrantes.

Lorsque le paramètre NLS_LANG est défini correctement, la base de données peut convertir automatiquement les données entrantes du
système d'exploitation client.

Lorsque le paramètre NLS_LANG n'est pas défini correctement, les données entrant dans la base de données ne sont pas converties
correctement.

Par exemple, supposons que le jeu de caractères de la base de données est AL32UTF8, que le client est un système d'exploitation
Windows anglais (page de codes : WE8MSWIN1252) et que le paramètre NLS_LANG sur le client est AL32UTF8. Les données entrant
dans la base de données sont codées en WE8MSWIN1252 et ne sont pas converties en données AL32UTF8 car le paramètre NLS_LANG
sur le client correspond au jeu de caractères de la base de données.
Le serveur de base de données Oracle suppose qu'aucune conversion n'est nécessaire et des données non valides sont entrées dans la
base de données.

Oracle Database 19c : Atelier d'administration 3 ­ 8


Machine Translated by Google

Utilisation de l'assistant de configuration de base de données

Tâche Description

Créer une base de données Créer et configurer une nouvelle base de données

Créer et gérer des modèles de conception de base de données Créer un fichier XML contenant les informations requises pour créer une
nouvelle base de données

Supprimer une base de données Arrêtez l'instance de base de données et supprimez tous les fichiers
de base de données

Gérer des bases de données enfichables dans une architecture multi­ Créer, supprimer et déconnecter des PDB
tenant

Modifier la configuration d'une base de données ou d'une PDB Configurer les options et les paramètres de sécurité

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database Configuration Assistant (DBCA) est un outil permettant de créer et de configurer une base de données Oracle.
DBCA peut être lancé par Oracle Universal Installer (OUI), selon le type d'installation que vous sélectionnez. Vous pouvez également
lancer DBCA en tant qu'outil autonome à tout moment après l'installation d'Oracle Database.

Vous pouvez exécuter DBCA en mode interactif ou en mode non interactif/silencieux. Le mode interactif fournit une interface
graphique et un flux de travail guidé pour créer et configurer une base de données.
Vous pouvez utiliser DBCA pour créer une base de données à partir d'un modèle fourni par Oracle ou d'un modèle que vous créez.
Un modèle DBCA est un fichier XML qui contient les informations requises pour créer une base de données.
Sélectionnez le modèle adapté au type de charge de travail que votre base de données prendra en charge. Si vous ne savez pas
lequel choisir, utilisez le modèle "Traitement des transactions à usage général OU en ligne". Vous pouvez également créer des modèles
personnalisés pour répondre aux exigences spécifiques de votre charge de travail.
Les informations contenues dans les modèles incluent les options de base de données, les paramètres d'initialisation et les attributs de stockage
(pour les fichiers de données, les espaces de table, les fichiers de contrôle et les fichiers de journalisation en ligne).

Les modèles peuvent être utilisés comme des scripts, mais ils sont plus puissants que les scripts car vous avez la possibilité de
dupliquer une base de données. La duplication permet de gagner du temps car vous copiez les fichiers d'une base de données
existante, appelée base de données initiale, aux emplacements appropriés.

Lorsqu'une base de données de conteneur mutualisée (CDB) existe, vous pouvez utiliser DBCA pour effectuer des opérations
de base de données enfichable (PDB) dans la CDB. Vous pouvez créer, supprimer et déconnecter un PDB.
Vous pouvez utiliser DBCA pour modifier la configuration d'une base de données existante. Par exemple, vous pouvez apporter des
modifications de configuration telles que :

• Ajouter des options de base de données qui n'ont pas été configurées

précédemment • Modifier les paramètres de sécurité par défaut • Changer le mode

serveur de dédié à partagé ou inversement

Oracle Database 19c : Atelier d'administration 3 ­ 9


Machine Translated by Google

Utilisation de DBCA en mode silencieux

• Créer une nouvelle base de données nommée ORCL à l'aide du modèle à usage général

$ORACLE_HOME/bin/dbca ­silent ­createDatabase ­templateName


General_Purpose.dbc ­gdbname ORCL
­sid ORCL ­createAsContainerDatabase vrai
­numberOfPDBs 1 ­pdbName pdb1 ­useLocalUndoForPDBs true ­responseFile
NO_VALUE ­characterSet AL32UTF8 ­totalMemory 1800 ­sysPassword Welcome_1
­systemPassword Welcome_1 ­pdbAdminPassword Welcome_1 ­emConfiguration
DBEXPRESS ­dbsnmpPassword Welcome_1 ­emExpressPort 5500 ­enableArchive /
covery/apporare_destination true ­recoveryAclea3Destination recoveryAreaSize 15000
­datafileDestination /u02/app/oracle/oradata

• Supprimer une base de données nommée ORCL

$ORACLE_HOME/bin/dbca ­silent ­deleteDatabase ­sourceDB ORCL ­sid ORCL ­sysPassword Welcome_1

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez également créer une base de données en utilisant le mode non interactif/silencieux de DBCA. Le mode non interactif/
silencieux vous permet de créer un script de création de base de données. Vous pouvez exécuter DBCA en mode non interactif/silencieux
en spécifiant des arguments de ligne de commande, un fichier de réponse ou les deux.

Consultez le Guide de l'administrateur de la base de données Oracle Database pour obtenir des informations détaillées sur la syntaxe
et les options des commandes du mode silencieux de l'assistant de configuration de base de données (DBCA).

Oracle Database 19c : Atelier d'administration 3 ­ 10


Machine Translated by Google

Résumé
Dans cette leçon, vous devriez avoir appris à :

• Créer une base de données à l'aide de l'assistant de configuration de base de données (DBCA) •

Générer des scripts de création de base de données à l'aide de DBCA

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 3 ­ 11


Machine Translated by Google

Aperçu de la pratique

• Création d'un nouveau CDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 3 ­ 12


Machine Translated by Google

4
Création d'une base de données Oracle par
Utilisation d'une commande SQL

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure de créer une base de données de
conteneur (CDB) à l'aide de la commande CREATE DATABASE.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 4 ­ 2


Machine Translated by Google

Création d'une base de données de conteneurs (CDB)

[Link]
Exemple

SGA
1 Exemple
Structures de processus

2
CDB Fichiers de données Fichiers de Fichiers de
contrôle journalisation
ANNULER
SYSTÈME
TEMP
SYSAUX

3 Racine CDB
À partir de la racine CDB,
exécutez [Link]
Fichiers de données
ou
ANNULER
[Link] et [Link] SYSTÈME

et tous les scripts pour SYSAUX

les options TEMP


Semence CDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez créer une base de données de conteneur (CDB) à l'aide de la commande CREATE DATABASE. La clause
ENABLE PLUGGABLE DATABASE spécifie que la base de données est une base de données conteneur mutualisée et non
une non­CDB. L'opération crée les fichiers de contrôle pendant la phase de montage et les fichiers de journalisation et les
fichiers de données racine CDB pendant la phase d'ouverture. Les fichiers de données racine CDB sont utilisés pour l'espace
de table SYSTEM contenant le dictionnaire de métadonnées et de données fourni par Oracle, l'espace de table SYSAUX pour
le référentiel de charge de travail automatique (AWR) et l'espace de table d'annulation. Il crée également la graine CDB avec
ses propres fichiers de données utilisés pour les tablespaces SYSAUX, SYSTEM et undo. Vous pouvez utiliser la clause
SEED FILE_NAME_CONVERT pour définir l'emplacement des fichiers de données de la base de données enfichable initiale CDB.
La clause crée la graine CDB. Les fichiers de données de départ CDB peuvent être utilisés comme modèles pour la création
future de PDB. Si vous omettez cette clause, Oracle Managed Files (OMF) détermine les noms et les emplacements des fichiers
de départ CDB.

Oracle Database 19c : Atelier d'administration 4 ­ 3


Machine Translated by Google

Création d'une CDB à l'aide d'une commande SQL : exemple

1. Démarrez l'instance : a.
Définissez ORACLE_SID=CDB1.
b. Créez le fichier [Link] et définissez les paramètres : –
CONTROL_FILES en noms de fichiers de contrôle CDB –
DB_NAME en un nom CDB –
ENABLE_PLUGGABLE_DATABASE sur TRUE

SQL> CONNECTER / EN TANT QUE SYSDBA


SQL> NOMOUNT DE DÉMARRAGE

2. Créez la base de données :

SQL> CRÉER BASE DE DONNÉES cdb1 ACTIVER BASE DE DONNÉES ENFICHABLE …


SEED FILE_NAME_CONVERT = ('/oracle/dbs','/oracle/seed');

CDB$ROOT + PDB$SEED créés

3. Exécutez le script SQL $ORACLE_HOME/rdbms/admin/[Link].

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous trouverez ci­dessous les étapes détaillées pour créer un nouveau CDB à l'aide de SQL*Plus.

1. Avant de démarrer l'instance, créez un fichier de paramètres d'initialisation avec les paramètres :
DB_NAME, CONTROL_FILES si OMF n'est pas utilisé et DB_BLOCK_SIZE. Le nom de base de données global
de la racine CDB est le nom de base de données global du CDB. Le paramètre ENABLE_PLUGGABLE_DATABASE
défini sur TRUE est requis pour définir que l' instance est prête pour une création CDB et non une création non­
CDB. Vous pouvez également utiliser le paramètre MAX_PDBS pour limiter le nombre de PDB dans la CDB.

Définissez la variable d'environnement ORACLE_SID. Lancez SQL*Plus, connectez­vous en tant


qu'utilisateur authentifié du système d'exploitation appartenant au groupe de système d'exploitation DBA et
exécutez la commande STARTUP NOMOUNT. Si vous utilisez le stockage Oracle Automatic Storage Management
(ASM) pour gérer votre stockage sur disque, vous devez démarrer l'instance Oracle ASM et configurer vos groupes
de disques avant d'effectuer les étapes suivantes.
2. Utilisez la commande CREATE DATABASE avec la clause ENABLE PLUGGABLE DATABASE pour créer une CDB.
La commande crée la racine CDB et la graine CDB. Vous pouvez utiliser la clause SEED FILE_NAME_CONVERT
pour spécifier l'emplacement des fichiers de départ CDB. Si vous omettez la clause, OMF détermine les noms et les
emplacements des fichiers de départ CDB.
FILE_NAME_CONVERT spécifie le répertoire source des fichiers de données racine CDB et le répertoire de départ
CDB cible.
Omettez la clause SEED FILE_NAME_CONVERT si vous utilisez le paramètre d'initialisation
PDB_FILE_NAME_CONVERT qui mappe les noms des fichiers de données racine CDB aux fichiers de données de départ CDB.
Les répertoires doivent exister. Le jeu de caractères défini est celui unique pour le CDB.
3. Exécutez le script SQL [Link] pour créer des vues sur les tables du dictionnaire de données et installez
packages PL/SQL standard à la racine CDB. Vous pouvez également exécuter les scripts SQL [Link] et
[Link] et tous les autres scripts SQL liés aux options installées.

Oracle Database 19c : Atelier d'administration 4 ­ 4


Machine Translated by Google

Utilisation de la clause SEED FILE_NAME_CONVERT

SQL> CREATE DATABASE cdb1


USER SYS IDENTIFIED BY p1 USER SYSTEM IDENTIFIED BY p2 LOGFILE
GROUP 1 ('/u01/app/oradata/CDB1/[Link]',
'/u02/app/oradata/CDB1/[Link]') TAILLE 100M,
GROUPE 2 ('/u01/app/oradata/CDB1/[Link]',
'/u02/app/oradata/CDB1/[Link]') TAILLE 100M
JEU DE CARACTÈRES AL32UTF8 JEU DE CARACTÈRES NATIONAUX AL16UTF16
FICHIER DE DONNÉES LOCAL DE GESTION DE L'ÉTENDUE
'/u01/app/oradata/CDB1/[Link]' SIZE 325M SYSAUX DATAFILE
'/u01/app/oradata/CDB1/[Link]' SIZE 325M DEFAULT TEMPORARY TABLESPACE tents1

TEMPFILE '/u01/app/oradata/CDB1/[Link]' TAILLE 20M


UNDO TABLESPACE undotbs
DATAFILE '/u01/app/oradata/CDB1/[Link]' TAILLE 200M
ACTIVER LA BASE DE DONNÉES ENFICHABLE

SEED FILE_NAME_CONVERT =('/u01/app/oradata/CDB1','/u01/app/oradata/CDB1/seed');

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Une façon de déclarer le répertoire pour les fichiers de données de départ PDB consiste à
utiliser la clause SEED FILE_NAME_CONVERT. La clause FILE_NAME_CONVERT spécifie le répertoire source
des fichiers de données racine CDB et le répertoire de départ CDB cible.
Le répertoire racine /u01/app/oradata/CDB1 et le répertoire de départ /u01/app/oradata/CDB1/seed doivent
exister.

Oracle Database 19c : Atelier d'administration 4 ­ 5


Machine Translated by Google

Utilisation de la clause ENABLE PLUGGABLE DATABASE

Sans SEED FILE_NAME_CONVERT :


• OMF : DB_CREATE_FILE_DEST='/u02/app/oradata'

SQL> CONNECTER / EN TANT QUE SYSDBA


SQL> NOMOUNT DE DÉMARRAGE
SQL> CRÉER BASE DE DONNÉES cdb2
SYSTEME UTILISATEUR IDENTIFIE PAR p1 SYSTEME UTILISATEUR IDENTIFIE PAR p2
ÉTENDU GESTION LOCALE

TABLESPACE TEMPORAIRE PAR DÉFAUT temp


UNDO TABLESPACE undotbs
Utilisateurs de l'ESPACE TABLE PAR DÉFAUT
ACTIVER LA BASE DE DONNÉES ENFICHABLE ;

• Ou paramètre d'initialisation : PDB_FILE_NAME_CONVERT =


'/u02/app/oradata/CDB2','/u02/app/oradata/graine'

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Fichiers gérés Oracle


Si vous n'utilisez pas de noms de fichiers de données explicites, utilisez Oracle Managed Files (OMF) :

• Définissez le paramètre d'initialisation DB_CREATE_FILE_DEST avec la valeur de la destination


répertoire des fichiers de données des tablespaces SYSTEM, SYSAUX, UNDO et USERS spécifiés dans l'instruction.
Oracle choisit les tailles et les propriétés par défaut pour tous les fichiers de données, les fichiers de contrôle et les fichiers
de journalisation.
• Le répertoire /u02/app/oradata doit exister.

Paramètre d'instance PDB_FILE_NAME_CONVERT


Si vous n'utilisez pas la clause SEED FILE_NAME_CONVERT, utilisez un paramètre d'initialisation :
• Le paramètre d'initialisation PDB_FILE_NAME_CONVERT mappe les noms des fichiers existants (les fichiers de données
racine dans votre cas) aux nouveaux noms de fichiers (les fichiers de données de départ dans ce cas).
• Dans l'exemple, les répertoires /u02/app/oradata/CDB2 et /u02/app/oradata/seed doivent exister.

Oracle Database 19c : Atelier d'administration 4 ­ 6


Machine Translated by Google

Résumé
Dans cette leçon, vous devez avoir appris à créer une CDB à l'aide de la commande
CREATE DATABASE.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 4 ­ 7


Machine Translated by Google

Aperçu de la pratique

• Création d'un nouveau CDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 4 ­ 8


Machine Translated by Google

5
Démarrage et arrêt d'un
Instance de base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

À la fin de cette leçon, vous devriez être en mesure de : •


Démarrer et arrêter des bases de données Oracle • Ouvrir
et fermer des PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 5 ­ 2


Machine Translated by Google

Démarrage de l'instance de base de données Oracle

OUVRIR
COMMENCEZ
COMMENCEZ

Tous les fichiers ouverts comme décrit par le


fichier de contrôle de l'instance
MONTER

MONTAGE DE DÉMARRAGE

Fichier de contrôle ouvert


pour l'exemple
NOMONT
MONTANT DE DÉMARRAGE

Instance démarrée

FERMETURE

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Avant que les utilisateurs puissent se connecter à une instance de base de données, un administrateur de base de données doit démarrer
l'instance de base de données. L'instance de base de données et la base de données passent par des étapes au fur et à mesure que la base de
données est mise à la disposition des utilisateurs. L'instance de base de données est démarrée, la base de données est montée, puis la base de
données est ouverte, comme illustré dans la diapositive.

Vous pouvez utiliser la commande STARTUP dans SQL*Plus avec les options présentées dans la diapositive pour chaque étape.
L'option par défaut est OUVERT.

NOMOUNT : au cours de cette étape, le logiciel Oracle lit un fichier de paramètres d'initialisation, démarre des processus en arrière­
plan, alloue de la mémoire à la SGA et ouvre le journal des alertes et les fichiers de trace. Une instance est généralement démarrée
uniquement en mode NOMOUNT lors de la création de la base de données, lors de la recréation des fichiers de contrôle ou dans certains
scénarios de sauvegarde et de restauration.

MOUNT : Au cours de cette étape, le logiciel Oracle associe la base de données (CDB) à l'instance de base de données précédemment
démarrée, ouvre et lit les fichiers de contrôle qui sont spécifiés dans le fichier de paramètres d'initialisation, et obtient les noms et les statuts
des fichiers de données et le rétablissement en ligne. fichiers journaux. Cependant, aucune vérification n'est effectuée pour vérifier l'existence
des fichiers de données et des fichiers de journalisation en ligne pour le moment. Démarrez en mode MOUNT pour effectuer certaines
opérations de maintenance, telles que renommer les fichiers de données et effectuer des récupérations complètes de la base de données.

OUVRIR : Le logiciel Oracle ouvre les fichiers de journalisation et les fichiers de données selon la liste enregistrée dans les fichiers de
contrôle. Démarrez en mode OPEN pour permettre aux utilisateurs de se connecter à l'instance de base de données. Les PDB ne sont pas,
par défaut, démarrés lorsque vous ouvrez la base de données.

Oracle Database 19c : Atelier d'administration 5 ­ 3


Machine Translated by Google

Arrêt d'une instance de base de données Oracle

• Parfois, vous devez arrêter l'instance de base de données (par exemple, pour modifier un
paramètre statique ou corrigez le serveur de base de données).
• Utilisez la commande SHUTDOWN pour arrêter l'instance de base de données dans différents modes : ABORT,
IMMEDIATE, NORMAL et TRANSACTIONAL.

ABANDON IMMÉDIAT NORMAL TRANSACTIONNEL

Permet de nouvelles connexions Non Non Non Non

Attend la fin des sessions en cours Non Non Oui Non

Attend la fin des Non Non Oui Oui

transactions en cours

Force un point de contrôle et Non Oui Oui Oui

ferme les fichiers

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Mode ABORT : Si les autres modes d'arrêt ne fonctionnent pas, vous pouvez utiliser le mode ABORT. Le mode ABORT
effectue le moins de travail avant l'arrêt. Étant donné que ce mode place la base de données dans un état incohérent et nécessite
une récupération avant le démarrage, utilisez­le uniquement lorsque cela est nécessaire. Il n'est pas conseillé de sauvegarder la
base de données dans cet état. Il est généralement utilisé lorsqu'aucune autre forme d'arrêt ne fonctionne, lorsqu'il y a des
problèmes avec le démarrage de l'instance de base de données ou lorsque vous devez arrêter immédiatement en raison d'une
situation imminente (comme un avis de panne de courant en quelques secondes).
Le mode ABORT est généralement le mode d'arrêt le plus rapide et le mode NORMAL est le plus lent. Les modes NORMAL
et TRANSACTIONNEL peuvent prendre beaucoup de temps selon le nombre de sessions et de transactions.

Ce qui suit se produit lors d'un arrêt en mode ABORT, d'un échec d'instance ou d'un démarrage d'instance de base de
données en mode FORCE : Les instructions SQL en cours de traitement par le serveur Oracle sont immédiatement

arrêtées.

• Le serveur Oracle n'attend pas que les utilisateurs actuellement connectés à la base de données
déconnecter.

• Les tampons de base de données et de rétablissement ne sont pas écrits sur le disque.

• Les transactions non validées ne sont pas annulées.

• L'instance est terminée sans fermer les fichiers.


• La base de données n'est pas fermée ou démontée.

• Le prochain démarrage nécessite une récupération d'instance, qui se produit automatiquement.

Oracle Database 19c : Atelier d'administration 5 ­ 4


Machine Translated by Google

Mode IMMÉDIAT : Un arrêt en mode IMMÉDIAT est l'option la plus couramment utilisée.

Les instructions SQL en cours de traitement par l'instance de base de données ne sont pas terminées.
• Le serveur de base de données n'attend pas les utilisateurs actuellement connectés à la base de données
instance à déconnecter.

• Le serveur de base de données annule les transactions actives et déconnecte tous les utilisateurs connectés.

• Le serveur de base de données ferme et démonte la base de données avant d'arrêter la base de données
exemple.

Mode NORMAL : NORMAL est le mode d'arrêt par défaut si aucun mode n'est spécifié avec la commande SHUTDOWN.

• Aucune nouvelle connexion ne peut être établie.

• Le serveur Oracle attend que tous les utilisateurs se déconnectent avant de terminer l'arrêt. • Les tampons de
base de données et de rétablissement sont écrits sur le disque.

• Les processus d'arrière­plan sont terminés et le SGA est supprimé de la mémoire. • Le serveur Oracle
ferme et démonte la base de données avant d'arrêter l'instance.

Mode TRANSACTIONNEL : Un arrêt en mode TRANSACTIONNEL empêche les clients de perdre des données, y compris
les résultats de leur activité en cours.
• Aucun client ne peut démarrer une nouvelle transaction sur cette instance particulière.
• Un client est déconnecté lorsqu'il termine la transaction en cours. • Lorsque toutes les transactions sont
terminées, un arrêt se produit immédiatement.

Oracle Database 19c : Atelier d'administration 5 ­ 5


Machine Translated by Google

Comparaison des modes d'ARRÊT

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le schéma de cette diapositive montre les modes d'arrêt IMMÉDIAT, TRANSACTIONNEL et NORMAL.
Le diagramme de la diapositive suivante montre le mode d'arrêt ABORT (et l'échec de l'instance ou le mode
STARTUP FORCE). Notez que la base de données devient incohérente lorsque vous effectuez un arrêt ABORT,
alors qu'elle reste cohérente pendant les autres modes d'arrêt. Notez également que vous devez récupérer l'instance
de base de données après avoir effectué un arrêt ABORT, alors qu'avec les autres modes d'arrêt, vous n'avez pas
besoin de le faire.

Oracle Database 19c : Atelier d'administration 5 ­ 6


Machine Translated by Google

Comparaison des modes d'ARRÊT

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Notez que la base de données devient incohérente lorsque vous effectuez un arrêt ABORT, alors qu'elle
reste cohérente pendant les autres modes d'arrêt. Notez également que vous devez récupérer l'instance de
base de données après avoir effectué un arrêt ABORT, alors qu'avec les autres modes d'arrêt, vous n'avez
pas besoin de le faire.

Oracle Database 19c : Atelier d'administration 5 ­ 7


Machine Translated by Google

Ouverture et fermeture des PDB

• Ouvrir/fermer une PDB pour ouvrir/fermer ses fichiers de

données. • Un PDB a quatre modes d'ouverture : – READ


WRITE (le PDB est entièrement démarré/ouvert)
– LECTURE SEULE
– MIGRER

– MOUNTED (la PDB est arrêtée/fermée)


• Utilisez la commande ALTER PLUGGABLE DATABASE ou les commandes STARTUP et SHUTDOWN
pour ouvrir et fermer les PDB.
– Exemple : SQL> ALTER PLUGGABLE DATABASE PDB1 OPEN ;

• La commande ALTER PLUGGABLE DATABASE permet de passer de n'importe quel mode ouvert à
un autre.

• Pour utiliser la commande STARTUP, la PDB doit être en mode MOUNTED.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Modes ouverts
Démarrage d'un PDB et ouverture d'un PDB signifient la même chose, et vous trouverez les deux expressions
utilisées dans la documentation et les ressources en ligne. Lorsque vous ouvrez un PDB, le serveur de base de
données ouvre les fichiers de données pour ce PDB. Semblable à un CDB, un PDB a quatre niveaux d'ouverture, et
ces niveaux sont appelés modes ouverts. Les modes ouverts sont READ WRITE (la PDB est entièrement démarrée/
ouverte), READ ONLY, MIGRATE et MOUNTED (la PDB est arrêtée/fermée).

Commandes pour ouvrir et fermer les PDB


Vous pouvez utiliser la commande ALTER PLUGGABLE DATABASE pour ouvrir et fermer une PDB à partir du
conteneur racine ou dans la PDB elle­même. Vous pouvez également utiliser les commandes STARTUP et SHUTDOWN.
La commande ALTER PLUGGABLE DATABASE permet de passer de n'importe quel mode d'ouverture à un autre pour
une PDB. Pour utiliser la commande STARTUP, la PDB doit d'abord être en mode MOUNTED. L'une ou l'autre
commande nécessite que vous soyez connecté au conteneur racine ou à PDB avec l'un des privilèges système
suivants : AS SYSBACKUP, AS SYSDBA, AS SYSDG ou AS SYSOPER.

Exemples
Dans cet exemple, PDB1 est démarré (ouvert). Son mode ouvert passe de MOUNT à READ WRITE.
SQL> ALTER PLUGGABLE DATABASE PDB1 OPEN ;

Dans cet exemple, PDB1 est arrêté (fermé). Son mode ouvert est changé en MOUNT.
SQL> ALTER PLUGGABLE DATABASE PDB1 CLOSE ;

Oracle Database 19c : Atelier d'administration 5 ­ 8


Machine Translated by Google

Configuration des PDB pour une ouverture automatique

• Conserver automatiquement l'état de la PDB après CDB STARTUP :


SQL> ALTER PLUGGABLE DATABASE pdb1 SAVE STATE ;

Cas 1 Cas 2 Cas 3

PDB1 OUVERT PDB1 MONTÉ PDB1 OUVERT EN LECTURE SEULE

FERMER
Ouverture automatique
de l'APB COMMENCEZ

APB1 OUVERT PDB1 MONTÉ APB1 OUVERT EN LECTURE SEULE

• Supprimer automatiquement l'état de la PDB après le DÉMARRAGE de la CDB :


SQL> ALTER PLUGGABLE DATABASE pdb1 DISCARD STATE ;

Cas 1 Cas 2 Cas 3

PDB1 OUVERT PDB1 MONTÉ PDB1 OUVERT EN LECTURE SEULE

PDB1 MONTÉ PDB1 MONTÉ APB1 MONTÉ

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Après le redémarrage d'une instance CDB, les PDB sont par défaut conservés en mode monté. Si vous souhaitez
que les PDB s'ouvrent automatiquement à chaque redémarrage de la CDB, utilisez la clause SAVE STATE de la
commande ALTER PLUGGABLE DATABASE pour conserver le mode d'ouverture d'une PDB lors du redémarrage de
la CDB. La clause SAVE STATE enregistre le dernier état ouvert de la PDB. Ainsi, la PDB ne s'ouvrira après le
redémarrage de la CDB que si la PDB était à l'état ouvert lorsque la clause SAVE STATE a été utilisée pour enregistrer
le dernier état. Pour revenir au comportement par défaut, utilisez la clause DISCARD STATE.

Oracle Database 19c : Atelier d'administration 5 ­ 9


Machine Translated by Google

Résumé
Dans cette leçon, vous devez avoir appris à : •
Démarrer et arrêter des bases de données Oracle
• Ouvrir et fermer des PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 5 ­ 10


Machine Translated by Google

Aperçu de la pratique

• Arrêt et démarrage de l'instance de base de données Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 5 ­ 11


Machine Translated by Google
Machine Translated by Google

Gestion des instances de base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

À la fin de cette leçon, vous devriez être en mesure de : •


Décrire les fichiers de paramètres d'initialisation et les paramètres d'initialisation
• Afficher et modifier les paramètres d'initialisation dans SQL*Plus • Utiliser le
référentiel de diagnostic automatique (ADR) • Interroger les vues de performances
dynamiques

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 6 ­ 2


Machine Translated by Google

Utilisation des paramètres d'initialisation

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Fichiers de paramètres d'initialisation

Lorsque vous démarrez une instance de base de données, elle lit les paramètres de configuration de l'instance (paramètres
d'initialisation) à partir d'un fichier de paramètres d'initialisation (fichier de paramètres). Sur la plupart des plates­formes, les fichiers de
paramètres sont stockés dans le répertoire $ORACLE_HOME/dbs par défaut.

Vous pouvez utiliser l'un des types de fichiers de paramètres suivants pour démarrer votre instance de base de données,
comme illustré dans la diapositive :

• Fichier de paramètres du serveur (SPFILE) : Un SPFILE est un fichier binaire qui est écrit et lu par le serveur de base de données.
Vous ne pouvez pas le modifier manuellement. Un SPFILE est préférable à un PFILE car vous pouvez modifier les paramètres
d'initialisation avec les commandes ALTER SYSTEM dans SQL*Plus, et les modifications persistent lorsque vous arrêtez et
démarrez l'instance de base de données. Il fournit également une base pour l'auto­réglage par Oracle Database. Un SPFILE est
automatiquement créé pour vous par Database Configuration Assistant (DBCA) lorsque vous créez un CDB. Il réside sur le
serveur sur lequel l'instance Oracle s'exécute. Le nom par défaut du SPFILE, qui est automatiquement recherché au démarrage,
est SPFILE<SID>.ora.

• Fichier de paramètres d'initialisation de texte (PFILE) : Un PFILE est un fichier texte contenant des valeurs de paramètres dans des
paires nom/valeur, que le serveur de base de données peut lire pour démarrer l'instance de base de données.
Contrairement à un SPFILE, le serveur de base de données ne peut pas écrire et modifier un PFILE. Par
conséquent, pour modifier les valeurs des paramètres dans un PFILE et les faire persister lors de l'arrêt et du
démarrage, vous devez modifier manuellement le PFILE dans un éditeur de texte et redémarrer l'instance de base
de données pour actualiser les valeurs des paramètres. Votre installation inclut un exemple de fichier PFILE nommé
[Link] dans le répertoire par défaut des fichiers de paramètres. Vous pouvez utiliser ce fichier comme point de
départ pour un PFILE, ou vous pouvez créer un PFILE à partir du SPFILE. Si vous enregistrez votre PFILE sous
init<SID>.ora dans le répertoire par défaut, le serveur de base de données l'utilisera automatiquement si un SPFILE
n'est pas disponible. Si vous enregistrez le PFILE sous un nom différent, vous devrez le spécifier au démarrage.

Oracle Database 19c : Atelier d'administration 6 ­ 3


Machine Translated by Google

Ordre de recherche d'un fichier de paramètres

Le serveur de base de données localise votre fichier de paramètres en examinant les noms de fichier dans le
répertoire $ORACLE_HOME/dbs dans l'ordre suivant :
1. SPFILE<SID>.ora, où SID est l'ID système et identifie le nom de l'instance (par
exemple, ORCL)
2. [Link]

3. init<SID>.ora (PFILE)

Oracle Database 19c : Atelier d'administration 6 ­ 4


Machine Translated by Google

Paramètres d'initialisation
• Paramètres d'initialisation (paramètres) :
– Définir les limites de la base de données

– Définir les valeurs par défaut à l'échelle de la base de données

– Spécifiez les fichiers et les répertoires


– Affecter les performances

• Les paramètres peuvent être de deux types : basiques ou avancés.


– Réglez environ 30 paramètres de base pour obtenir des performances de base de données raisonnables.
– Exemple de paramètre de base : SGA_TARGET – Exemple de
paramètre avancé : DB_CACHE_SIZE

• Les paramètres dérivés calculent leurs valeurs à partir des valeurs d'autres paramètres.
– Exemple : SESSIONS est dérivé de PROCESSES.

• Certaines valeurs de paramètres ou plages de valeurs dépendent du système d'exploitation hôte.


– Exemple : DB_BLOCK_SIZE

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les paramètres d'initialisation (paramètres) définissent les limites de la base de données, définissent les valeurs par défaut à l'échelle de la
base de données, spécifient les fichiers et les répertoires et affectent les performances. Le fichier de paramètres doit, au minimum, spécifier
le paramètre DB_NAME. Tous les autres paramètres ont des valeurs par défaut.

Types de paramètres d'initialisation Les


paramètres peuvent être de deux types : de base ou avancés. Dans la majorité des cas, vous n'aurez besoin de
définir et d'ajuster que la trentaine de paramètres de base pour obtenir des performances raisonnables de la base
de données. Dans de rares situations, vous devrez modifier un ou plusieurs des quelque 300 paramètres avancés
pour obtenir des performances optimales. Un exemple de paramètre de base est SGA_TARGET, qui spécifie la
taille totale de la mémoire de tous les composants SGA. Et un exemple de paramètre avancé est DB_CACHE_SIZE,
qui spécifie la taille du pool de mémoire tampon par défaut.
Paramètres dérivés

Certains paramètres sont dérivés, ce qui signifie que leurs valeurs sont calculées à partir des valeurs
d'autres paramètres. Normalement, vous ne devez pas modifier les valeurs des paramètres dérivés. Mais si vous le
faites, la valeur que vous spécifiez remplace la valeur calculée. Par exemple, la valeur par défaut du paramètre
SESSIONS est dérivée de la valeur du paramètre PROCESSES. Si la valeur de PROCESSES change, la valeur par
défaut de SESSIONS change également, sauf si vous la remplacez par une valeur spécifiée.

Valeurs de paramètres qui dépendent du système


d'exploitation Certaines valeurs de paramètres ou plages de valeurs dépendent du système d'exploitation hôte.
Par exemple, le paramètre DB_FILE_MULTIBLOCK_READ_COUNT spécifie le nombre maximal de blocs lus dans
une opération d'E/S au cours d'une scrutation séquentielle ; ce paramètre dépend de la plate­forme. La taille de ces
blocs, définie par DB_BLOCK_SIZE, a une valeur par défaut qui dépend du système d'exploitation.

Oracle Database 19c : Atelier d'administration 6 ­ 5


Machine Translated by Google

Voir
Passez en revue les informations sur le paramètre CONTROL_FILES. Oracle Database Reference est une
bonne source d'informations sur les paramètres. Dans cet exemple, vous apprendrez le type de données du
paramètre (chaîne), la syntaxe (CONTROL_FILES = nom de fichier, [, nom de fichier]...), la valeur par défaut
(selon le système d'exploitation), si elle est modifiable (non), si vous peut modifier sa valeur dans une PDB (non),
sa plage de valeurs (1 à 8 noms de fichiers), s'il s'agit d'un paramètre de base (oui), et des détails pour Oracle
Real Application Clusters (plusieurs instances doivent avoir la même valeur).

Oracle Database 19c : Atelier d'administration 6 ­ 6


Machine Translated by Google

Modification des paramètres d'initialisation

• Modifier les paramètres pour définir des limites de capacité ou améliorer les performances.

– Utilisez Enterprise Manager ou SQL*Plus (ALTER SESSION ou ALTER SYSTEM).


• Interrogez V$PARAMETER pour un paramètre d'initialisation pour savoir si vous pouvez effectuer :
– Modifications au niveau de la session (colonne ISSES_MODIFIABLE)
– Modifications au niveau du système (colonne ISSYS_MODIFIABLE)
– Modifications au niveau de l'APB (colonne ISPDB_MODIFIABLE)
• Utilisez la clause SCOPE avec la commande ALTER SYSTEM pour indiquer au système où mettre à jour le paramètre
de niveau système :
– MÉMOIRE

– SPFILE
– LES DEUX

• Utilisez le mot­clé DEFERRED pour définir ou modifier la valeur du paramètre pour les futures sessions qui se
connectent à la base de données.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Utilisation des commandes ALTER SESSION ou ALTER SYSTEM Vous

modifiez les paramètres car vous souhaitez définir des limites de capacité ou améliorer les performances. Vous pouvez utiliser
les commandes ALTER SESSION ou ALTER SYSTEM dans SQL*Plus pour modifier les paramètres. Dans votre propre
environnement, vous ne modifierez probablement que les paramètres d'initialisation de base pour que votre base de données
fonctionne avec de bonnes performances.

L'augmentation des valeurs des paramètres peut améliorer les performances de votre système, mais l'augmentation de la plupart
des paramètres augmente également la taille de la SGA. Une SGA plus grande peut améliorer les performances de la base de
données jusqu'à un certain point. Un SGA trop volumineux peut dégrader les performances s'il est échangé dans et hors de la
mémoire. Vous devez définir les paramètres du système d'exploitation qui contrôlent les zones de travail de la mémoire virtuelle en
tenant compte de la taille SGA. La configuration du système d'exploitation peut également limiter la taille maximale de la SGA.

Avant de modifier un paramètre, vous devez interroger la vue V$PARAMETER pour savoir comment modifier un paramètre.

• La valeur de la colonne ISSES_MODIFIABLE vous indique si vous pouvez modifier le paramètre pour votre session en cours
(TRUE) ou non (FALSE) à l'aide de la commande ALTER SESSION. Vous pouvez modifier certains paramètres au niveau
de la session, mais pas tous. Les modifications sont appliquées à votre session en cours immédiatement (de manière
dynamique) et expirent lorsque vous fermez votre session.
Les paramètres avec une valeur TRUE sont appelés paramètres de niveau session.
Exemple : SQL> ALTER SESSION SET NLS_DATE_FORMAT ='mon jj aaaa';

Oracle Database 19c : Atelier d'administration 6 ­ 7


Machine Translated by Google

• La valeur de la colonne ISSYS_MODIFIABLE vous indique quand une modification au niveau système du paramètre,
effectuée à l'aide de la commande ALTER SYSTEM, prend effet.

­ IMMÉDIAT signifie que la modification prendra effet immédiatement et sera appliquée à toutes les sessions
en cours.

­ DIFFÉRÉ signifie que le changement prendra effet dans les sessions suivantes.
­ FALSE signifie que la modification prendra effet dans les instances suivantes.

Vous pouvez modifier tous les paramètres au niveau du système à l'aide de la commande ALTER
SYSTEM, et la modification est appliquée à toutes les sessions.
Les paramètres avec la valeur FALSE sont appelés paramètres statiques. Pour les paramètres statiques, vous devez
arrêter et redémarrer l'instance de base de données pour implémenter la modification. De plus, l'instance de base
doit de
avoir
données
été
démarrée avec un SPFILE.

Exemple : SQL> ALTER SYSTEM SET SEC_MAX_FAILED_LOGIN_ATTEMPTS=2


SCOPE=SPFILE ;

• La valeur de la colonne ISPDB_MODIFIABLE vous indique si vous pouvez (TRUE) ou ne pouvez pas (FALSE) modifier le
paramètre à l'intérieur d'un PDB. Dans une non­CDB, la valeur de cette colonne est NULL.

Définition de la portée dans la commande ALTER SYSTEM Utilisez la

clause SCOPE avec la commande ALTER SYSTEM pour indiquer au système où mettre à jour le paramètre de niveau
système. Cet emplacement dicte combien de temps le changement restera en vigueur. La portée dépend également du
démarrage de l'instance de base de données à l'aide d'un PFILE ou d'un SPFILE. Scope peut avoir les valeurs suivantes : •
MEMORY : Cette valeur indique au système de modifier le paramètre uniquement en mémoire. Le

le changement prendra effet immédiatement, mais ne persistera pas dans les sessions suivantes. Si vous avez démarré
l' instance de base de données à l'aide d'un PFILE, il s'agit de la seule étendue que vous pouvez spécifier. Cette
spécification n'est pas autorisée pour les paramètres statiques.
• SPFILE : cette valeur indique au système de modifier le paramètre uniquement dans le SPFILE. La modification prendra effet
immédiatement et persistera après le redémarrage de l'instance de base de données. Il s'agit de la seule étendue
autorisée pour les paramètres statiques.
• BOTH : cette valeur indique au système de modifier le paramètre à la fois dans la mémoire et dans le SPFILE. La modification
prendra effet immédiatement et persistera après le redémarrage de l'instance de base de données. Si vous avez
démarré l'instance de base de données à l'aide d'un SPFILE, BOTH est la valeur par défaut.

Utilisation du mot­clé DEFERRED Le mot­

clé DEFERED indique au système de rendre le changement de paramètre effectif uniquement pour les sessions futures.
Vous devez spécifier DEFERRED dans la commande ALTER SYSTEM si la valeur de la colonne ISSYS_MODIFIABLE est
DEFERRED. Si la valeur de cette colonne est IMMEDIATE, le mot­clé DEFERRED est facultatif. Si la valeur de cette colonne
est FALSE, vous ne pouvez pas spécifier DEFERRED dans l'instruction ALTER SYSTEM.

Oracle Database 19c : Atelier d'administration 6 ­ 8


Machine Translated by Google

Affichage des paramètres d'initialisation

Façons d'afficher les paramètres d'initialisation dans SQL*Plus :


• Exécutez la commande AFFICHER PARAMETRE.
– Exemple : Connaître tous les paramètres dont le nom contient le mot « para ».

SQL> AFFICHER PARAMETRE para

• Interrogez les vues suivantes :


– PARAMÈTRE V$
– V$PARAMETRE2
– V$SPPARAMETRE
– V$SYSTEM_PARAMETER
– V$SYSTEM_PARAMETER2

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Exécution de la commande AFFICHER PARAMETRE


Vous pouvez émettre la commande SHOW PARAMETER dans SQL*Plus pour afficher des informations sur un
paramètre d'initialisation (par exemple, afficher le type de données et la valeur par défaut d'un paramètre). Par exemple, la
commande SHOW PARAMETER suivante renvoie des informations sur les paramètres dont les noms contiennent le mot "para".

SQL> AFFICHER PARAMETRE para


NOM TAPER VALEUR
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­­ ­­­ ­­­­­­­­­­­­­­­­­­

cell_offload_parameters chaîne

fast_start_parallel_rollback chaîne FAIBLE

parallel_adaptive_multi_user booléen VRAI

réglage_automatique_parallèle booléen FAUX

Interrogation des vues

Vous pouvez également interroger la vue V$PARAMETER dans SQL*Plus pour afficher des informations sur un paramètre
d'initialisation. Par exemple, la requête suivante sur la vue V$PARAMETER renvoie des informations sur les paramètres dont
les noms contiennent le mot « pool ».

Oracle Database 19c : Atelier d'administration 6 ­ 9


Machine Translated by Google

SQL> SELECT nom, valeur FROM v$paramètre WHERE nom LIKE '%pool%' ;
NOM VALEUR
­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­

taille_pool_partagée 0

taille_large_pool 0

taille_pool_java 0

streams_pool_size 0

shared_pool_reserved_size 15728640

9 lignes sélectionnées.

Les autres vues contenant des informations sur les paramètres incluent :
• V$SPPARAMETER : affiche des informations sur le contenu du SPFILE. Si vous n'avez pas utilisé de
SPFILE pour démarrer l'instance de base de données, chaque ligne de la vue contiendra FALSE dans la
colonne ISSPECIFIED.

• V$PARAMETER2 : affiche des informations sur les paramètres actuellement en vigueur pour la session, chaque valeur de
paramètre apparaissant sous la forme d'une ligne dans la vue. Une nouvelle session hérite des valeurs de paramètre des
valeurs à l'échelle de l'instance de base de données affichées dans la vue V$SYSTEM_PARAMETER2.

• V$SYSTEM_PARAMETER : affiche des informations sur les paramètres qui sont actuellement
effet pour l'instance de base de données

• V$SYSTEM_PARAMETER2 : affiche des informations sur les paramètres d'initialisation actuellement en vigueur pour
l'instance, chaque valeur de paramètre de liste apparaissant sous forme de ligne dans la vue.

Oracle Database 19c : Atelier d'administration 6 ­ 10


Machine Translated by Google

Travailler avec le référentiel de diagnostic automatique

L'Automatic Diagnostic Repository (ADR) : • Est un référentiel

basé sur des fichiers en dehors de la base de données • Est un

référentiel central de traçage et de journalisation à l'échelle du système •

Stocke les données de diagnostic de la base de données telles que :


– Traces
– Journal des alertes

– Rapports de surveillance de la santé

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Référentiel de diagnostic automatique


Le référentiel de diagnostic automatique (ADR) est un référentiel central de suivi et de journalisation à l'échelle du système pour les
données de diagnostic de la base de données telles que les suivis, le journal des alertes, les rapports de surveillance de l'état, etc.

Le répertoire racine ADR est appelé la base ADR. Son emplacement est défini par le paramètre
d'initialisation DIAGNOSTIC_DEST (par exemple, /u01/app/oracle).
L'emplacement d'un répertoire d'accueil ADR est donné par le chemin suivant, qui commence au répertoire
de base ADR : <ADR Base>/diag/product_type/db_id/instance_id
Par exemple : /
u01/app/oracle/diag/rdbms/orcl/ORCL

Oracle Database 19c : Atelier d'administration 6 ­ 11


Machine Translated by Google

Référentiel de diagnostic automatique


DIAGNOSTIC_DEST

$ORACLE_BASE

$ORACLE_HOME/journal
ADR
Base
Établi de soutien

diagnostic

rdbms

BD
Nom
Vidages mémoire
ADR métadonnées Traces de processus
SID
Maison
de premier plan et d'arrière­
Données du journal des alertes
plan , et données du journal des alertes

alerte cdump incpkg incident hm trace (autres)

incdir_1 … incdir_n

Vidages
ADRCI [Link] alert_SID.log V$DIAG_INFO
d'incidents

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

ADR est un référentiel basé sur des fichiers pour les données de diagnostic de base de données telles que les traces, les
vidages d'incidents et les packages, le journal des alertes, les rapports Health Monitor, les vidages mémoire, etc. Il dispose
d'une structure de répertoires unifiée sur plusieurs instances et plusieurs produits, stockés en dehors de toute base de
données. Il est donc disponible pour le diagnostic des problèmes lorsque la base de données est en panne.

Le serveur de base de données Oracle, Automatic Storage Management (ASM), Cluster Ready Services (CRS) et d'autres
produits ou composants Oracle stockent toutes les données de diagnostic dans l'ADR. Chaque instance de chaque produit stocke les
données de diagnostic sous son propre répertoire d'accueil ADR. Par exemple, dans un environnement Real Application Clusters
avec stockage partagé et ASM, chaque instance de base de données et chaque instance ASM ont un répertoire de base dans l'ADR.
La structure de répertoire unifiée d'ADR, les formats de données de diagnostic cohérents entre les produits et les instances, et un
ensemble unifié d'outils permettent aux clients et au support Oracle de corréler et d'analyser les données de diagnostic sur plusieurs
instances.

Le répertoire racine ADR est appelé la base ADR. Son emplacement est défini par le paramètre d'initialisation
DIAGNOSTIC_DEST. Si ce paramètre est omis ou laissé à zéro, la base de données définit DIAGNOSTIC_DEST au démarrage
comme suit : Si la variable d'environnement ORACLE_BASE est définie, DIAGNOSTIC_DEST est défini sur $ORACLE_BASE.
Si la variable d'environnement ORACLE_BASE n'est pas définie, DIAGNOSTIC_DEST est défini sur $ORACLE_HOME/log.

Oracle Database 19c : Atelier d'administration 6 ­ 12


Machine Translated by Google

Affichage du journal des alertes

• Le fichier journal des alertes est un journal chronologique des messages concernant l'instance de base de données et la
base de données, tels que :

– Tous les paramètres d'initialisation autres que ceux par défaut utilisés au démarrage

– Toutes les erreurs internes (ORA­600), les erreurs de corruption de bloc (ORA­1578) et les erreurs de blocage
(ORA­60) qui s'est produit
– Les opérations administratives, telles que les instructions SQL CREATE, ALTER, DROP DATABASE
et TABLESPACE, et les instructions Enterprise Manager ou SQL*Plus STARTUP,
ARRÊT, ARCHIVAGE DU JOURNAL et RÉCUPÉRATION

– Plusieurs messages et erreurs relatifs aux fonctions de serveur mutualisé et de répartiteur


processus
– Erreurs lors du rafraîchissement automatique d'une vue matérialisée

• Interrogez V$DIAG_INFO pour trouver l'emplacement du journal des alertes.

– Le chemin vers alert_SID.log correspond à l'entrée Diag Trace.


– Le chemin vers [Link] correspond à l'entrée Diag Alert.

• Vous pouvez visualiser le journal des alertes dans un éditeur de texte ou dans ADRCI.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Chaque instance de base de données possède un fichier alert_SID.log. Le fichier se trouve sur le serveur avec la base de
données et est stocké dans $ORACLE_BASE/diag/rdbms/<db_name>/<SID>/trace par défaut si $ORACLE_BASE est défini.

Oracle Database utilise le journal des alertes pour conserver un enregistrement de ces événements au lieu d'afficher les
informations sur la console d'un opérateur. De nombreux systèmes affichent également ces informations sur la console.
Si une opération administrative réussit, un message est écrit dans le journal des alertes comme « terminé » avec un
horodatage.

Enterprise Manager Cloud Control surveille le fichier journal des alertes et vous avertit des erreurs critiques. Vous pouvez
également afficher le journal pour voir les messages d'erreur et d'information non critiques. Étant donné que le fichier peut atteindre
une taille ingérable, vous pouvez périodiquement sauvegarder le fichier d'alerte et supprimer le fichier d'alerte actuel.
Lorsque la base de données tente à nouveau d'écrire dans le fichier d'alerte, elle en crée un nouveau.

Remarque : Il existe une version XML du journal des alertes dans le


répertoire $ORACLE_BASE/diag/rdbms/<db_name>/<SID>/alert.

ADRCI est un utilitaire de ligne de commande Oracle qui vous permet d'enquêter sur les problèmes, d'afficher les rapports de
vérification de l'état, de regrouper et de télécharger les données de premier échec vers le support Oracle. Vous pouvez également
utiliser l'utilitaire pour afficher les noms des fichiers de trace dans l'Automatic Diagnostic Repository (ADR) et le journal des alertes.
ADRCI dispose d'un jeu de commandes riche que vous pouvez utiliser de manière interactive ou dans des scripts.

Oracle Database 19c : Atelier d'administration 6 ­ 13


Machine Translated by Google

Utilisation des fichiers de suivi

• Les fichiers de suivi contiennent :

– Informations sur l'erreur (contactez les services de support Oracle si une erreur interne se produit)

– Informations pouvant fournir des conseils pour le réglage d'applications ou d'une instance

• Chaque serveur et processus d'arrière­plan peuvent écrire dans un fichier de trace associé. • Les noms de

fichier de trace pour les processus d'arrière­plan sont nommés d'après leurs processus.

– Exception : fichiers de trace générés par les processus de file d'attente des travaux

• Oracle Database inclut une infrastructure avancée de diagnostic des pannes pour prévenir,
détecter, diagnostiquer et résoudre les problèmes.

• Lorsqu'une erreur critique se produit :

– Un numéro d'incident est attribué à l'erreur

– Les données de diagnostic de l'erreur (telles que les fichiers de suivi) sont immédiatement capturées et étiquetées avec le numéro
d'incident

– Les données sont stockées dans l'ADR

• Les fichiers ADR peuvent être automatiquement purgés en définissant des paramètres de stratégie de rétention.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Fichiers de trace

Chaque serveur et processus d'arrière­plan peuvent écrire dans un fichier de trace associé. Lorsqu'un processus détecte une erreur interne, il
vide les informations sur l'erreur dans son fichier de trace. Si une erreur interne se produit et que des informations sont écrites dans un fichier de
trace, l'administrateur doit contacter les services de support Oracle.

Tous les noms de fichier des fichiers de trace associés à un processus d'arrière­plan contiennent le nom du processus qui a généré le fichier de
trace. La seule exception à cette règle concerne les fichiers de trace générés par les processus de file d'attente des travaux (Jnnn).

Des informations supplémentaires dans les fichiers de trace peuvent fournir des conseils pour le réglage des applications ou d'une instance.
Les processus d'arrière­plan écrivent toujours ces informations dans un fichier de trace, le cas échéant.

Oracle Database comprend une infrastructure avancée de diagnostic des pannes pour prévenir, détecter, diagnostiquer et résoudre les
problèmes. En particulier, les problèmes ciblés incluent les erreurs critiques telles que celles causées par des bogues de code de base de
données, la corruption des métadonnées et la corruption des données client.

Lorsqu'une erreur critique survient, un numéro d'incident lui est attribué ; les données de diagnostic de l'erreur (telles que les fichiers de trace) sont
immédiatement capturées et étiquetées avec ce numéro. Les données sont ensuite stockées dans le référentiel de diagnostic automatique (ADR)
­ un référentiel basé sur des fichiers en dehors de la base de données ­ où elles peuvent ensuite être récupérées par numéro d'incident et analysées.

Oracle Database 19c : Atelier d'administration 6 ­ 14


Machine Translated by Google

Mécanisme de purge

Le mécanisme de purge vous permet de spécifier une politique de rétention indiquant :

• Quel âge doit avoir le contenu ADR avant qu'il ne soit automatiquement supprimé

­ La longue période de conservation est utilisée pour les données de diagnostic de valeur relativement plus élevée, telles que
les incidents et le journal des alertes (la valeur par défaut est de 365 jours).

­ La période de rétention courte est utilisée pour les traces et les core dumps (la valeur par défaut est 30
jours).

Les éléments plus anciens sont supprimés en premier. Les éléments à longue période de conservation sont généralement plus anciens que n'importe lequel des

les éléments dans la courte période de conservation. Ainsi, un mécanisme est utilisé dans lequel les périodes de temps sont "mises
à l'échelle" de sorte qu'à peu près le même pourcentage de chacune soit supprimé. Certains composants utilisent ces périodes de
manière légèrement différente. Par exemple, IPS, l'installation de conditionnement, utilise la courte période de conservation pour
déterminer quand purger les métadonnées de conditionnement et le contenu du répertoire intermédiaire. Cependant, l'âge des données
est basé sur le moment où le package a été terminé, et non sur sa date de création initiale. • La rétention basée sur la taille
une taille
pour cible
spécifier
pour une maison ADR

Lors de la purge, les anciennes données, déterminées par les périodes de conservation basées sur le temps, sont supprimées en
premier. Si la taille de l'accueil ADR est toujours supérieure à la taille cible, les diagnostics sont automatiquement supprimés jusqu'à ce que
la taille cible ne soit plus dépassée.

Oracle Database 19c : Atelier d'administration 6 ­ 15


Machine Translated by Google

Administration du fichier journal DDL

• Activez la capture de certaines instructions DDL dans un fichier journal DDL en définissant
ENABLE_DDL_LOGGING à TRUE
• Le journal DDL contient un enregistrement de journal pour chaque instruction
DDL. • Deux journaux DDL contiennent les mêmes informations : – Journal
XML DDL : [Link] écrit dans $ORACLE_BASE/diag/rdbms/<dbname>/
<SID>/log/ddl
– Texte DDL : ddl_<sid>.log écrit dans
$ORACLE_BASE/diag/rdbms/<dbname>/<SID>/log
• Exemple : $
more ddl_orcl.log
Jeu 15 novembre [Link] 2016
diag_adl : supprimer l'utilisateur app_user

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le journal DDL est créé uniquement si le paramètre d'initialisation ENABLE_DDL_LOGGING est défini sur TRUE.
Lorsque ce paramètre est défini sur FALSE, les instructions DDL ne sont incluses dans aucun journal. Un sous­ensemble
d'instructions DDL exécutées est écrit dans le journal DDL.

Deux journaux DDL contiennent les mêmes informations. L'un est un fichier XML et l'autre est un fichier texte. Le journal DDL est
stocké dans le sous­répertoire log/ddl du répertoire d'accueil ADR.

Remarque : vous devez disposer d'une licence pour Oracle Database Lifecycle Management Pack pour activer la
journalisation DDL.

Oracle Database 19c : Atelier d'administration 6 ­ 16


Machine Translated by Google

Interrogation des vues de performances dynamiques

• Les vues de performances dynamiques permettent d'accéder à des informations sur les états changeants de
structures de mémoire d'instance :
– Sessions, états des fichiers et verrous
– Avancement des travaux et des tâches

­ État de la sauvegarde, utilisation de la mémoire et allocation


– Paramètres système et de session
– Exécution SQL
– Statistiques et métriques

• Les vues de performances dynamiques commencent par le préfixe V$.

• Exemple de requête : Quelles sessions en cours se sont connectées à partir de l'ordinateur EDXX9P1 sur
le dernier jour?

SQL> SELECT * DEPUIS V$SESSION


2 OÙ machine = 'EDXX9P1'

3 ET heure_ouverture de session > SYSDATE ­ 1 ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le serveur de base de données Oracle conserve un ensemble dynamique de données sur le fonctionnement et les performances de
l'instance de base de données. Les vues de performances dynamiques sont basées sur des tables virtuelles construites à partir de
structures de mémoire à l'intérieur du serveur de base de données. Ce ne sont pas des tables conventionnelles qui résident dans une
base de données. C'est la raison pour laquelle certains d'entre eux sont disponibles avant qu'une base de données ne soit montée ou ouverte.

Remarque : Les vues DICT et DICT_COLUMNS contiennent également les noms de ces vues de performances
dynamiques.

Vous pouvez utiliser des vues de performances dynamiques pour répondre à des questions telles que :
1. Pour quelles instructions SQL (et leurs nombres d'exécutions associés) est le temps CPU
consommé plus de 200 000 microsecondes ?
SQL> SELECT sql_text, exécutions FROM V$SQL WHERE cpu_time > 200000 ;

2. Quels sont les ID de session de ces sessions qui détiennent actuellement un verrou qui bloque un autre utilisateur,
et depuis combien de temps ces verrous sont­ils détenus ?
SQL> SELECT sid, ctime FROM v$lock WHERE block > 0;

Oracle Database 19c : Atelier d'administration 6 ­ 17


Machine Translated by Google

Considérations relatives aux vues de performances dynamiques

• Ces vues appartiennent à l'utilisateur SYS. • Les

vues fournissent des informations en fonction de l'étape (NOMOUNT, MOUNT ou OPEN). • Vous

pouvez interroger V$FIXED_TABLE pour voir tous les noms de vue.


• Ces vues sont souvent appelées « vues v­dollar ».

• La cohérence de lecture n'est pas garantie sur ces vues car les données sont dynamiques.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Certaines vues dynamiques fournissent des informations qui ne s'appliquent pas à tous les états d'une instance ou
d'une base de données. Par exemple, si une instance vient d'être démarrée mais qu'aucune base de données n'est montée,
vous pouvez interroger V$BGPROCESS pour voir la liste des processus d'arrière­plan en cours d'exécution. Mais interroger
V$DATAFILE pour voir l'état des fichiers de données de la base de données ne renverrait aucune ligne. La base de données
doit être montée ou ouverte pour que V$DATAFILE fournisse des informations significatives. C'est lors du montage de la base
de données que le fichier de contrôle est lu pour obtenir des informations sur les fichiers de données associés à une base de
données.

Certaines vues V$ contiennent des informations similaires à celles des vues DBA_ correspondantes.
Par exemple, V$DATAFILE est similaire à DBA_DATA_FILES. Notez également que les noms de vue V$ sont
généralement au singulier et que les noms de vue DBA_ sont au pluriel.

Oracle Database 19c : Atelier d'administration 6 ­ 18


Machine Translated by Google

Dictionnaire de données : Présentation

les tables

Index
Espace table SYSTEM
Vues
Utilisateurs

Schémas
Métadonnées
Procédures
…et ainsi de suite

SELECT * FROM dictionnaire ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le dictionnaire de données Oracle est les métadonnées de la base de données et contient les noms et attributs de tous les objets
de la base de données. La création ou la modification d'un objet entraîne une mise à jour du dictionnaire de données qui reflète ces
modifications. Ces informations sont stockées dans les tables de base gérées par le serveur Oracle Database, mais vous accédez à
ces tables à l'aide de vues prédéfinies plutôt qu'en lisant directement les tables.

Le dictionnaire de données :

Est utilisé par le serveur Oracle Database pour rechercher des informations sur les utilisateurs, les objets, les contraintes
et le stockage

Est maintenu par le serveur Oracle Database lorsque les structures ou les définitions d'objets sont modifiées


Est disponible pour être utilisé par n'importe quel utilisateur pour demander des informations sur la base de données

Appartient à l'utilisateur SYS

• Ne doit jamais être modifié directement en utilisant SQL

Remarque : La vue du dictionnaire de données DICTIONARY (ou son synonyme DICT) contient les noms et les descriptions des
tables et des vues du dictionnaire de données. Utilisez la vue DICT_COLUMNS pour afficher les colonnes de la vue et leurs
définitions. Pour obtenir les définitions complètes de chaque vue, consultez la référence de la base de données Oracle . Il existe plus
de 1000 vues qui référencent des centaines de tables de base.

Oracle Database 19c : Atelier d'administration 6 ­ 19


Machine Translated by Google

Interrogation du dictionnaire de données Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vues CDB_, DBA_, ALL_ et USER_

Les préfixes de vue, comme indiqué dans la diapositive, indiquent les données (et la quantité de ces données) d'un utilisateur donné
peut voir.

• Les vues CDB_ affichent les métadonnées de tous les objets d'une CDB dans toutes
les PDB. • Les vues DBA_ affichent les métadonnées de tous les objets d'un conteneur
ou d'une PDB. • ALL_views affiche les métadonnées des objets que l'utilisateur actuel a le privilège de voir, qu'il en
soit propriétaire ou non. Par exemple, si USER_A a obtenu l'accès à une table appartenant à USER_B, alors
USER_A voit cette table répertoriée dans n'importe quelle vue ALL_ traitant des noms de table. • Les vues
USER_ affichent les métadonnées de tous les objets appartenant à l'utilisateur actuel, c'est­à­dire les objets présents
dans le propre schéma de l'utilisateur.
Seules les vues USER_ et ALL_ sont disponibles pour tous les utilisateurs. Les vues CDB_ et DBA_ sont limitées aux comptes DBA.

Généralement, chaque ensemble de vues est un sous­ensemble de l'ensemble de vues à privilèges plus élevés, en ligne et en colonne.
Toutes les vues d'un ensemble de vues donné n'ont pas de vue correspondante dans les autres ensembles de vues. Cela dépend de la
nature des informations dans la vue. Par exemple, il existe une vue DBA_LOCK, mais pas de vue ALL_LOCK, car seul un DBA serait
intéressé par les données sur les verrous. Assurez­vous de choisir l' ensemble de vues approprié pour répondre à vos besoins. Si vous
avez le privilège d'accéder aux vues DBA, vous souhaiterez peut­être toujours interroger uniquement la version USER_ de la vue car les
résultats affichent des informations sur les objets que vous possédez et vous ne souhaitez peut­être pas que d'autres objets soient ajoutés
à votre jeu de résultats.

Les vues CDB_ et DBA_ ne peuvent être interrogées que par des utilisateurs disposant du privilège SYSDBA ou SELECT
ANY DICTIONARY, ou du rôle SELECT_CATALOG_ROLE, ou par des utilisateurs disposant de privilèges directs .

Oracle Database 19c : Atelier d'administration 6 ­ 20


Machine Translated by Google

Lorsqu'un utilisateur connecté à la racine interroge une vue CDB_*, les résultats de la requête dépendent
de l'attribut CONTAINER_DATA de l'utilisateur. La clause CONTAINER_DATA de l'instruction SQL ALTER
USER est utilisée pour définir et modifier l'attribut CONTAINER_DATA des utilisateurs. Dans une PDB, les
vues CDB_* affichent uniquement les objets visibles via une vue DBA_* correspondante.

Oracle Database 19c : Atelier d'administration 6 ­ 21


Machine Translated by Google

Résumé
Dans cette leçon, vous devez avoir appris à : •
Décrire les fichiers de paramètres d'initialisation et les paramètres
d'initialisation • Afficher et modifier les paramètres d'initialisation dans
SQL*Plus • Utiliser le référentiel de diagnostic automatique (ADR) • Interroger
les vues de performances dynamiques

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 6 ­ 22


Machine Translated by Google

Aperçu de la pratique

• Examen des fichiers de paramètres d'initialisation


• Affichage des paramètres d'initialisation à l'aide de SQL*Plus •
Modification des paramètres d'initialisation à l'aide de SQL*Plus •
Affichage des informations de diagnostic

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 6 ­ 23


Machine Translated by Google
Machine Translated by Google

Oracle Net Services : Présentation

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

À la fin de cette leçon, vous devriez être en mesure de : •

Répertorier les composants d'Oracle Net Services • Expliquer

le fonctionnement des écouteurs


• Décrire les outils utilisés pour administrer Oracle Net Services

• Expliquer la différence entre les configurations de serveur dédié et partagé

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 7 ­ 2


Machine Translated by Google

Connexion à l'instance de base de données

• Connexion : Communication entre un processus utilisateur et une instance •


Session : Représente l'état d'une connexion utilisateur actuelle à l'instance de base de données

SQL> CHOISIR …
Utilisateur Processus utilisateur Processus serveur
Session

Connexion

Session

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les connexions et les sessions sont étroitement liées aux processus utilisateur mais ont une signification très différente.

Une connexion est une voie de communication entre un processus utilisateur et une instance de base de données Oracle.
Une voie de communication est établie en utilisant les mécanismes de communication interprocessus disponibles (sur un
ordinateur qui exécute à la fois le processus utilisateur et la base de données Oracle) ou un logiciel réseau (lorsque différents
ordinateurs exécutent l'application de base de données et la base de données Oracle et communiquent via un réseau) .

Une session représente l'état d'une connexion utilisateur actuelle à l'instance de base de données. Par exemple, lorsqu'un
utilisateur démarre SQL*Plus, il doit fournir un nom d'utilisateur et un mot de passe valides, puis une session est établie pour
cet utilisateur. Une session dure à partir du moment où un utilisateur se connecte jusqu'à ce que l'utilisateur se déconnecte ou
quitte l'application de base de données.

Plusieurs sessions peuvent être créées et exister simultanément pour un seul utilisateur de base de données Oracle en
utilisant le même nom d'utilisateur. Par exemple, un utilisateur avec le nom d'utilisateur/mot de passe HR/HR peut se
connecter plusieurs fois à la même instance Oracle Database.

Oracle Database 19c : Atelier d'administration 7 ­ 3


Machine Translated by Google

Oracle Net Services : Présentation

Réseau
Application TCP/IP SGBDR

Réseau Oracle Réseau Oracle

Client ou
Auditeur Serveur de base de données
niveau intermédiaire

Fichiers de Fichiers de

configuration OracleNet configuration OracleNet

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Net Services permet des connexions réseau entre une application cliente ou de niveau intermédiaire et le serveur
Oracle. Une fois qu'une session réseau est établie, Oracle Net agit en tant que transporteur de données pour l'application
cliente et le serveur de base de données. Il est chargé d'établir et de maintenir la connexion entre l'application cliente et le
serveur de base de données, ainsi que d'échanger des messages entre eux.
Oracle Net (ou quelque chose qui simule Oracle Net, comme Java Database Connectivity) est situé sur chaque ordinateur
qui doit communiquer avec le serveur de base de données.

Sur l'ordinateur client, Oracle Net est un composant d'arrière­plan pour les connexions d'application à la base de données.

Sur le serveur de base de données, Oracle Net inclut un processus actif appelé Oracle Net Listener, qui est responsable de
la coordination des connexions entre la base de données et les applications externes.

L'utilisation la plus courante d'Oracle Net Services consiste à autoriser les connexions entrantes à la base de données.
Vous pouvez configurer des services réseau supplémentaires pour autoriser l'accès aux bibliothèques de code externes
(EXTPROC) et pour connecter l'instance Oracle à des sources de données non Oracle via Oracle Heterogeneous Services.

Oracle Database 19c : Atelier d'administration 7 ­ 4


Machine Translated by Google

Définition des composants Oracle Net Services

Désignation du composant Déposer

Les auditeurs Un processus qui réside sur le serveur dont la responsabilité [Link]

est d'écouter les demandes de connexion client entrantes


et de gérer le trafic vers le serveur

Méthodes Méthode de résolution utilisée par une application


de nommage cliente pour résoudre un identifiant de connexion en un
descripteur de connexion lors d'une tentative de connexion
à un service de base de données

Nommage ( nom Un nom simple (identifiant de connexion) pour [Link]


du service réseau) un service qui se résout en un descripteur de
connexion pour identifier l'emplacement du réseau ( configuration locale)
et l'identification d'un service

Profils Une collection de paramètres qui spécifie les [Link]


préférences d'activation et de configuration
Fonctionnalités Oracle Net sur le client ou le serveur

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les composants Oracle Net Services suivants peuvent être configurés à l'aide d'Enterprise Manager Cloud
Contrôle et Oracle Net Manager :

Écouteur : la configuration de l'écouteur inclut la spécification du nom de l'écouteur, des adresses de
protocole sur lesquelles il accepte les demandes de connexion et des services (service de base de données
ou hors base de données) qu'il écoute. • Méthodes de nommage • Nommage (nom du service réseau)

• Profils

L'assistant de configuration Oracle Net configure le programme d'écoute, les méthodes de dénomination, l'utilisation du
serveur d'annuaire et un fichier [Link] local lors de l'installation du logiciel Oracle Database.

Oracle Database 19c : Atelier d'administration 7 ­ 5


Machine Translated by Google

Outils de configuration et de gestion des services Oracle Net

• Enterprise Manager Cloud Control •


Oracle Net Manager • Oracle Net
Configuration Assistant • Utilitaire de
contrôle d'écoute

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Utilisez les outils et applications suivants pour gérer votre configuration Oracle Network :
• Enterprise Manager Cloud Control : Fournit un environnement intégré pour la configuration et la gestion
d'Oracle Net Services. Utilisez Enterprise Manager pour configurer Oracle Net Services pour n'importe quel
répertoire d'accueil Oracle sur plusieurs systèmes de fichiers et administrer les écouteurs. • Oracle Net
Manager : Fournit une interface utilisateur graphique (GUI) à travers laquelle vous pouvez configurer Oracle Net
Services pour un accueil Oracle sur un client local ou un serveur hôte
• Oracle Net Configuration Assistant : lancé par Oracle Universal Installer lorsque vous installez le logiciel Oracle.
Au cours d'une installation de base de données typique, Oracle Net Configuration Assistant configure
automatiquement un programme d'écoute appelé LISTENER qui possède une adresse de protocole d'écoute
TCP/IP pour la base de données. Si vous effectuez une installation personnalisée, Oracle Net Configuration
Assistant vous invite à configurer un nom d'écouteur et une adresse de protocole de votre choix.
• Utilitaire de contrôle d'écoute : utilisé pour démarrer, arrêter et afficher l'état du processus d'écoute

Oracle Database 19c : Atelier d'administration 7 ­ 6


Machine Translated by Google

Oracle Net Listener : Présentation

Auditeur
Gestionnaire d'entreprise
Contrôle en nuage ou
Gestionnaire de réseau Oracle
Bases de données Oracle

Fichiers de

configuration Oracle Net

<ORACLE_HOME>/network/admin/[Link] ./[Link]

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Net Listener (ou simplement l'écouteur) est la passerelle vers l'instance Oracle pour toutes les connexions utilisateur non locales.
Un seul écouteur peut desservir plusieurs instances de base de données et des milliers de connexions client.

Vous pouvez utiliser Enterprise Manager Cloud Control ou Oracle Net Manager pour configurer le programme d'écoute et spécifier les
emplacements des fichiers journaux.

Les administrateurs avancés peuvent également configurer Oracle Net Services en modifiant manuellement les fichiers de configuration, si
nécessaire, avec un éditeur de texte de système d'exploitation standard tel que vi ou gedit.

Oracle Database 19c : Atelier d'administration 7 ­ 7


Machine Translated by Google

L'écouteur par défaut

• Lors de la création d'une base de données Oracle, l'utilitaire Oracle Net Configuration Assistant crée un écouteur
local nommé LISTENER.

• LISTENER est automatiquement renseigné avec les services de base de données disponibles via une fonctionnalité
appelé enregistrement de service dynamique.

• LISTENER écoute sur l'adresse de protocole TCP/IP suivante :

ADRESSE=(PROTOCOLE=tcp)(HÔTE=nom_hôte)(PORT=1521))

• Sans aucune configuration, vous pouvez accéder à votre instance de base de données immédiatement via
AUDITEUR.

• Si le nom du programme d'écoute est LISTENER et qu'il ne peut pas être résolu, une adresse de
protocole TCP/IP et un numéro de port 1521 sont supposés.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Étant donné que les paramètres de configuration du fichier [Link] ont des valeurs par défaut, il est possible de démarrer
et d'utiliser un écouteur sans configuration. Ce programme d'écoute par défaut porte le nom de LISTENER, ne prend en
charge aucun service au démarrage et écoute sur l'adresse de protocole TCP/IP suivante :

(ADRESSE=(PROTOCOLE=tcp)(HÔTE=nom_hôte)(PORT=1521))

Oracle Database 19c : Atelier d'administration 7 ­ 8


Machine Translated by Google

Comparaison de l'architecture des serveurs dédiés et partagés

Serveur dédié

Processus serveur

Client ou
Un processus
Processus serveur
niveau serveur pour
intermédiaire
chaque client
Processus serveur

Serveur partagé
Processus serveur
Piscine de
serveur
Répartiteurs
Navigateur Web processus
pour les
clients

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Configuration de serveur dédié Dans une

configuration de serveur dédié, comme illustré dans la diapositive, un processus serveur gère les demandes d'un processus client
unique. Chaque processus serveur utilise des ressources système, y compris des cycles CPU et de la mémoire. Dans un système
fortement chargé, les ressources mémoire et CPU utilisées par les processus serveur dédiés peuvent être prohibitives et affecter
négativement l'évolutivité du système. Si votre système est affecté négativement par les demandes de ressources de l'architecture de
serveur dédié, vous disposez des options suivantes :


Augmentez les ressources système en ajoutant plus de mémoire et une capacité CPU supplémentaire
• Utiliser l'architecture Oracle Shared Server Process

Configuration de serveur partagé

Une configuration de serveur partagé, comme illustré dans la diapositive, permet à plusieurs processus client de partager un petit
nombre de processus serveur. Chaque service qui participe à l'architecture de processus de serveur partagé a au moins un processus
répartiteur (et généralement plus). Lorsqu'une demande de connexion arrive, le programme d'écoute ne génère pas de processus
serveur dédié. Au lieu de cela, l'écouteur gère une liste de répartiteurs disponibles pour chaque nom de service, ainsi que la charge
de connexion (nombre de connexions simultanées) pour chaque répartiteur. Les demandes de connexion sont acheminées vers le
répartiteur le moins chargé qui dessert un nom de service donné. Les utilisateurs restent connectés au même répartiteur pendant
toute la durée d'une session.

Contrairement aux processus de serveur dédié, un seul répartiteur peut gérer des centaines de connexions d'utilisateurs.
Les répartiteurs ne gèrent pas réellement le travail des demandes des utilisateurs. Au lieu de cela, ils transmettent les demandes
des utilisateurs à une file d'attente commune située dans la partie pool partagé de la SGA. Les processus de serveur partagé
prennent en charge la majeure partie du travail des processus de serveur dédié, extrayant les demandes de la file d'attente et les
traitant jusqu'à ce qu'elles soient terminées.

Oracle Database 19c : Atelier d'administration 7 ­ 9


Machine Translated by Google

Résumé

Dans cette leçon, vous devriez avoir appris à :

• Lister les composants d'Oracle Net Services • Expliquer

le fonctionnement des écouteurs


• Décrire les outils utilisés pour administrer Oracle Net Services

• Expliquer la différence entre les configurations de serveur dédié et partagé

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 7 ­ 10


Machine Translated by Google

Configuration des méthodes de dénomination

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

À la fin de cette leçon, vous devriez être en mesure de : • Décrire

les méthodes de dénomination d'Oracle Net Services • Configurer

la dénomination locale pour les connexions à la base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 8 ­ 2


Machine Translated by Google

Établissement de connexions réseau Oracle

Pour établir une connexion client ou de niveau intermédiaire, Oracle Net exige que le client connaisse :
• Hôte sur lequel le programme d'écoute
s'exécute • Port surveillé par le programme
d'écoute • Protocole utilisé par le programme
d'écoute • Nom du service géré par le programme d'écoute

Résolution des noms

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Pour qu'une application se connecte à un service via Oracle Net Listener, elle doit disposer d'informations sur ce service,
notamment l'adresse ou l'hôte sur lequel réside l'écouteur, le protocole accepté par l'écouteur et le port surveillé par
l'écouteur. Une fois l'écouteur localisé, la dernière information dont l'application a besoin est le nom du service auquel elle
souhaite se connecter.

La résolution des noms Oracle Net est le processus de détermination de ces informations de connexion.

Oracle Database 19c : Atelier d'administration 8 ­ 3


Machine Translated by Google

Connexion à une instance de base de données Oracle

Serveur de base de données

[Link]

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Une base de données Oracle est présentée à un client en tant que service. Une base de données peut être associée à
un ou plusieurs services. Les bases de données sont identifiées par un nom de service spécifié par le paramètre
SERVICE_NAMES dans le fichier de paramètres d'initialisation. Le nom de service est par défaut le nom global de la
base de données, qui est un nom qui comprend le nom de la base de données (valeur du paramètre DB_NAME) et le
nom de domaine (valeur du paramètre DB_DOMAIN).

Pour se connecter à un service de base de données, les clients utilisent un descripteur de connexion qui fournit l'emplacement de la
base de données et le nom du service de base de données. Les clients peuvent utiliser le descripteur de connexion ou un nom qui se
résout en descripteur de connexion (comme expliqué plus loin dans cette leçon).

L'exemple suivant montre un descripteur de connexion qui permet aux clients de se connecter à un service de
base de données appelé [Link].
(DESCRIPTION=

(ADRESSE=(PROTOCOLE=tcp)(HÔTE=serveur­fleurs)(PORT=1521))

(CONNECT_DATA=
(SERVICE_NAME=[Link])))

Oracle Database 19c : Atelier d'administration 8 ­ 4


Machine Translated by Google

Résolution de nom

CONNECTER jsmith/jspass@finflowers

Résolution de nom

nageoires =(DESCRIPTION=
(ADRESSE=(PROTOCOLE=tcp)(HÔTE=serveur­fleurs)(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=[Link])))

AUDITEUR
finance
port 1521

serveur­de­fleurs

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les utilisateurs lancent une demande de connexion à l'instance de base de données Oracle en envoyant une chaîne de
connexion. Une chaîne de connexion comprend un nom d'utilisateur et un mot de passe, ainsi qu'un identifiant de connexion. Un
identificateur de connexion peut être le descripteur de connexion lui­même ou un nom qui se résout en un descripteur de connexion.
L'un des identifiants de connexion les plus courants est un nom de service réseau, qui est un nom simple pour un service.

Lorsqu'un nom de service réseau est utilisé, le traitement de la connexion s'effectue en mappant le nom du service réseau à
un descripteur de connexion. Les informations de mappage peuvent être stockées dans un ou plusieurs référentiels d' informations
et sont résolues à l'aide d'un procédé de dénomination.

Oracle Database 19c : Atelier d'administration 8 ­ 5


Machine Translated by Google

Établir une connexion

Auditeur
Demande de connexion
entrante

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Une fois la résolution des noms Oracle Net terminée, une demande de connexion est transmise
de l'application utilisateur ou intermédiaire (ci­après appelée processus utilisateur) à l'écouteur.
L'écouteur reçoit un paquet CONNECT et vérifie si ce paquet CONNECT demande un service Oracle Net valide
nom.
Si le nom du service n'est pas demandé (comme dans le cas d'une demande tnsping), l'écouteur accuse réception de la
demande de connexion et ne fait rien d'autre. Si un nom de service non valide est demandé, le programme d'écoute
transmet un code d'erreur au processus utilisateur.

Oracle Database 19c : Atelier d'administration 8 ­ 6


Machine Translated by Google

Sessions utilisateur

Serveur
processus

Session utilisateur PGA

Processus utilisateur

Auditeur

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Si le paquet CONNECT demande un nom de service valide, l'écouteur génère un nouveau processus pour gérer la connexion. Ce
nouveau processus est appelé processus serveur. L'écouteur se connecte au processus et transmet les informations d'initialisation, y
compris les informations d'adresse pour le processus utilisateur. À ce stade, l'écouteur ne s'occupe plus de la connexion et tout le travail
est transmis au processus serveur.

Le processus serveur vérifie les informations d'authentification de l'utilisateur (généralement un mot de passe), et si les
informations d'identification sont valides, une session utilisateur est créée.

Processus serveur dédié : une fois la session établie, le processus serveur agit désormais en tant qu'agent de l'utilisateur sur le serveur.
Le processus serveur est chargé de : Analyser et exécuter toutes les instructions SQL émises via l'application • Vérifier le cache de la

mémoire tampon de la base de données pour les blocs de données requis pour exécuter les instructions SQL • Si nécessaire,

lire les blocs de données nécessaires à partir des fichiers de données sur le disque dans la base de données

partie du cache de tampon de la zone globale du système (SGA), si les blocs ne sont pas déjà présents dans la SGA

• Gestion de toutes les activités de tri. La zone de tri est une zone de mémoire utilisée pour travailler avec le tri ; il est contenu dans
une portion de mémoire qui est associée à la zone globale de programme (PGA).

Renvoyer les résultats au processus utilisateur de manière à ce que l'application puisse traiter les informations

• Lecture des options d'audit et rapport des processus utilisateur à la destination de l'audit

Oracle Database 19c : Atelier d'administration 8 ­ 7


Machine Translated by Google

Méthodes de dénomination

Oracle Net prend en charge plusieurs méthodes pour résoudre les informations de connexion :

• Dénomination de connexion facile : utilise une chaîne de connexion TCP/IP • Dénomination

locale : utilise un fichier de configuration local • Dénomination de répertoire : utilise un serveur

de répertoire centralisé compatible LDAP

Client/serveur d'applications
Réseau Oracle

Fichiers de
configuration OracleNet

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Net prend en charge les méthodes de dénomination suivantes :


• Attribution de nom Easy Connect : la méthode d'attribution de nom Easy Connect permet aux clients de se connecter à
une instance Oracle Database à l'aide d'une chaîne de connexion TCP/IP composée d'un nom d'hôte, d'un port
facultatif et d'un nom de service comme suit : CONNECT username/password@host[ : port][/service_name]

La méthode de nommage Easy Connect ne nécessite aucune configuration.


• Dénomination locale : la méthode de dénomination locale stocke les descripteurs de connexion (identifiés par leur nom
de service réseau) dans un fichier de configuration local nommé [Link] sur le client.

Nommage d'annuaire : pour accéder à un service de base de données, la méthode de nommage d'annuaire
stocke les identifiants de connexion dans un serveur d'annuaire centralisé conforme au protocole LDAP
(Lightweight Directory Access Protocol).

Nommage externe : la méthode de nommage externe stocke les noms de service réseau dans un service de
nommage non Oracle pris en charge. Les services tiers pris en charge incluent : ­ Network Information Service (NIS)
External Naming Distributed Computing Environment (DCE) Cell Directory Services (CDS)

Oracle Database 19c : Atelier d'administration 8 ­ 8


Machine Translated by Google

Connexion facile

• Est activé par défaut • Ne

nécessite aucune configuration côté client • Prend

uniquement en charge TCP/IP (pas de SSL) •

N'offre aucune prise en charge des options de connexion avancées telles que :
– Basculement au moment de la connexion

– Routage source
SQL> CONNECT hr/hr@[Link]/dba11g
– Équilibrage de charge

Aucun fichier de
configuration Oracle Net

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Avec Easy Connect, vous fournissez toutes les informations requises pour la connexion Oracle Net dans le cadre de
la chaîne de connexion. Les chaînes de connexion Easy Connect prennent la forme suivante :
<nom d'utilisateur>/<mot de passe>@<nom d'hôte> :<port d'écoute>/<nom du service>

Le port d'écoute et le nom du service sont facultatifs. Si le port d'écoute n'est pas fourni, Oracle Net suppose
que le port par défaut 1521 est utilisé. Si le nom du service n'est pas fourni, Oracle Net suppose que le nom du service
de base de données et le nom d'hôte fournis dans la chaîne de connexion sont identiques.

En supposant que l'écouteur utilise TCP pour écouter sur le port 1521 et les paramètres d'instance
SERVICE_NAMES=db et DB_DOMAIN=[Link], la chaîne de connexion affichée dans la diapositive peut être
raccourcie :
SQL> connectez hr/hr@[Link]

Remarque : Le paramètre d'initialisation SERVICE_NAMES peut accepter plusieurs valeurs séparées par des virgules.
Une seule de ces valeurs doit être db pour que ce scénario fonctionne.

Oracle Database 19c : Atelier d'administration 8 ­ 9


Machine Translated by Google

Dénomination locale

• Nécessite un fichier de résolution de noms côté client •

Prend en charge tous les protocoles Oracle Net • Prend en

charge les options de connexion avancées telles que :


– Basculement au moment de la connexion

– Routage source
– Équilibrage de charge

SQL> CONNECT hr/hr@orcl

Fichiers de
configuration OracleNet

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Avec la dénomination locale, l'utilisateur fournit un alias pour le service Oracle Net. Oracle Net vérifie l'alias par rapport à une liste locale
de services connus et, s'il trouve une correspondance, convertit l'alias en hôte, protocole, port et nom de service.

L'un des avantages de la dénomination locale est que les utilisateurs de la base de données n'ont besoin de se souvenir que d'un court
alias plutôt que de la longue chaîne de connexion requise par Easy Connect.

La liste locale des services connus est stockée dans le fichier texte de configuration suivant :

<oracle_home>/network/admin/[Link] Il s'agit de l'emplacement

par défaut du fichier [Link], mais le fichier peut être situé ailleurs à l'aide de la variable d'environnement TNS_ADMIN.

La dénomination locale est appropriée pour les organisations dans lesquelles les configurations de service Oracle Net ne
changent pas souvent.

Oracle Database 19c : Atelier d'administration 8 ­ 10


Machine Translated by Google

Dénomination du répertoire

• Requiert LDAP avec les informations de résolution de noms Oracle Net chargées :
– Annuaire Internet Oracle
– Services Microsoft Active Directory
• Prend en charge tous les protocoles Oracle

Net • Prend en charge les options de connexion avancées

Annuaire LDAP

SQL> CONNECT hr/hr@orcl


Fichiers de
configuration OracleNet

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Avec la dénomination de répertoire, l'utilisateur fournit un alias pour le service Oracle Net. Oracle Net vérifie l'alias par rapport à
une liste externe de services connus et, s'il trouve une correspondance, convertit l'alias en hôte, protocole, port et nom de service.
Comme pour le nommage local, les utilisateurs de la base de données n'ont besoin de se souvenir que d'un court alias.

La dénomination d'annuaire est appropriée pour les organisations dans lesquelles les configurations de service Oracle Net changent
fréquemment.

Oracle Database 19c : Atelier d'administration 8 ­ 11


Machine Translated by Google

Utilisation des services de base de données pour gérer les charges de travail

[Link]

Serveur de base de données


[Link]

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Un service de base de données est une représentation nommée d'une charge de travail ou d'une application spécifique hébergée par une ou
plusieurs instances de base de données. Les services vous permettent de regrouper les charges de travail de la base de données et d'acheminer
une demande de travail particulière vers une instance appropriée.

L'association de plusieurs services à une seule base de données permet la fonctionnalité suivante : •
Une seule base de données peut être identifiée de différentes manières par différents clients. •
Les ressources système peuvent être limitées ou réservées. Ce niveau de contrôle permet une meilleure allocation des
ressources aux clients qui demandent l'un des services.

Vous pouvez définir des services pour les PDB. Chaque nom de service de base de données doit être unique dans un
CDB, et chaque nom de service de base de données doit être unique dans la portée de tous les CDB dont les instances sont
atteintes via un écouteur spécifique.

Oracle Database 19c : Atelier d'administration 8 ­ 12


Machine Translated by Google

Création de services de base de données

DBMS_SERVICE.CREATE_SERVICE

Service

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez définir un service à l'aide du package DBMS_SERVICE, puis utiliser le nom du service réseau pour
affecter des applications à un service.
Si votre base de données à instance unique est gérée par Oracle Restart ou si votre base de données Oracle RAC
est gérée par Oracle Clusterware, vous devez utiliser l'utilitaire Server Control (SRVCTL) pour créer, modifier ou
supprimer le service.

Oracle Database 19c : Atelier d'administration 8 ­ 13


Machine Translated by Google

Résumé
Dans cette leçon, vous devriez avoir appris à :

• Décrire les méthodes de dénomination d'Oracle Net Services •

Configurer la dénomination locale pour les connexions à la base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 8 ­ 14


Machine Translated by Google

Aperçu de la pratique

Cette pratique couvre les rubriques suivantes : •

Configuration du réseau Oracle pour accéder à une base de données

• Création d'un nom de service réseau pour une PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 8 ­ 15


Machine Translated by Google
Machine Translated by Google

9
Configurer et administrer le
Auditeur

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure de :

• Expliquer le fonctionnement des

écouteurs • Configurer les écouteurs pour l'enregistrement de service dynamique ou statique

Copyright © 2019, Oracle et/ou ses sociétés affiliées. 1­2

Oracle Database 19c : Atelier d'administration 9 ­ 2


Machine Translated by Google

Révision : présentation d'Oracle Net Services

Réseau
Application TCP/IP SGBDR

Réseau Oracle Réseau Oracle

Client ou
Auditeur Serveur de base de données
niveau intermédiaire

Fichiers de Fichiers de

configuration OracleNet configuration OracleNet

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Net Services permet des connexions réseau entre une application cliente ou de niveau intermédiaire et le serveur
Oracle. Une fois qu'une session réseau est établie, Oracle Net agit en tant que transporteur de données pour l'application
cliente et le serveur de base de données. Il est chargé d'établir et de maintenir la connexion entre l'application cliente et le
serveur de base de données, ainsi que d'échanger des messages entre eux.
Oracle Net (ou quelque chose qui simule Oracle Net, comme Java Database Connectivity) est situé sur chaque ordinateur
qui doit communiquer avec le serveur de base de données.

Sur l'ordinateur client, Oracle Net est un composant d'arrière­plan pour les connexions d'application à la base de données.

Sur le serveur de base de données, Oracle Net inclut un processus actif appelé Oracle Net Listener, qui est responsable de
la coordination des connexions entre la base de données et les applications externes.

L'utilisation la plus courante d'Oracle Net Services consiste à autoriser les connexions entrantes à la base de données.
Vous pouvez configurer des services réseau supplémentaires pour autoriser l'accès aux bibliothèques de code externes
(EXTPROC) et pour connecter l'instance Oracle à des sources de données non Oracle via Oracle Heterogeneous Services.

Oracle Database 19c : Atelier d'administration 9 ­ 3


Machine Translated by Google

Oracle Net Listener : Présentation

Auditeur
Gestionnaire d'entreprise
Contrôle en nuage ou
Gestionnaire de réseau Oracle
Bases de données Oracle

Fichiers de

configuration Oracle Net

<ORACLE_HOME>/network/admin/[Link] ./[Link]

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Net Listener (ou simplement l'écouteur) est la passerelle vers l'instance Oracle pour toutes les connexions utilisateur non locales.
Un seul écouteur peut desservir plusieurs instances de base de données et des milliers de connexions client.

Vous pouvez utiliser Enterprise Manager Cloud Control ou Oracle Net Manager pour configurer le programme d'écoute et spécifier les
emplacements des fichiers journaux.

Les administrateurs avancés peuvent également configurer Oracle Net Services en modifiant manuellement les fichiers de configuration, si
nécessaire, avec un éditeur de texte de système d'exploitation standard tel que vi ou gedit.

Oracle Database 19c : Atelier d'administration 9 ­ 4


Machine Translated by Google

L'écouteur par défaut

• Lors de la création d'une base de données Oracle, l'assistant de configuration Oracle Net
crée un écouteur local nommé LISTENER.

• LISTENER est automatiquement renseigné avec les services de base de données disponibles via un
fonctionnalité appelée enregistrement de service dynamique.

• LISTENER écoute sur l'adresse de protocole TCP/IP suivante :

ADRESSE=(PROTOCOLE=tcp)(HÔTE=nom_hôte)(PORT=1521))

• Sans aucune configuration, vous pouvez accéder immédiatement à votre instance de base de données
via AUDITEUR.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le programme d'écoute par défaut porte le nom de LISTENER, ne gère aucun service au démarrage et écoute sur
l'adresse de protocole TCP/IP suivante :
(ADRESSE=(PROTOCOLE=tcp)(HÔTE=nom_hôte)(PORT=1521))

Oracle Database 19c : Atelier d'administration 9 ­ 5


Machine Translated by Google

Configuration de l'enregistrement de service dynamique

• Par défaut, une instance de base de données Oracle est configurée pour utiliser un service dynamique
registration (enregistrement de service), qui permet à l'instance de base de données Oracle d'identifier
automatiquement ses services disponibles auprès des listeners.

• Le processus LREG interroge les programmes d'écoute pour voir s'ils sont en cours d'exécution et, si c'est le cas,
enregistre les informations de service de la base de données.

• L'enregistrement de service dynamique enregistre, par défaut, tous les services PDB sur le même écouteur.
Si vous arrêtez cet écouteur, vous arrêtez l'accès à tous les services PDB.

• Étapes générales pour configurer l'enregistrement de service dynamique :


– Assurez­vous que INSTANCE_NAME , LOCAL_LISTENER, REMOTE_LISTENER et
Les paramètres d'initialisation SERVICE_NAMES sont correctement configurés.
– Configurez les adresses de protocole (points de terminaison) dans le fichier [Link] côté serveur.

• Utilisez la commande ALTER SYSTEM REGISTER pour lancer l'enregistrement du service immédiatement après le démarrage
du programme d'écoute.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Avantages de l'enregistrement dynamique des services

L'inscription au service offre les avantages suivants :

• Basculement au moment de la connexion : étant donné que l'écouteur surveille toujours l'état des instances, l'enregistrement du
service facilite le basculement automatique d'une demande de connexion client vers une autre instance si une instance est en
panne.

• Équilibrage de la charge de connexion : l'enregistrement du service permet à l'écouteur de transférer les demandes de connexion
client vers l'instance et le répartiteur ou le serveur dédié les moins chargés. L'enregistrement de service équilibre la charge
entre les gestionnaires de service et les nœuds.

Haute disponibilité pour Oracle Real Application Clusters et Oracle Data Guard
Le rôle du processus LREG

Le processus d'enregistrement des écouteurs (LREG) interroge les écouteurs pour voir s'ils sont en cours d'exécution et, si c'est
le cas, enregistre les informations de service de base de données suivantes :
• Nom de l'instance de base de données

• Les noms de service de base de données disponibles sur l'instance de base de données (par exemple,
[Link] et [Link])
• Charge actuelle et maximale de l'instance de base de données

Gestionnaires de services (répartiteurs et serveurs dédiés) disponibles pour l'instance de base de données

LREG s'enregistre auprès des écouteurs une fois que l'instance de base de données a monté la base de données et toutes les
60 secondes par la suite. Vous pouvez utiliser la commande ALTER SYSTEM REGISTER pour lancer l'enregistrement du service
immédiatement après le démarrage du programme d'écoute.

Oracle Database 19c : Atelier d'administration 9 ­ 6


Machine Translated by Google

Comment configurer l'enregistrement de service dynamique Le

processus LREG apprend les programmes d'écoute disponibles via les paramètres LOCAL_LISTENER et
REMOTE_LISTENER. Ces paramètres spécifient des noms d'alias d'écouteurs pour les écouteurs locaux et distants. Les deux
paramètres peuvent avoir plusieurs valeurs. Ces alias sont résolus en adresses de protocole (points de terminaison) dans le fichier
[Link] côté serveur.

Remarque : Les clients peuvent également disposer d'un fichier [Link], que vous découvrirez dans une leçon ultérieure.

Grâce à l'enregistrement dynamique des services, le processus LREG est alors en mesure de transmettre des informations sur les
services de base de données disponibles à tous les auditeurs sur ces points d'extrémité.

Par exemple, supposons que LOCAL_LISTENER = LISTENER_HOST1 et REMOTE_LISTENER = LISTENER_HOST2.


Dans le fichier [Link], les alias LISTENER_HOST1 et LISTENER_HOST2 sont résolus en deux points de terminaison
différents sur deux machines différentes. Notez que la section CONNECT_DATA n'est pas incluse.

LISTENER_HOST1 =
(ADRESSE = (PROTOCOLE = TCP)(HÔTE = hô[Link])(PORT = 1521))

LISTENER_HOST2 =

(ADRESSE = (PROTOCOLE = TCP)(HÔTE = hô[Link])(PORT = 1521))

Pour que l'enregistrement de service dynamique fonctionne correctement, assurez­vous que les paramètres
INSTANCE_NAME, LOCAL_LISTENER, REMOTE_LISTENER et SERVICE_NAMES sont correctement configurés.
Par défaut, le programme d'installation remplit le paramètre SERVICE_NAME avec le nom de base de données global (par exemple,
[Link]), qui fournit un nom de service de base de données que les utilisateurs peuvent utiliser pour accéder à l'instance
de base de données. Vous pouvez toutefois spécifier plusieurs noms de service pour l'instance de base de données si vous souhaitez
faire la distinction entre différentes utilisations de la même base de données. Oracle Database Resource Manager vous permet
d'afficher des informations sur l'activité de l'utilisateur pour chaque nom de service.

L'enregistrement de service dynamique n'utilise pas le fichier [Link].

Oracle Database 19c : Atelier d'administration 9 ­ 7


Machine Translated by Google

Configuration de l'enregistrement de service statique

• L'enregistrement de service statique est une méthode de configuration des auditeurs pour obtenir leur service
informations manuellement.
– Vous pouvez créer un écouteur pour un PDB particulier.
– L'enregistrement de service statique peut être requis pour certains services, tels que les
procédures externes et les services hétérogènes (pour les systèmes autres qu'Oracle).

• Avec l'enregistrement statique, l'écouteur ne sait pas si ses services de base de données existent ou non. Il sait
seulement qu'il les soutient. L'utilitaire Listener Control affiche l' état des services comme UNKNOWN.

• Étapes générales pour configurer l'enregistrement de service statique :


1. Dans [Link], définissez un écouteur et ses adresses de protocole.
2. Dans [Link], créez également une section SID_LIST_<listener name> qui répertorie les
services de base de données pour le listener.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Avantages de l'enregistrement de service statique

Voici quelques avantages de l'utilisation de l'enregistrement de service statique :



L'enregistrement de service statique vous permet de créer un écouteur pour un PDB particulier. • Parfois,

vous pouvez avoir besoin que l'instance de base de données soit opérationnelle sans que personne ne puisse se connecter. Dès
son démarrage, l'enregistrement dynamique des services commencera automatiquement à enregistrer tous les services de
base de données sur le programme d'écoute, rendant l'instance de base de données disponible pour
utilisateurs.

• Il existe également une différence dans les messages d'erreur renvoyés entre un écouteur statique (qui peut pointer vers un
service de base de données arrêté) et une entrée d'écouteur dynamique (qui indique qu'il n'existe pas) lorsque l'instance
de base de données est arrêtée. Le premier cas connaît l'existence du service de base de données et vous donne un
message d'erreur avec des informations utiles. Le deuxième cas n'a aucune information et ne peut pas faire la distinction
entre une faute de frappe que vous avez peut­être faite dans le nom du service et si elle existe réellement.

Utilisation requise de l'enregistrement de service statique

L'inscription au service statique est requise pour les éléments suivants :

• Utilisation d'appels de procédures externes •

Utilisation d'Oracle Heterogeneous Services


• Utilisation d'Oracle Data Guard
• Démarrage à distance de la base de données à partir d'un outil autre qu'Oracle Enterprise Manager Cloud Control

Oracle Database 19c : Atelier d'administration 9 ­ 8


Machine Translated by Google

Comment configurer l'enregistrement de service statique

Pour créer un écouteur statique, vous configurez le fichier [Link]. Dans ce fichier, vous définissez deux sections.
Tout d'abord, définissez le programme d'écoute et ses adresses de protocole. Ensuite, créez une section SID_LIST_<listener
name> qui répertorie les services de base de données pour l'écouteur. Pour chaque service, incluez les paramètres suivants :
• GLOBAL_DBNAME : le nom du service de la PDB (par exemple, [Link]) • ORACLE_HOME : le répertoire

d'accueil Oracle • SID_NAME : le nom de votre instance de base de données (par exemple, ORCL)

Par défaut, le fichier [Link] est stocké dans le répertoire $ORACLE_HOME/network/admin sur la machine de l'instance de
base de données.

LISTENER_SALESPDBS =

(DESCRIPTION_LIST =
(DESCRIPTIF =

(ADRESSE = (PROTOCOLE = TCP)(HÔTE = hô[Link])(PORT = 1561))

))

SID_LIST_LISTENER_SALESPDBS =

(SID_LIST =

(SID_DESC =

(GLOBAL_DBNAME = [Link])

(SID_NAME = ORCL)

(ORACLE_HOME = /u01/app/oracle/product/12.2.0/dbhome_1)
)

(SID_DESC =

(GLOBAL_DBNAME = [Link])

(SID_NAME = ORCL)

(ORACLE_HOME = /u01/app/oracle/product/12.2.0/dbhome_1)
)

Oracle Database 19c : Atelier d'administration 9 ­ 9


Machine Translated by Google

Résumé
Dans cette leçon, vous devriez avoir appris à :

• Expliquer le fonctionnement des

écouteurs • Configurer les écouteurs pour l'enregistrement de service dynamique ou statique

Copyright © 2019, Oracle et/ou ses sociétés affiliées. 1 ­ 10

Oracle Database 19c : Atelier d'administration 9 ­ 10


Machine Translated by Google

Aperçu de la pratique

Cet exercice pratique couvre les rubriques


suivantes : • Exploration de l'écouteur par défaut
• Création d'un deuxième écouteur • Connexion
à un service de base de données à l'aide du nouvel écouteur

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 9 ­ 11


Machine Translated by Google
Machine Translated by Google

dix

Configuration d'un serveur partagé


Architecture

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure de :

• Expliquer la différence entre les configurations de serveur dédié et partagé


• Activer le serveur partagé

• Contrôler les opérations du serveur partagé

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

l'instructeur.
exclusif
l'usage
de
À

document
distribué.
être
pas
doit
Ce
ne

Oracle Database 19c : Atelier d'administration 10 ­ 2


Machine Translated by Google

Architecture de serveur partagé : Présentation

• Quand devriez­vous envisager de configurer l'architecture de serveur partagé ?


– Le système est surchargé.
– Le système a une mémoire limitée.

• Comment l'architecture de serveur partagé résout­elle ces problèmes ?


– Les processus client partagent les processus serveur.
– Peu de processus sont nécessaires pour prendre en charge la charge client.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Lorsque la charge du client sollicite la mémoire et d'autres ressources système, vous pouvez peut­être
atténuer les problèmes de charge en implémentant l'architecture de serveur partagé. Cette architecture permet aux
processus client de partager des processus serveur, ce qui augmente le nombre d'utilisateurs pris en charge. Un
petit pool de processus serveur peut servir un grand nombre de clients. Ceci est utile lorsqu'un système est
surchargé ou a une mémoire limitée.

Oracle Database 19c : Atelier d'administration 10 ­ 3


Machine Translated by Google

Comparaison de l'architecture de serveur dédié et partagé : examen

Serveur dédié

Processus serveur

Client ou
Un processus
Processus serveur
niveau serveur pour
intermédiaire
chaque client
Processus serveur

Serveur partagé
Processus serveur
Piscine de
serveur
Répartiteurs
Navigateur Web processus
pour les
clients

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Configuration de serveur dédié Dans une

configuration de serveur dédié, comme illustré dans la diapositive, un processus serveur gère les demandes d'un processus client
unique. Chaque processus serveur utilise des ressources système, y compris des cycles CPU et de la mémoire. Dans un système
fortement chargé, les ressources mémoire et CPU utilisées par les processus serveur dédiés peuvent être prohibitives et affecter
négativement l'évolutivité du système. Si votre système est affecté négativement par les demandes de ressources de l'architecture de
serveur dédié, vous disposez des options suivantes :


Augmentez les ressources système en ajoutant plus de mémoire et une capacité CPU supplémentaire
• Utiliser l'architecture Oracle Shared Server Process

Configuration de serveur partagé

Une configuration de serveur partagé, comme illustré dans la diapositive, permet à plusieurs processus client de partager un petit
nombre de processus serveur. Chaque service qui participe à l'architecture de processus de serveur partagé a au moins un processus
répartiteur (et généralement plus). Lorsqu'une demande de connexion arrive, le programme d'écoute ne génère pas de processus
serveur dédié. Au lieu de cela, l'écouteur gère une liste de répartiteurs disponibles pour chaque nom de service, ainsi que la charge
de connexion (nombre de connexions simultanées) pour chaque répartiteur. Les demandes de connexion sont acheminées vers le
répartiteur le moins chargé qui dessert un nom de service donné. Les utilisateurs restent connectés au même répartiteur pendant
toute la durée d'une session.

Contrairement aux processus de serveur dédié, un seul répartiteur peut gérer des centaines de connexions d'utilisateurs.
Les répartiteurs ne gèrent pas réellement le travail des demandes des utilisateurs. Au lieu de cela, ils transmettent les demandes
des utilisateurs à une file d'attente commune située dans la partie pool partagé de la SGA. Les processus de serveur partagé
prennent en charge la majeure partie du travail des processus de serveur dédié, extrayant les demandes de la file d'attente et les
traitant jusqu'à ce qu'elles soient terminées.

Oracle Database 19c : Atelier d'administration 10 ­ 4


Machine Translated by Google

Activation du serveur partagé

• SHARED_SERVERS spécifie le nombre minimum de serveurs partagés qui seront créés


lorsque l'instance est démarrée.

• Activez le serveur partagé en définissant le paramètre d'initialisation SHARED_SERVERS sur


valeur supérieure à 0 dans le fichier de paramètres d'initialisation ou en utilisant la commande ALTER
SYSTEM.

• Si SHARED_SERVERS ne figure pas dans le fichier de paramètres d'initialisation et que DISPATCHERS


est défini sur 1 ou plus, le serveur partagé est activé par défaut.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le paramètre d'initialisation SHARED_SERVERS spécifie le nombre minimum de serveurs partagés que vous souhaitez
créer au démarrage de l'instance. Après le démarrage de l'instance, le serveur Oracle Database peut ajuster
dynamiquement le nombre de serveurs partagés en fonction de l'occupation des serveurs partagés existants et de la
longueur de la file d'attente des demandes.
Si SHARED_SERVERS n'est pas inclus dans le fichier de paramètres d'initialisation au démarrage de la base
de données, mais DISPATCHERS est inclus et spécifie au moins un répartiteur, le serveur partagé est activé. Dans
ce cas, la valeur par défaut pour SHARED_SERVERS est 1.

Oracle Database 19c : Atelier d'administration 10 ­ 5


Machine Translated by Google

Contrôle des opérations de serveur partagé

Paramètre d'initialisation Habitué


DISTRIBUTEURS Configurer les processus de répartiteur

SHARED_SERVERS Spécifiez le nombre initial de serveurs partagés à démarrer et le nombre


minimum de serveurs partagés à conserver

MAX_SHARED_SERVERS Spécifiez le nombre maximum de serveurs partagés pouvant fonctionner


simultanément

SHARED_SERVER_SESSIONS Spécifiez le nombre total de sessions utilisateur de serveur


partagé pouvant s'exécuter simultanément

CIRCUITS Définir une limite maximale sur le nombre de circuits virtuels pouvant être créés
dans la mémoire partagée

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les paramètres d'initialisation suivants sont utilisés pour contrôler les opérations du serveur partagé :
• DISPATCHERS : au moins un processus répartiteur est requis pour une configuration de serveur partagé. Si vous ne
spécifiez pas de répartiteur, mais que vous activez le serveur partagé en définissant SHARED_SERVER sur une
valeur différente de zéro, le serveur Oracle Database crée par défaut un répartiteur pour le protocole TCP.

• SHARED_SERVERS : vous pouvez définir la valeur dans le fichier de paramètres d'initialisation ou utiliser la
commande ALTER SYSTEM pour configurer le nombre initial de serveurs partagés. Après le démarrage de
l'instance, le serveur Oracle Database peut ajuster dynamiquement le nombre de serveurs partagés en fonction
de l'occupation des serveurs partagés existants et de la longueur de la file d'attente des demandes. •
MAX_SHARED_SERVERS : utilisez ce paramètre pour limiter le nombre maximal de serveurs partagés pouvant être
créés automatiquement par PMON. La principale raison de limiter le nombre de serveurs partagés est de réserver
des ressources pour d'autres processus.
• SHARED_SERVER_SESSIONS : utilisez ce paramètre pour limiter le nombre de sessions utilisateur simultanées
sur le serveur partagé. Il vous permet de réserver des sessions de base de données pour des
les serveurs.

• CIRCUITS : vous pouvez utiliser ce paramètre pour protéger la mémoire partagée en limitant le nombre de
circuits virtuels pouvant être créés en mémoire partagée.

Oracle Database 19c : Atelier d'administration 10 ­ 6


Machine Translated by Google

Utilisation SGA et PGA

• Oracle Shared Server : les données de session utilisateur sont conservées dans la SGA.

• Assurez­vous de prendre en compte les exigences de mémoire partagée du serveur lors du dimensionnement de la SGA.

Zone globale du système (SGA) PGA

Le curseur Trier Hacher


Empiler
Zone Zone
État espace
Créer une zone bitmap
Session utilisateur
Données
Zone de fusion bitmap

UGA

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Étant donné qu'une session utilisateur peut avoir des demandes traitées par plusieurs processus de serveur partagé, la plupart des
structures de mémoire qui sont généralement stockées dans le PGA doivent se trouver dans un emplacement de mémoire partagée
(par défaut, dans le pool partagé). Toutefois, si le grand pool est configuré ou si SGA_TARGET est défini pour la gestion automatique
de la mémoire, ces structures de mémoire sont stockées dans la partie grand pool de la SGA.

Le contenu de la SGA et de la PGA est différent dans une configuration de serveur partagé de ceux d' une configuration de
serveur dédié. Dans une configuration de serveur partagé :

Le texte et les formes analysées de toutes les instructions SQL sont stockées dans la SGA

• L'état du curseur contient des valeurs de mémoire d'exécution pour l'instruction SQL, telles que des lignes
récupéré

• Les données de session utilisateur incluent des informations sur la sécurité et l'utilisation des ressources

• L'espace de pile contient des variables locales pour le processus


La modification de la SGA et de la PGA est transparente pour l'utilisateur ; cependant, si vous prenez en charge plusieurs utilisateurs,
vous devez augmenter le paramètre d'initialisation LARGE_POOL_SIZE. Chaque processus de serveur partagé doit accéder aux
espaces de données de toutes les sessions afin que n'importe quel serveur puisse gérer les demandes de n'importe quelle session.
L'espace est alloué dans la SGA pour l'espace de données de chaque session. Vous limitez la quantité d'espace qu'une session peut
allouer en définissant la ressource PRIVATE_SGA.

Remarque : Vous n'avez pas besoin de définir LARGE_POOL_SIZE lorsque la gestion automatique de la mémoire ou la
gestion automatique de la mémoire partagée sont configurées.

Oracle Database 19c : Atelier d'administration 10 ­ 7


Machine Translated by Google

Considérations relatives à la configuration du serveur partagé

Certains types de travail de base de données ne doivent pas être effectués à l'aide de serveurs partagés :

• Administration de la base de données

• Opérations de sauvegarde et de restauration •

Opérations de traitement par lots et de chargement en bloc •

Opérations d'entrepôt de données

Répartiteur Processus de serveur dédié

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Un processus de serveur dédié convient aux requêtes et aux tâches administratives de longue durée et est plus rapide qu'un
processus de serveur partagé dans la mesure où il y a toujours un processus de serveur prêt à travailler. Cependant, un
processus inactif ou un trop grand nombre de processus dédiés peuvent entraîner une utilisation inefficace des ressources.
L'utilisation du mode serveur partagé sur le serveur de base de données élimine le besoin d'un processus de serveur dédié pour
chaque connexion utilisateur, nécessite moins de mémoire pour chaque connexion utilisateur et permet un plus grand nombre
d'utilisateurs sur un système avec une mémoire limitée. Les processus serveur dédiés et les processus serveur partagés sont
activés en même temps. Oracle XML DB (XDB) nécessite des processus de serveur partagés et la base de données Oracle est
déjà configurée pour les utiliser. Vous devrez modifier les paramètres d'initialisation pour que d'autres utilisateurs utilisent des
processus de serveur partagé.

L'architecture Oracle Shared Server est un processus efficace et un modèle d'utilisation de la mémoire, mais elle ne convient
pas à toutes les connexions. En raison de la file d'attente de demandes commune et du fait que de nombreux utilisateurs
peuvent partager une file d'attente de réponses de répartiteur, les serveurs partagés ne fonctionnent pas bien avec les opérations
qui doivent traiter de grands ensembles de données, telles que les requêtes d'entrepôt ou le traitement par lots. Les sessions de
sauvegarde et de récupération qui utilisent Oracle Recovery Manager traitent également de très grands ensembles de données et
doivent utiliser des connexions dédiées. De nombreuses tâches d'administration ne doivent pas (et ne peuvent pas) être effectuées
à l'aide de connexions de serveur partagé. Celles­ci incluent le démarrage et l'arrêt de l'instance, la création d'espaces de table et
de fichiers de données, la maintenance des index et des tables, l'analyse des statistiques et de nombreuses autres tâches
couramment effectuées par le DBA. Toutes les sessions DBA doivent choisir des serveurs dédiés.

Oracle Database 19c : Atelier d'administration 10 ­ 8


Machine Translated by Google

Résumé

Dans cette leçon, vous devriez avoir appris à :

• Expliquer la différence entre les configurations de serveur dédié et partagé


• Activer le serveur partagé

• Contrôler les opérations du serveur partagé

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 10 ­ 9


Machine Translated by Google

Aperçu de la pratique

Cette pratique couvre les rubriques suivantes :


• Configuration du mode serveur partagé •
Configuration des clients pour utiliser un serveur partagé

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 10 ­ 10


Machine Translated by Google

11
Configuration de la connexion Oracle
Responsable Multiplexage et Accès
Contrôle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure de :

• Identifier les fonctionnalités d'Oracle Connection Manager • Décrire

l'architecture d'Oracle Connection Manager • Configurer Oracle

Connection Manager pour le multiplexage de session • Utiliser l'utilitaire Oracle

Connection Manager Control pour administrer


Gestionnaire de connexion Oracle

Copyright © 2019, Oracle et/ou ses sociétés affiliées. 1­2

Base de données Oracle 19c : Atelier d'administration 11 ­ 2


Machine Translated by Google

Gestionnaire de connexion Oracle : Présentation

• Réside généralement sur un serveur distinct •


Fonctionne comme un serveur proxy • Peut
être configuré pour effectuer :
– Filtrage du contrôle d'accès
– Multiplexage de session

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Connection Manager est un composant logiciel qui réside généralement sur son propre ordinateur, séparé du client
d'application et du serveur de base de données Oracle.

Oracle Connection Manager envoie par proxy les requêtes destinées au serveur de base de données. Vous pouvez également
configurer Oracle Connection Manager pour multiplexer les sessions, contrôler l'accès ou convertir les protocoles.

La configuration basée sur des règles peut être utilisée pour fournir un contrôle d'accès et filtrer les demandes des clients.

Lorsqu'il est configuré pour le multiplexage de session, Oracle Connection Manager canalise plusieurs sessions via une seule
connexion de protocole de transport vers un processus de répartiteur spécifique à une destination particulière. Cela permet au
serveur de base de données d'utiliser peu de points de terminaison de connexion pour les demandes entrantes.

Remarque : vous devez installer Oracle Connection Manager à partir du support d'installation d'Oracle Instant Client.

Oracle Database 19c : Atelier d'administration 11 ­ 3


Machine Translated by Google

Processus Oracle Connection Manager

• Processus de passerelle : CMGW


– Reçoit les connexions client
– Utilise des règles pour évaluer la connexion et déterminer s'il faut autoriser l'accès

– Transfère les requêtes au saut suivant si l'accès est autorisé


– Multiplexe également les connexions client

• Processus administratif : CMADMIN


– Processus multithread
– Effectue des fonctions administratives

• Les processus sont démarrés avec l'utilitaire Oracle Connection Manager Control.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Connection Manager a deux types de processus : •


Passerelle
• Administratif

Le processus de passerelle reçoit les connexions client et détermine si l'accès est autorisé ou refusé en fonction
d'un ensemble de règles. Sous UNIX, le processus de passerelle est nommé CMGW. Sous Windows, le service
OracleHomeCMan représente le processus de passerelle.
Le processus de passerelle effectue les tâches suivantes :

S'enregistre auprès du processus administratif

Écoute les demandes de connexion entrantes Initie
• des demandes de connexion aux écouteurs pour les clients
• Relaie les données entre le client et le serveur de base de données
Le processus administratif exécute toutes les fonctions administratives d'Oracle Connection Manager. Il est nommé
CMADMIN sous UNIX et représenté par le service OracleHomeCMAdmin sous Windows.
Le processus administratif effectue les tâches suivantes : • Traite
l'enregistrement du processus de passerelle

Identifie tous les écouteurs desservant au moins une instance de base de données

Enregistre les informations d'adresse sur le processus de passerelle et les écouteurs.
• Répond aux demandes lancées par l'utilitaire Oracle Connection Manager Control.
Les processus sont démarrés avec l'utilitaire Oracle Connection Manager Control.

Oracle Database 19c : Atelier d'administration 11 ­ 4


Machine Translated by Google

Gestionnaire de connexion Oracle : Architecture

Connexion Oracle
Gestionnaire de serveur

Auditeur

Processus
CMADMIN

CMGW
processus
Serveur de base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

L'écouteur reçoit les connexions client et évalue par rapport à un ensemble de règles s'il faut refuser ou autoriser
l'accès. S'il autorise l'accès, l'écouteur transmet une demande à un processus de passerelle, en sélectionnant celui
avec le moins de connexions. Le processus CMGW, à son tour, transmet la demande à un autre gestionnaire de
connexion Oracle ou directement au serveur de base de données, relayant les données jusqu'à ce que la connexion se termine.
Si une connexion au serveur existe déjà, la passerelle multiplexe ou canalise ses connexions via la connexion
existante. CMADMIN surveille l'état des processus de la passerelle et de l' écouteur, arrêtant ou démarrant les
processus selon les besoins. En outre, il enregistre l'emplacement et la charge des processus de passerelle auprès
du processus d'écoute et répond aux demandes de l'utilitaire Oracle Connection Manager Control.

Le diagramme de la diapositive montre un exemple de la manière dont Oracle Connection Manager contrôle
les connexions. Après avoir reçu les trois connexions client valides, le processus de passerelle les multiplexe via une
seule connexion de protocole réseau à la base de données. La quatrième connexion est refusée lorsqu'elle est évaluée
par rapport à l'ensemble de règles.

Oracle Database 19c : Atelier d'administration 11 ­ 5


Machine Translated by Google

Utilisation des règles de filtrage

• Contrôler l'accès aux bases de données Oracle à l'aide de règles de filtrage


• Accès client basé sur :

– Noms d'hôte source ou adresses IP pour le client


– Noms d'hôte de destination ou adresses IP pour les serveurs
– Noms des services de base de données de destination

– Utilisation par le client d'Oracle Advanced Security

• Spécifié via le paramètre CMAN_RULES dans le fichier [Link]

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Grâce à la spécification de règles de filtrage, vous pouvez autoriser ou restreindre l'accès client à un serveur en fonction des
critères suivants :
• Noms d'hôte source ou adresses IP pour les clients
• Noms d'hôte ou adresses IP de destination pour les serveurs
• Noms des services de base de données de destination

• L'utilisation par le client du filtrage du contrôle

d'accès d'Oracle Advanced Security est spécifiée via le paramètre CMAN_RULES dans le fichier [Link].

Oracle Database 19c : Atelier d'administration 11 ­ 6


Machine Translated by Google

Mise en œuvre du contrôle d'accès à l'intranet

Connexion Oracle
Gestionnaire de serveur

Serveur de base de données

Pare­feu
départemental

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Connection Manager peut être configuré pour accorder ou refuser l'accès client à un service de base de données ou à un
ordinateur particulier. En spécifiant des règles de filtrage, vous pouvez autoriser ou restreindre l'accès d'un client spécifique à un
serveur.

L'illustration de la diapositive montre un exemple dans lequel Oracle Connection Manager est configuré pour autoriser
l'accès à deux clients et refuser l'accès à un troisième client.

Oracle Database 19c : Atelier d'administration 11 ­ 7


Machine Translated by Google

Implémentation du contrôle d'accès à Internet

intranet
Passerelle d'application
l'Internet

Serveur Web de l'application

Zone démilitarisée Réseau d'entreprise

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Connection Manager ne peut pas être intégré à des produits de pare­feu tiers. Cependant, les fournisseurs peuvent regrouper
Oracle Connection Manager avec leurs propres produits de manière à permettre à ce produit de servir de passerelle d'application,
comme illustré dans la diapositive.

Dans cet exemple, les hôtes Internet non autorisés ne peuvent pas accéder directement à la base de données à l'intérieur d'un
réseau d'entreprise, mais les utilisateurs autorisés peuvent toujours utiliser les services Internet en dehors du réseau d'entreprise.
CMAN autorisera uniquement les demandes de connexion provenant du serveur Web de l'application dans la zone démilitarisée et à
partir d'aucune autre adresse IP. Cette configuration permet de restreindre l'accès à distance aux données sensibles.

Oracle Database 19c : Atelier d'administration 11 ­ 8


Machine Translated by Google

Utilisation du multiplexage de session

Connexion Oracle
Gestionnaire de serveur

Application Web Serveur de base de données

serveur

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Cet exemple montre comment le multiplexage de session peut être utilisé dans une architecture Web.
Lorsqu'Oracle Connection Manager est exécuté sur le même ordinateur qu'un serveur Web d'applications, le serveur
Web d'applications peut acheminer plusieurs sessions client via Oracle Connection Manager.
Le multiplexage de session offre les avantages suivants :
• Limite le nombre de ressources réseau utilisées pour chaque processus
• Prend en charge de grandes populations
de clients • Maximise le nombre de sessions client­serveur sur un nombre limité de connexions de processus •
Optimise l'utilisation des ressources réseau, telles que la bande passante de connexion réseau et réduit
trafic réseau

• Ne nécessite qu'un seul transport pour les clients avec plusieurs applications • Ne
nécessite qu'une seule connexion réseau pour les liens de base de données

Oracle Database 19c : Atelier d'administration 11 ­ 9


Machine Translated by Google

Configuration du gestionnaire de connexion Oracle

Processus en trois étapes :

1. Configurez le fichier [Link] sur le serveur Connection Manager.

2. Configurez les clients avec l'adresse de protocole de l'écouteur Oracle Connection Manager.

3. Configurez le serveur de base de données pour le multiplexage de session (facultatif).

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

La configuration d'Oracle Connection Manager est un processus en trois étapes :

1. Configurez le fichier [Link] sur l'ordinateur Oracle Connection Manager. Ce fichier spécifie le point de terminaison d'écoute,
les règles de contrôle d'accès et les paramètres Oracle Connection Manager.

2. Configurez les clients avec les adresses de protocole de l'écouteur Oracle Connection Manager.

3. Facultativement, configurez le serveur de base de données pour le multiplexage de session.

Oracle Database 19c : Atelier d'administration 11 ­ 10


Machine Translated by Google

Configuration du fichier [Link]

Définissez les éléments suivants dans le fichier [Link] :

• Adresse de protocole de l'écouteur Oracle Connection Manager (ADDRESS) • Règles de contrôle

d'accès (RULE_LIST) • Paramètres de performances (PARAMETER_LIST)

Connexion Oracle
Gestionnaire de serveur

fichier [Link]
Serveur de base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous configurez l'ordinateur qui héberge Oracle Connection Manager en définissant des paramètres dans le fichier
[Link]. Un ordinateur peut héberger n'importe quel nombre de gestionnaires de connexion Oracle, chacun avec sa propre
entrée dans le fichier [Link]. Lors de la définition de plusieurs gestionnaires de connexion Oracle dans le fichier, vous pouvez
affecter une valeur par défaut en attribuant à un seul un nom d'hôte complet.

Le fichier [Link] se trouve dans le répertoire $ORACLE_HOME/network/admin. Le fichier [Link] peut également être stocké
aux emplacements suivants :

• Le répertoire spécifié par la variable d'environnement ou la valeur de registre TNS_ADMIN • Le répertoire de

configuration globale du nœud

Le fichier contient les informations suivantes :


• Adresse de protocole de l'écouteur : Cette section, précédée de ADDRESS=, contient des informations
pertinentes pour l'écouteur. Le paramètre ADDRESS est obligatoire.

• Liste des règles de contrôle d'accès : précédée de RULE_LIST=, cette section contient des informations sur les règles.
Vous pouvez utiliser la liste des règles de contrôle d'accès pour spécifier quelles connexions sont acceptées, rejetées
ou supprimées.

(RULE_LIST=(RULE=(SRC=hôte) (DST=hôte)(SRV=nom_service|sid)
(ACT=accepter|rejeter)) [(RULE= ...)])

• Paramètres : cette section, précédée de PARAMETER_LIST=, contient tous les autres paramètres qui affectent le
fonctionnement d'Oracle Connection Manager. Reportez­vous à Oracle Database Net Services Reference pour
obtenir des informations détaillées sur les paramètres.

Oracle Database 19c : Atelier d'administration 11 ­ 11


Machine Translated by Google

Exemple de fichier [Link]

CMAN01=
(CONFIGURATION=
(ADRESSE=(PROTOCOLE=tcp)(HÔTE=proxysvr)(PORT=1521))
(RULE_LIST=
(RULE=(SRC=[Link]/24)(DST=fin­server)(SRV=*)(ACT=accepter)
(ACTION_LIST=(AUT=on)(MCT=120)(MIT=30)))
(RULE=(SRC=[Link])(DST=proxysvr)(SRV=cmon)(ACT=accepter)))
(PARAMETER_LIST=
(LOG_LEVEL=2)
(TRACÉ=activé)
(MAX_GATEWAY_PROCESSES=8)
(MIN_GATEWAY_PROCESSSES=3)))

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

L'exemple de la diapositive montre une entrée de configuration de fichier [Link] pour un gestionnaire de
connexion Oracle nommé CMAN01.

La liste des règles de contrôle d'accès (paramètre RULE_LIST), également appelées règles de filtrage, spécifie quelles
connexions sont acceptées, rejetées ou supprimées.

Dans la première règle de l'exemple, les paramètres suivants sont définis :



SRC : désigne l'adresse IP du client ou de la source.
• DST : Désigne le nom de l'hôte de destination. •
ACT : spécifie l'action (accepter, rejeter ou abandonner). •
ACTION_LIST : Définit les attributs d'une connexion si elle est acceptée, vous permettant de remplacer les
paramètres par défaut sur une base connexion par connexion.
Dans la deuxième règle, SRC=[Link] et DST=proxysvr représentent le même serveur, spécifiant qu'Oracle
Connection Manager et l'utilitaire de contrôle du gestionnaire de connexion (CMCTL) doivent résider sur le même ordinateur.

Dans cet exemple, la journalisation est définie sur un niveau de 2 et le traçage a été activé.
Remarque : Étant donné que l'indentation et l'espacement dans le fichier [Link] sont importants, veillez à copier
l'exemple de fichier [Link] et à le modifier si nécessaire au lieu de créer un nouveau fichier.

Oracle Database 19c : Atelier d'administration 11 ­ 12


Machine Translated by Google

Configuration des clients

Configurez le fichier [Link] avec un descripteur de connexion qui spécifie l'adresse


de protocole d'Oracle Connection Manager.
finances=
(DESCRIPTION=
(ADRESSE=(PROTOCOLE=tcp)(HÔTE=cman­serv)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=FINDB01)))

fichier [Link]
Oracle
Connexion
Directeur
Serveur
fichier [Link]
Serveur de base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Pour acheminer les clients vers le serveur de base de données via Oracle Connection Manager, configurez le
fichier [Link] avec un descripteur de connexion qui spécifie l'adresse de protocole d'Oracle Connection
Manager.

Vous pouvez utiliser Oracle Net Manager pour configurer l'entrée de fichier [Link]. Reportez­vous au Guide
d'administration d'Oracle Net Service pour plus de détails.

Oracle Database 19c : Atelier d'administration 11 ­ 13


Machine Translated by Google

Configuration du serveur de base de données

• Dans le fichier [Link], ajoutez une entrée de nom de service pour Oracle Connection Manager.

listener_cman01=

(ADRESSE=(PROTOCOLE=tcp)(HÔTE=serveurproxy1)(PORT=1521))))

• Dans le fichier de paramètres d'initialisation, spécifiez un alias pour Oracle Connection Manager.

REMOTE_LISTENER=listener_cman01

Connexion Oracle
Gestionnaire de serveur

fichier [Link]
Serveur de base de données fichier [Link]

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Pour permettre au serveur de base de données de communiquer avec Oracle Connection


Manager, le fichier [Link] doit inclure l'entrée de nom de service qui spécifie l'adresse d'écoute d'Oracle
Connection Manager. Le fichier de paramètres d'initialisation doit contenir un alias pour Oracle Connection
Manager dans le paramètre REMOTE_LISTENER.

Oracle Database 19c : Atelier d'administration 11 ­ 14


Machine Translated by Google

Configuration du serveur de base de données pour le multiplexage (facultatif)

Dans le fichier de paramètres d'initialisation, définissez les attributs du paramètre DISPATCHERS :


• PROTOCOLE

• MULTIPLEX

DISPATCHERS = "(PROTOCOLE=TCP)(MULTIPLEX=ON)"

Connexion Oracle
Gestionnaire de serveur
fichier [Link]

Serveur de base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez configurer le serveur de base de données pour le multiplexage de session en définissant les attributs
PROTOCOL et MULTIPLEX du paramètre DISPATCHERS dans le fichier de paramètres d'initialisation. Le format est le suivant :

DISPATCHERS="(PROTOCOLE=TCP)(MULTIPLEX=ON)"

Pour l'attribut PROTOCOL, vous spécifiez le protocole réseau pour lequel le répartiteur génère un point de terminaison
d'écoute.

Pour l'attribut MULTIPLEX, vous spécifiez l'une des valeurs suivantes : 1, ON, YES,

TRUE ou BOTH : activez le multiplexage pour les sessions réseau entrantes et sortantes.


IN : active le multiplexage pour les sessions réseau entrantes uniquement

OUT : active le multiplexage pour les sessions réseau sortantes uniquement

• 0, NO, OFF ou FALSE : désactive le multiplexage pour les sessions réseau entrantes et sortantes

Remarque : Vous ne pouvez pas activer le multiplexage dynamiquement avec la commande ALTER SYSTEM.

Oracle Database 19c : Atelier d'administration 11 ­ 15


Machine Translated by Google

Utilisation de l'utilitaire de contrôle d'Oracle Connection Manager

• Syntaxe de base de l'utilitaire : commande CMCTL [process_type] •


Types de commandes pris en charge :
– Opérationnel (START, STOP)
– Modificateur (SET, SET LOG LEVEL)
– Informationnel (AFFICHER, AFFICHER L'ADRESSE, STATUT)
– Utilitaire opérationnel (EXIT, HELP, QUIT)

• type_processus est le nom du processus Oracle Connection Manager : – cman : les processus de
passerelle et d'administration (par défaut) – cm : le processus de passerelle – adm : le
processus d'administration

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

L'utilitaire Oracle Connection Manager Control vous permet d'administrer un gestionnaire de connexion Oracle. Vous
pouvez utiliser ses commandes pour exécuter des fonctions de gestion de base sur un ou plusieurs gestionnaires de connexion
Oracle. De plus, vous pouvez afficher et modifier les réglages des paramètres.

La syntaxe de base de l'utilitaire est la suivante :

Commande CMCTL [type_processus] où commande

est une commande telle que START, STOP ou STATUS et type_processus est le nom du processus Oracle Connection
Manager comme suit :
• cman pour la passerelle et les processus administratifs (par défaut) • cm pour le
processus de passerelle • adm pour le processus administratif

Vous pouvez également émettre la commande cmctl sans aucun argument à l'invite du système d'exploitation. Vous pouvez
ensuite émettre des commandes de l'utilitaire Oracle Connection Manager Control à l'invite du programme CMCTL>.

Remarque : Vous n'avez plus besoin du processus administratif après avoir configuré Oracle Connection Manager. Vous
pouvez démarrer uniquement le processus de passerelle lorsque vous avez besoin de conserver des ressources. Il exécute
toutes les fonctions de base et peut fonctionner sans le processus administratif.

Reportez­vous à Oracle Database Net Services Reference pour obtenir une description complète des commandes de
l'utilitaire Oracle Connection Manager Control.

Oracle Database 19c : Atelier d'administration 11 ­ 16


Machine Translated by Google

Examen des fonctionnalités d'Oracle Connection Manager

• Filtrage du contrôle d'accès via le paramètre CMAN_RULES dans le fichier


[Link] • Multiplexage de session via les attributs PROTOCOL et MULTIPLEX du
paramètre d'initialisation DISPATCHERS

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Contrôle d'accès

Vous activez le contrôle d'accès en spécifiant des règles de filtrage via le paramètre CMAN_RULES dans le fichier
[Link]. Grâce à cette spécification, vous pouvez autoriser ou restreindre l'accès de clients spécifiques à un serveur
de base de données.

Multiplexage de session
Après avoir ajouté PROTOCOL et MULTIPLEX au paramètre DISPATCHERS dans le fichier de paramètres d'initialisation,
vous pouvez activer le multiplexage de session en vous assurant que MULTIPLEX est défini sur ON ou sur une valeur
équivalente.

Oracle Database 19c : Atelier d'administration 11 ­ 17


Machine Translated by Google

Résumé

Dans cette leçon, vous devriez avoir appris à :


• Identifier les fonctionnalités d'Oracle Connection Manager
• Décrire l'architecture d'Oracle Connection Manager •
Configurer Oracle Connection Manager pour le multiplexage de
session • Utiliser l'utilitaire Oracle Connection Manager Control pour administrer Oracle Connection
Directeur

Copyright © 2019, Oracle et/ou ses sociétés affiliées. 1 ­ 18

Oracle Database 19c : Atelier d'administration 11 ­ 18


Machine Translated by Google

Aperçu de la pratique

Cette pratique couvre les rubriques suivantes : •


Installation d'Oracle Instant Client • Configuration
du fichier [Link]

• Configuration de la base de données pour Oracle Connection Manager


• Configuration des clients pour Oracle Connection Manager •
Configuration du serveur de base de données Oracle pour le multiplexage de session

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 11 ­ 19


Machine Translated by Google
Machine Translated by Google

12

Créer des PDB à partir de Seed

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure de créer un nouveau PDB à partir de la graine PDB.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 12 ­ 2


Machine Translated by Google

Provisionnement de nouvelles bases de données enfichables

• Créez un nouveau PDB à partir de la graine PDB.

• Branchez un PDB débranché dans le même CDB ou dans un autre CDB. • Branchez

un non­CDB dans un CDB. • Cloner une PDB à partir d'une autre PDB (CDB locale ou

distante, chaude ou froide).


• Déplacer un PDB d'un CDB vers un autre CDB.

• Proxy un PDB d'un autre PDB.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Il existe différentes méthodes pour provisionner de nouveaux PDB dans un CDB.


• Créer un nouveau PDB à partir de la graine PDB, PDB$SEED, pour une nouvelle implémentation d'application par exemple. Ce
type de création de PDB est presque instantané.

Branchez un PDB débranché dans un autre CDB ou dans le même CDB. Par exemple, vous devez mettre à niveau une PDB vers
la dernière version d'Oracle, mais vous ne souhaitez pas mettre à niveau toutes les PDB. Au lieu de mettre à niveau un CDB d'une
version à une autre, vous pouvez déconnecter un PDB d'une version d'Oracle Database, puis le connecter à un CDB nouvellement
créé à une version supérieure. Si vous avez débranché par erreur un PDB, vous pouvez le rebrancher sur le CDB d'origine.


Connectez des non­CDB à un CDB en tant que PDB, dans le cadre d'une stratégie de migration. C'est aussi un bon
moyen de consolider plusieurs non­CDB en un CDB.

• Cloner une PDB à partir d'une autre PDB de la même CDB. Par exemple, vous souhaitez tester une application
correctif. Vous devez d'abord cloner votre application de production dans une PDB clonée et corriger la PDB clonée à tester.
• Déplacer un PDB dans un autre CDB pour mieux allouer les ressources.

• Proxy un PDB. Un proxy PDB fournit un accès entièrement fonctionnel à un autre PDB dans un CDB distant. Cette fonctionnalité vous
permet de créer des applications transparentes à l'emplacement qui peuvent agréger des données provenant de plusieurs sources
qui se trouvent dans le même centre de données ou réparties sur plusieurs centres de données.

Oracle Database 19c : Atelier d'administration 12 ­ 3


Machine Translated by Google

Outils

Pour provisionner de nouveaux PDB, vous pouvez utiliser :

• SQL*Plus
• Développeur SQL
• Enterprise Manager Cloud Control •
Enterprise Manager Database Express •
Assistant de configuration de base de données (DBCA)
– Clone à partir de la graine PDB

– Cloner à partir d'un PDB existant


– Branchez un PDB débranché

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Il existe différents outils pour provisionner de nouveaux PDB dans un CDB :


• SQL*Plus
• Développeur SQL

Contrôle du cloud d'Enterprise Manager

Enterprise Manager Database Express

Pour créer un nouveau PDB à partir de la graine PDB ou à partir d'un PDB existant ou en connectant une méthode PDB
déconnectée, vous pouvez également utiliser Database Configuration Assistant (DBCA).

Oracle Database 19c : Atelier d'administration 12 ­ 4


Machine Translated by Google

Créer un nouveau PDB à partir de PDB$SEED

CDB1
• Copie les fichiers de données à partir des données PDB$SEED
Fichiers de données / Fichiers temporaires Fichiers de Rétablir les fichiers des dossiers
contrôle journaux

SYSTÈME • Crée des tablespaces :


ANNULER

SYSAUX – SYSTÈME
TEMP
UTILISATEURS

– SYSAUX
Racine CDB
– ANNULER
Fichiers de données

• Crée un catalogue complet comprenant des métadonnées


SYSTÈME
pointant vers des objets fournis par Oracle
SYSAUX ANNULER

Créer • Crée des utilisateurs communs :


PDB$SEED APB1
–SYS _
Fichiers de données de
PDB$SEED – SYSTÈME
SYSTÈME

SYSAUX
ANNULER • Crée un utilisateur local (PDBA), accordé local
APB1 Rôle PDB_DBA
• Crée un nouveau service par défaut

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

La création d'un nouveau PDB à partir de la graine PDB est presque instantanée. L'opération copie les fichiers de données de la PDB READ
ONLY seed vers le répertoire cible défini dans CREATE PLUGGABLE DATABASE
déclaration.

Il crée des espaces de table tels que SYSTEM, pour stocker un catalogue complet comprenant des métadonnées pointant vers des
objets fournis par Oracle, SYSAUX pour les données auxiliaires locales et UNDO pour les segments d'annulation locaux.

Il crée des schémas par défaut et des utilisateurs communs qui existent dans la graine PDB, SYS qui continue à avoir tous les privilèges de
super utilisateur et SYSTEM qui peut administrer la PDB.

Il crée un utilisateur local (le PDBA), doté d'un rôle PDB_DBA local. Jusqu'à ce que l'utilisateur PDB SYS accorde des privilèges au rôle local
PDB_DBA, le nouveau PDBA ne peut effectuer aucune opération autre que la connexion à la PDB.
Un nouveau service par défaut est également créé pour la PDB.

Oracle Database 19c : Atelier d'administration 12 ­ 5


Machine Translated by Google

Utilisation de la clause FILE_NAME_CONVERT

Créez une nouvelle PDB à partir de la graine en utilisant FILE_NAME_CONVERT :


1. Connectez­vous à la racine CDB en tant qu'utilisateur commun avec le privilège système CREATE
PLUGGABLE DATABASE :

SQL> CRÉER UNE BASE DE DONNÉES ENFICHABLE pdb1


ADMIN USER admin1 IDENTIFIÉ PAR p1 ROLES=(CONNECT)
FILE_NAME_CONVERT = ('PDB$SEEDdir', 'PDB1dir');

2. Utilisez les vues pour vérifier :

SQL> CONNECTER / EN TANT QUE SYSDBA


SQL> SELECT * FROM cdb_pdbs ;
SQL> SELECT * FROM cdb_tablespaces ;
SQL> SELECT * FROM cdb_data_files ;
SQL> ALTER PLUGGABLE DATABASE pdb1 OPEN RESTRICTED ;
SQL> CONNECTER sys@pdb1 EN TANT QUE SYSDBA
SQL> CONNECTER admin1@pdb1

Remarque : Le STATUT de l'APB est NOUVEAU.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les étapes pour créer un nouveau PDB à partir de la graine PDB sont les suivantes :
1. Connectez­vous à la racine CDB en tant qu'utilisateur commun avec le système CREATE PLUGGABLE DATABASE
privilège et exécutez l'instruction CREATE PLUGGABLE DATABASE comme indiqué dans la diapositive. La clause
ADMIN USER définit l'utilisateur PDBA créé dans la nouvelle PDB avec les rôles CONNECT et PDB_DBA (rôle vide). La
clause FILE_NAME_CONVERT désigne d'abord le répertoire source des fichiers de données de départ PDB et ensuite le
répertoire de destination des nouveaux fichiers de données PDB.
2. Une fois l'instruction terminée, utilisez des vues pour vérifier que la PDB est correctement créée. La vue CDB_PDBS affiche la
liste des PDB et la vue CDB_TABLESPACES affiche la liste des tablespaces de la nouvelle PDB (SYSTEM, SYSAUX,
UNDO). La vue CDB_PDBS affiche le STATUS du nouveau PDB : il est NEW. L'APB n'a jamais été ouvert. Il doit être ouvert
en mode READ WRITE ou RESTRICTED pour qu'Oracle effectue le traitement nécessaire pour terminer l'intégration de la
PDB dans la CDB et la marquer NORMAL. Une erreur sera renvoyée si une tentative est faite pour ouvrir la PDB en lecture
seule.

3. Toujours connecté à la racine CDB, ouvrez la PDB. Essayez ensuite de vous connecter à la nouvelle PDB sous l'utilisateur
commun, SYS, qui existe toujours dans n'importe quelle PDB, ou l'utilisateur défini dans la clause ADMIN USER, admin1.

Oracle Database 19c : Atelier d'administration 12 ­ 6


Machine Translated by Google

Utilisation d'OMF ou du paramètre PDB_FILE_NAME_CONVERT

• Utilisez OMF : DB_CREATE_FILE_DEST = '/u01/app/oradata/CDB1/pdb1'


Ou

• Utilisez le paramètre d'initialisation : PDB_FILE_NAME_CONVERT = '/u01/


app/oradata/CDB1/seed','/u01/app/oradata/CDB1/pdb1'

SQL> CRÉER UNE BASE DE DONNÉES ENFICHABLE pdb1


UTILISATEUR ADMIN pdb1_admin IDENTIFIÉ PAR p1 ROLES=(CONNECT);

Ou
• Utilisez la clause dans la commande CREATE PLUGGABLE DATABASE :
CREATE_FILE_DEST = '/u01/app/oradata/CDB1/pdb1'

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Si vous utilisez Oracle Managed Files (OMF) ou PDB_FILE_NAME_CONVERT :


1. Connectez­vous à la racine CDB en tant que SYS

2. Avec OMF, définissez le paramètre d'initialisation DB_CREATE_FILE_DEST sur un répertoire cible pour les fichiers de
données de la nouvelle PDB

3. Sans OMF, définissez le paramètre d'initialisation PDB_FILE_NAME_CONVERT sur le répertoire source des
fichiers de données de départ PDB et sur le répertoire cible des nouveaux fichiers de données PDB. Dans
l'exemple présenté, le répertoire /u01/app/oradata/CDB1/pdb1 doit exister.
4. Utilisez ensuite la vue cdb_pdbs pour vérifier que la nouvelle PDB et ses tablespaces existent :
SQL> SELECT * FROM cdb_pdbs ;

SQL> SELECT * FROM cdb_tablespaces ;


SQL> SELECT * FROM cdb_data_files ;

Oracle Database 19c : Atelier d'administration 12 ­ 7


Machine Translated by Google

Résumé
Dans cette leçon, vous devriez avoir appris à créer un nouveau PDB à partir de la graine PDB.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 12 ­ 8


Machine Translated by Google

Aperçu de la pratique

• Création d'un PDB à partir de la graine PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 12 ­ 9


Machine Translated by Google
Machine Translated by Google

13
Utiliser d'autres techniques pour créer
PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure

de : • Cloner une PDB normale • Débrancher et brancher ou

cloner une non­CDB • Débrancher et brancher une PDB normale

• Effectuer un clonage à chaud

• Effectuez une relocalisation de la PDB avec un temps d'arrêt proche de zéro

• Créer et utiliser un proxy PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 13 ­ 2


Machine Translated by Google

Cloner des PDB ordinaires

CDB1 1. Définissez l'emplacement du fichier de données :

Fichiers de données / Fichiers temporaires Fichiers de Fichiers de


• Définissez DB_CREATE_FILE_DEST= 'PDB3dir' • Définissez
contrôle journalisation
PDB_FILE_NAME_CONVERT='PDB1dir',
Racine CDB
'PDB3dir'
Fichiers de données / Fichiers temporaires
• Utilisez la clause CREATE_FILE_DEST= 'PDB3dir'
PDB$SEED 2. Connectez­vous à la racine CDB pour fermer PDB1.

Fichiers de données / Fichiers temporaires 3. Clonez PDB3 à partir de PDB1.


APB1 Créer
APB3 SQL> CRÉER UNE BASE DE DONNÉES ENFICHABLE pdb3 À PARTIR DE pdb1
Fichiers de données / Fichiers temporaires de CREATE_FILE_DEST = 'PDB3dir' ;
APB1
APB3 4. Ouvrez PDB3 en mode lecture/écriture.

PDB3 possède : SQL> ALTER PLUGGABLE DATABASE pdb3 OPEN ;

• Espaces table SYSTEM, SYSAUX, UNDO


• Catalogue complet

• Utilisateurs communs SYS, SYSTEM • Remarque : clonez les métadonnées uniquement en utilisant NO DATA.
Même nom d'administrateur local • Nouveau
nom de service

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Cette technique copie un PDB source à partir d'un CDB et branche la copie dans un CDB. Le PDB source se trouve dans le
CDB local.

Les étapes pour cloner un PDB au sein du même CDB sont les suivantes :
1. Définissez l'emplacement des fichiers de données de la nouvelle PDB :

­ Définissez les paramètres d'initialisation : DB_CREATE_FILE_DEST= 'PDB3dir' si vous utilisez Oracle Managed
Files (OMF) ou PDB_FILE_NAME_CONVERT= 'PDB1dir', 'PDB3dir' pour non OMF.

­ Utilisez la clause CREATE_FILE_DEST lors de l' instruction CREATE PLUGGABLE DATABASE (OMF).

­ Utilisez la clause FILE_NAME_CONVERT=('pdb1dir',' pdb3dir') pour définir le répertoire des fichiers sources à
copier depuis PDB1 et le répertoire cible des nouveaux fichiers de PDB3 (non OMF).

2. Connectez­vous à la racine CDB en tant qu'utilisateur commun avec le privilège CREATE PLUGGABLE DATABASE.
3. Utilisez la commande CREATE PLUGGABLE DATABASE pour cloner pdb3 à partir de pdb1.
4. Ouvrez ensuite la nouvelle pdb3 avec la commande ALTER PLUGGABLE DATABASE OPEN.
Remarque : NO DATA permet le clonage des métadonnées de la PDB, qui est une option qui peut être utilisée pour cloner une PDB vide et
importer ultérieurement des données à des fins de test.

Oracle Database 19c : Atelier d'administration 13 ­ 3


Machine Translated by Google

Migrer des données d'un non­CDB vers un CDB

CDB1 Méthodes possibles :


• Data Pump (TTS ou TDB ou exportation/importation
Fichiers de données / Fichiers temporaires Fichiers de Fichiers de
contrôle journalisation complète) • Plugging (définition de fichier XML avec
Racine CDB
DBMS_PDB) • Clonage • Réplication
Fichiers de données / Fichiers temporaires

PDB$SEED Créer
PDB2
Fichiers de données / Fichiers temporaires
de Entités créées dans la nouvelle PDB :
APB2 ORCL
• Tablespaces : SYSTEM, SYSAUX, UNDO • Un
catalogue complet • Utilisateurs communs : SYS,
impdp TTS Brancher
SYSTEM • Un administrateur local (PDBA) • Un
nouveau service par défaut
Fichier de vidage Fichier XML
Réplication

expdp TTS SGBD_PDB

Fichiers de données Fichiers de Fichiers de


contrôle journalisation

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Il existe différentes méthodes possibles pour migrer des données d'une base de données non CDB vers une CDB.

Quelle que soit la méthode utilisée, vous devez placer le non­CDB dans un état cohérent sur le plan transactionnel et l'ouvrir en mode
restreint.

Il convient d'utiliser Oracle Data Pump lorsque :

Les bases de données source et cible sont endian différentes

Le jeu de caractères source n'est pas égal au jeu de caractères cible et n'est pas un sous­ensemble binaire de
la cible

Utilisez soit un tablespace transportable (TTS), soit une exportation/importation conventionnelle complète, soit une
base de données transportable (TDB) à condition que dans la dernière, tout objet défini par l'utilisateur réside dans un
seul tablespace défini par l'utilisateur. La base de données entièrement transportable Data Pump ne prend pas en
charge le déplacement des référentiels XDB ou AWR. Seuls les schémas XML générés par l'utilisateur sont déplacés.

Dans d'autres cas, l'utilisation du package DBMS_PDB est l'option la plus simple. Le package DBMS_PDB construit un
fichier XML décrivant les fichiers de données non­CDB pour connecter le non­CDB dans le CDB en tant que PDB. C'est
aussi un bon moyen de consolider rapidement plusieurs non­CDB en un CDB.
• Cloner des non­CDB dans un CDB est un bon moyen de conserver le non­CDB et donc d'avoir la possibilité de comparer les
performances entre le nouveau PDB et le non­CDB d'origine ou au moins d'attendre de considérer que le PDB peut fonctionner
correctement.

Oracle Database 19c : Atelier d'administration 13 ­ 4


Machine Translated by Google

Connexion d'un non­CDB à CDB à l'aide de DBMS_PDB

CDB1 1. Ouvrez ORCL en mode LECTURE SEULE.

Fichiers de données / Fichiers temporaires Fichiers de Fichiers de


SQL> EXEC DBMS_PDB.DESCRIBE ('/tmp/[Link]')
contrôle journalisation

Racine CDB
2. Connectez­vous à la racine CDB cible en tant qu'utilisateur commun avec
Fichiers de données / Fichiers temporaires
Privilège CREATE PLUGGABLE DATABASE .
PDB$SEED Créer
PDB2
Fichiers de données / Fichiers temporaires 3. Branchez l' ORCL débranché en tant que PDB2.
de
APB2 ORCL
SQL> CRÉER UNE BASE DE DONNÉES PLUGGABLE
PDB2 À L'AIDE DE '/tmp/[Link]' ;

Brancher
4. Exécutez le script noncdb_to_pdb.sql dans PDB2.

Fichier de métadonnées XML SQL> CONNECTER sys@PDB2 EN TANT QUE SYSDBA


SQL> @$ORACLE_HOME/rdbms/admin/noncdb_to_pdb
SGBD_PDB.DESCRIBE
Fichiers de données Fichiers de Fichiers de
5. Ouvrez PDB2.
contrôle journalisation

ORCL Remarque : Le STATUT de la PDB est CONVERTING.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

La technique avec le package DBMS_PDB crée une PDB débranchée à partir d'une base de données Oracle non­CDB.
Le PDB débranché peut alors être branché sur un CDB (de la même version) comme un nouveau PDB. Pour utiliser cette
technique, le non­CDB doit être à la version Oracle Database 12c ou ultérieure.
L'exécution de la procédure DBMS_PDB.DESCRIBE sur le non­CDB génère un fichier XML qui décrit le futur PDB. Vous pouvez
brancher le PDB débranché de la même manière que vous pouvez brancher n'importe quel PDB débranché, en utilisant le fichier XML
et les fichiers de données non­CDB. Les étapes sont les suivantes :
1. Connectez­vous à ORCL non­CDB et assurez­vous que l'ORCL non­CDB est en mode lecture seule.

2. Exécutez la procédure DBMS_PDB.DESCRIBE en indiquant le nom du fichier qui sera généré. Le fichier XML contient la liste
des fichiers de données à brancher. Le fichier XML et les fichiers de données décrits dans le fichier XML comprennent une
PDB débranchée.
3. Connectez­vous au CDB cible pour brancher l'ORCL débranché en tant que PDB2.

4. Avant de brancher le non­CDB débranché, assurez­vous qu'il peut être branché sur un CDB en utilisant la procédure
DBMS_PDB.CHECK_PLUG_COMPATIBILITY. Exécutez la commande CREATE PLUGGABLE en utilisant la clause
USING '[Link]'. La liste des fichiers de données d'ORCL est lue à partir du fichier XML pour localiser et nommer les
fichiers de données de PDB2.

5. Exécutez le script ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql pour supprimer les


métadonnées du tablespace PDB SYSTEM. Ce script est requis pour brancher des non­CDB uniquement et doit être exécuté
avant la première ouverture de la PDB.
6. Ouvrez PDB2 pour vérifier que les tables d'application se trouvent dans PDB2.

Oracle Database 19c : Atelier d'administration 13 ­ 5


Machine Translated by Google

Réplication d'un non­CDB dans un CDB à l'aide de GoldenGate

CDB1 1. Connectez­vous à la racine CDB en tant qu'utilisateur commun avec


Fichiers de données / Fichiers temporaires Fichiers de Fichiers de

contrôle journalisation
le privilège CREATE PLUGGABLE DATABASE.
Racine CDB
2. Créez un nouveau PDB2 (à partir de PDB$SEED).
Fichiers de données / Fichiers temporaires

3. Ouvrez PDB2 en mode lecture/écriture.


PDB$SEED Créer
PDB2
Fichiers de données / Fichiers temporaires 4. Configurer un Oracle GoldenGate unidirectionnel
de
APB2 ORCL environnement de réplication d' ORCL vers PDB2.

5. Vérifiez les données d'application.

SQL> CONNECT sys@PDB2


SQL> SELECT * FROM dba_tables ;
Réplication SQL> SELECT * FROM [Link] ;

Fichiers de données Fichiers de Fichiers de

contrôle journalisation

ORCL

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Voici les étapes de réplication des données d'un non­CDB vers une PDB à l'aide de la réplication Oracle
GoldenGate : 1. Connectez­vous à la racine CDB en tant qu'utilisateur commun avec le privilège CREATE
PLUGGABLE DATABASE.
2. Créez le nouveau PDB2 à partir de la graine PDB qui sera le conteneur des données ORCL.

3. Ouvrez PDB2 en mode lecture/écriture.


4. Configurez un environnement de réplication unidirectionnelle Oracle GoldenGate avec l'ORCL non­CDB comme
base de données source et le PDB2 comme base de données de destination.

5. Lorsque les données de PDB2 rattrapent les données de l'ORCL non­CDB, passez à PDB2.
Voir Oracle Database Concepts pour plus d'informations sur Oracle GoldenGate.

Oracle Database 19c : Atelier d'administration 13 ­ 6


Machine Translated by Google

Clonage d'une PDB non­CDB ou distante


1. Réglez ORCL en mode LECTURE SEULE.

CDB1 2. Connectez­vous à la CDB pour créer le lien de la base de données :

Fichiers de données / Fichiers temporaires Fichiers de Fichiers de SQL> CRÉER UN LIEN DE BASE DE DONNÉES link_orcl
contrôle journalisation
CONNECTER AU système IDENTIFIÉ PAR ***
Racine CDB EN UTILISANT 'orcl' ;
Fichiers de données / Fichiers temporaires
3. Cloner le non­CDB :
PDB$SEED Créer
PDB2 SQL> CRÉER UNE BASE DE DONNÉES ENFICHABLE pdb_orcl
Fichiers de données / Fichiers temporaires
de FROM NON$CDB@link_orcl
APB2 ORCL CREATE_FILE_DEST = '…/PDB_orcl';

Fichiers de données Fichiers de 4. Exécutez le script noncdb_to_pdb.sql.


contrôle

SQL> CONNECT sys@pdb_orcl AS SYSDBA SQL>


ORCL non CDB
@$ORACLE_HOME/rdbms/admin/noncdb_to_pdb 5. Ouvrez PDB_ORCL
PDB_ORCL possède :
• les tablespaces SYSTEM, SYSAUX, UNDO en mode lecture/écriture.
• Catalogue
SQL> ALTER PLUGGABLE DATABASE pdb_orcl OPEN ;
complet • Un tablespace
temporaire • Utilisateurs communs SYS,
SYSTEM • Nouveau nom de service

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Cette technique copie un PDB non­CDB ou distant et branche la copie dans un CDB.
Les étapes pour cloner une PDB non­CDB ou distante dans une CDB sont les suivantes :
1. Réglez le non­CDB ou le PDB distant en mode LECTURE SEULE.

2. Connectez­vous à la racine du CDB cible en tant qu'utilisateur commun avec CREATE PLUGGABLE DATABASE
privilège.
3. Créez un lien de base de données qui permet une connexion au non­CDB ou PDB distant en tant qu'utilisateur avec
le privilège CREATE PLUGGABLE DATABASE.
4. Utilisez la commande CREATE PLUGGABLE DATABASE pour cloner le non­CDB comme décrit dans la diapositive.
Si vous clonez une PDB distante, utilisez le nom de la PDB source à la place de NON$CDB. Assurez­vous que
la nouvelle PDB n'entre pas en conflit avec le nom d'un conteneur dans la CDB.
5. Si la source clonée est une non­CDB, il est nécessaire d'exécuter le
script $ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql.
6. Ouvrez ensuite la nouvelle PDB avec la commande ALTER PLUGGABLE DATABASE.
7. Enfin, vous pouvez rouvrir la PDB non­CDB ou distante.
Il existe des options de clonage supplémentaires telles que SNAPSHOT COPY. Reportez­vous au Guide de l'administrateur de la base de données
Oracle.

Oracle Database 19c : Atelier d'administration 13 ­ 7


Machine Translated by Google

Utilisation de DBCA pour cloner un PDB distant


Source distante PDB1

CDB1 1. Créer un utilisateur commun avec des privilèges dans le CDB distant
Racine CDB CDB1.
2. Utilisez DBCA pour cloner le PDB1 distant de CDB1 vers PDB2.

ANNULER1

SYSTÈME UTILISATEURS
$ dbca –silent ­createPluggableDatabase ­createFromRemotePDB
APB1 SYSAUX
­remotePDBName PDB1 ­remoteDBConnString CDB1
­sysDBAUserName système ­sysDBAPassword mot de passe
­remoteDBSYSDBAUserName SYS
Lien
BD

PDB1 distant
cloné en tant que PDB2
­remoteDBSYSDBAUserPassword mot de passe
CDB2 ­dbLinkUsername c##remote_user ­dbLinkUserPassword
Racine CDB mot de passe ­sourceDB CDB2 ­pdbName PDB2

ANNULER1

SYSTÈME UTILISATEURS

APB2 SYSAUX

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez utiliser DBCA pour cloner une PDB distante. L'opération DBCA exécute les étapes suivantes : 1.
Vérifie la présence du lien de base de données. Si le lien de base de données existe, DBCA le supprime.
2. Crée le lien de la base de données
3. Crée la PDB à partir de la PDB distante

4. Vérifie l'état de la PDB clonée pour vérifier qu'elle est en mode monté 5. Ouvre la PDB
clonée
L'utilisateur de la CDB cible locale doit disposer du privilège CREATE PLUGGABLE DATABASE à la racine de la CDB.

Le CDB distant doit utiliser le mode d'annulation local. Le CDB distant doit être en mode archivelog. L'utilisateur commun dans
la PDB distante à laquelle le lien de base de données se connecte doit disposer des privilèges CREATE PLUGGABLE DATABASE
et CREATE SESSION.

Oracle Database 19c : Atelier d'administration 13 ­ 8


Machine Translated by Google

Brancher un PDB régulier débranché dans CDB

CDB1 Débranchez PDB1 de CDB1 : 1.

Racine CDB Connectez­vous à CDB1 en tant qu'utilisateur commun.

PDB$SEED 2. Vérifiez que PDB1 est fermé.


Fichiers de données SYSTÈME
SQL> ALTER PLUGGABLE DATABASE pdb1
SYSAUX
APB1 UTILISATEURS
ANNULER
DÉBRANCHEZ­VOUS DANS 'xmlfile1' ;

Débranchez PDB1
3. Supprimez PDB1 de CDB1.
Fichier XML

Branchez PDB1 sur CDB2 : 1.


Prise PDB1 Connectez­vous à CDB2 en tant qu'utilisateur commun.
CDB2 2. Utilisez le package DBMS_PDB pour vérifier la
Racine CDB
compatibilité de PDB1 avec CDB2.
PDB$SEED
SQL> CRÉER UNE BASE DE DONNÉES ENFICHABLE pdb1
Fichiers de données EN UTILISANT 'xmlfile1' NOCOPY ;
SYSTÈME ANNULER
UTILISATEURS SYSAUX
APB1
3. Ouvrez PDB1 en mode lecture/écriture.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez créer un PDB dans un CDB en utilisant la méthode de débranchement/branchement.

Le débranchement d'un PDB dissocie le PDB d'un CDB. Vous débranchez un PDB lorsque vous souhaitez déplacer le PDB vers un autre
CDB ou lorsque vous ne souhaitez plus que le PDB soit disponible.

La première étape consiste à débrancher PDB1 de CDB1. La deuxième étape consiste à connecter PDB1 à CDB2.

Pour déconnecter PDB1 de CDB1, connectez­vous d'abord à la racine CDB source et vérifiez que PDB est fermé à l'aide de la vue V$PDBS.
Utilisez ensuite ALTER PLUGGABLE DATABASE avec la clause UNPLUG pour spécifier la base de données à déconnecter et le fichier XML
dans lequel la déconnecter. La colonne STATUS dans CDB_PDBS de la PDB débranchée sera UNPLUGGED. Un PDB doit être retiré du
CDB avant de pouvoir être rebranché dans le même CDB. Si la PDB est connectée à une autre CDB, la PDB n'a pas besoin d'être supprimée
si les fichiers de données sont copiés.

Avant de brancher PDB1 dans CDB2, vous pouvez éventuellement vérifier si la PDB débranchée est compatible avec CDB2 en utilisant la
fonction DBMS_PDB.CHECK_PLUG_COMPATIBILITY.

Pour connecter PDB1 à CDB2, connectez­vous à la racine de CDB2 et exécutez la commande CREATE PLUGGABLE DATABASE pdb1
USING '[Link]'. La dernière étape consiste à ouvrir la PDB.

Oracle Database 19c : Atelier d'administration 13 ­ 9


Machine Translated by Google

Branchement d'un PDB à l'aide d'un fichier d'archive

1. Le débranchement d'un PDB dans un seul fichier d'archive comprend :


– Fichier XML
– Fichiers de données

2. Le branchement de la PDB nécessite uniquement le fichier d'archive.

CDB_SOURCE

Fichiers de données

SQL> ALTER PLUGGABLE DATABASE pdb1 UNPLUG


APB1
INTO '/tmp/[Link]' ;

Fichier d'archive
[Link]

CDB_TARGET SQL> CRÉER UNE BASE DE DONNÉES ENFICHABLE


pdb_new EN UTILISANT '/tmp/[Link]' ;
Fichiers de données

PDB_NEW

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Lorsqu'un PDB est débranché, tous les fichiers de données associés au PDB ainsi que le manifeste PDB doivent
être copiés ou déplacés individuellement vers le serveur distant où ils seront connectés à un autre CDB. Vous
pouvez choisir de créer un seul fichier d'archive PDB, un fichier compressé avec l'extension .pdb, qui contient le
manifeste PDB et tous les fichiers de données. Lors du branchement d'un PDB, la présence d'un fichier .pdb est
interprétée et le PDB est branché sur le CDB. Vous pouvez choisir d'exécuter le test de compatibilité du plug­in PDB
directement sur l'archive PDB sans extraire le fichier manifeste PDB de l'archive.
Cette fonctionnalité facilite la gestion du débranchement et du branchement des PDB sur les CDB.

Oracle Database 19c : Atelier d'administration 13 ­ 10


Machine Translated by Google

Clonage de PDB distants en mode chaud

CDB1 PDB source distante toujours opérationnel et entièrement fonctionnel :


Racine CDB

1. Connectez­vous à la racine CDB2 cible pour créer le


ANNULER1
lien de la base de données vers CDB1.
SYSTÈME UTILISATEURS

APB1 SYSAUX 2. Passez du mode d'annulation partagé au mode d'annulation local dans
les deux CDB.
Source distante
Rafraîchir
APB1 3. Clonez le PDB1 distant en PDB3.
4. Ouvrez PDB3 en mode lecture seule ou lecture/écriture.
Cloné à chaud
APB1 Lien
BD
Rafraîchissement incrémentiel : •
CDB2
Manuel • Automatique
Racine CDB
(intervalle prédéfini)

ANNULER1

SYSTÈME UTILISATEURS

APB3 SYSAUX

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le clonage d'un PDB de production pour obtenir un PDB de test copie le PDB de production distant dans un CDB alors que le PDB de production
distant est toujours opérationnel et entièrement fonctionnel.
Le clonage à distance à chaud nécessite que les deux CDB passent du mode d'annulation partagé au mode d'annulation local, ce qui signifie
que chaque PDB utilise son propre tablespace d'annulation local.
Copie actualisable

De plus, le clonage à chaud permet une actualisation incrémentielle dans la mesure où la copie clonée de la base de données de production
peut être actualisée à intervalles réguliers. L'actualisation incrémentielle signifie l'actualisation d'un clone existant à partir d'une PDB source à
un moment plus récent que la création du clone d'origine pour fournir de nouvelles données. Une PDB de copie actualisable ne peut être ouverte
qu'en mode lecture seule.

La propagation des modifications à partir de la PDB source peut être effectuée de deux manières :

• Manuellement (sur demande)



Automatiquement à des intervalles de temps prédéfinis

Si la PDB source n'est pas accessible au moment où la copie d'actualisation doit être mise à jour, les journaux d'archivage sont lus à partir
du répertoire spécifié par le paramètre REMOTE_RECOVERY_FILE_DEST pour actualiser la PDB clonée.

Vous pouvez également cloner une PDB existante à l'aide de l'assistant de configuration de base de données (DBCA).

Oracle Database 19c : Atelier d'administration 13 ­ 11


Machine Translated by Google

Déplacement de l'APB avec des temps d'arrêt quasi nuls

CDB1
Utilisez une seule instruction pour déplacer PDB1 de CDB1 vers CDB2 :
Racine CDB 1. Passez du mode d'annulation partagé au mode d'annulation local
dans les deux
CDB.
Fichiers de données
ANNULER1
2. Réglez le mode ARCHIVELOG dans les deux CDB.
SYSTÈME UTILISATEURS

APB1 SYSAUX 3. Accordez SYSOPER à l'utilisateur connecté à CDB1 via le


lien de base de données créé dans CDB2.
4. Connectez­vous à CDB2 en tant qu'utilisateur commun pour créer la base de données
Déplacer PDB1 de lien.
CDB1 vers CDB2 5. Utilisez l'instruction CREATE PLUGGABLE DATABASE avec
Clause RELOCATE.
Lien
BD

6. Ouvrez PDB1 en mode lecture/écriture.

CDB2
Il n'est pas nécessaire de :
Racine CDB
• Débranchez la PDB de la source CDB • Copiez
ou transférez les fichiers de données vers un nouvel emplacement

Fichiers de données
ANNULER1 • Branchez le PDB dans le CDB cible
SYSTÈME UTILISATEURS
• Supprimez le PDB source du CDB source
APB1 SYSAUX

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Pour obtenir le même résultat que le débranchement et le branchement d'un PDB d'un CDB source distant dans un autre CDB,
vous pouvez tirer parti de la relocalisation de PDB avec un temps d'arrêt quasi nul.

Une seule instruction DDL peut déplacer une PDB, en utilisant le mode "pull", connectée à la CDB où la PDB sera déplacée pour
l'extraire de la CDB où la PDB existe, en gérant les connexions existantes et en migrant de nouvelles connexions sans nécessiter de
modifications de la application.
Il existe deux méthodes de relocalisation :

• Mode de disponibilité normal ­ Lorsque


la PDB nouvellement créée est ouverte en mode lecture/écriture pour la première fois, la PDB source est automatiquement
fermée et abandonnée, et l'opération de déplacement est terminée avec la PDB déplacée étant entièrement
disponible. Il s'agit du mode par défaut de "disponibilité normale".
­ Cette méthode peut être utilisée pour déplacer les PDB d'application.
• Mode de disponibilité maximale
− Le mode de disponibilité maximale réduit l'impact sur les applications en gérant la migration des
connexions, en préservant le CDB source dans l'état de montage pour garantir le transfert de connexion de
l'écouteur vers l'écouteur distant où le PDB est déplacé. Dans ce cas, vous ne pouvez pas créer un PDB avec le
même nom que le PDB source car il entrera en conflit avec le transfert de l'écouteur. Il est prévu que les chaînes de
connexion soient mises à jour à un moment qui convient à l'application. Une fois que cela est fait et que tous les
clients se connectent au nouvel hôte sans transfert, le DBA peut supprimer le PDB source.

Oracle Database 19c : Atelier d'administration 13 ­ 12


Machine Translated by Google

− Si AVAILABILITY MAX est spécifié lors de l'instruction CREATE PLUGGABLE


Commande DATABASE RELOCATE, une manipulation supplémentaire est effectuée pour assurer
une migration en douceur de la charge de travail et un transfert de connexion persistant de la source
vers la cible. La PDB est toujours d'abord ouverte en mode lecture seule. Cela rend la PDB disponible
en tant que cible pour les nouvelles connexions avant la fermeture de la PDB source. Au cours de
cette opération, les informations d'auditeur du CDB cible sont automatiquement envoyées à la source
et un enregistrement de transfert spécial est effectué avec l'auditeur actuel du PDB source. Les
nouvelles connexions à l'écouteur existant sont automatiquement transférées pour se connecter à la
nouvelle cible. Ce transfert persiste même après la fin de l'opération de relocalisation et ne permet
effectivement aucune modification des chaînes de connexion.

− Il est toujours recommandé que les chaînes de connexion soient éventuellement mises à jour à la fois
cela est pratique pour l'application, mais la disponibilité ne dépend pas du moment où cette action est
effectuée.

La relocalisation de la PDB nécessite l'activation du mode d'annulation local et du mode ARCHIVELOG dans les
deux CDB.

Oracle Database 19c : Atelier d'administration 13 ­ 13


Machine Translated by Google

Utilisation de DBCA pour déplacer un PDB distant

CDB1 Utilisez DBCA pour déplacer le PDB1 distant de CDB1 vers CDB2.

Racine CDB
$ export ORACLE_SID=CDB2
Fichiers de données
ANNULER1

APB1 $ dbca ­silent ­relocatePDB ­remotePDBName


PDB1 ­remoteDBConnString CDB1 ­sysDBAUserName système
Déplacer PDB1 de ­sysDBAPassword mot de passe ­remoteDBSYSDBAUserName SYS
CDB1 à CDB2
Lien
BD

­remoteDBSYSDBAUserPassword mot de passe


­dbLinkUsername c##remote_user ­dbLinkUserPassword
CDB2
mot de passe ­sourceDB CDB2 ­pdbName PDB1
Racine CDB

Fichiers de données ANNULER1

APB1

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez utiliser DBCA pour déplacer un PDB distant. L'opération DBCA exécute les étapes suivantes : 1. Vérifie la
présence du lien de base de données. Si le lien de base de données existe, DBCA le supprime.
2. Crée le lien de la base de données
3. Crée la PDB à partir de la PDB distante

4. Vérifie l'état de la PDB clonée pour vérifier qu'elle est en mode monté 5. Ouvre la PDB
déplacée

L'utilisateur de la base de données locale doit disposer du privilège CREATE PLUGGABLE DATABASE dans le conteneur racine
CDB. Les bases de données distantes et locales doivent être en mode archivelog. L'utilisateur commun de la base de données
distante auquel le lien de base de données se connecte doit disposer des privilèges CREATE PLUGGABLE DATABASE, SESSION
et SYSOPER.

Les bases de données locales et distantes doivent avoir les mêmes options installées ou la base de données distante doit avoir un
sous­ensemble de celles présentes sur la base de données locale.

Oracle Database 19c : Atelier d'administration 13 ­ 14


Machine Translated by Google

Proxy PDB : requête sur les CDB proxy racine réplica

SELECT somme(revenu), année, CDB$NAME, CON$NAME


À PARTIR DES CONTENEURS(données_ventes)
WHERE année = 2014 GROUP BY année, CDB$NAME, CON$NAME ;

1 Créer un réplica racine d'application

App_RR Griffonnages App_Root ROBOTS POUPÉES PX_APP_RR

3 Créer l'APB de l'application

CDB2 CDB1

2 Créer un proxy PDB

Récupère les lignes de la table partagée dont les données sont stockées dans les PDB de l'application à la
racine de l'application et les répliques dans les CDB
Revenu Année CDB$NAME CON$NAME

15000000 2014 CDB1 ROBOTS

20000000 2014 CDB2 Griffonnages

10000000 2014 CDB1 POUPÉES

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Un PDB proxy vous permet d'exécuter des instructions SQL dans un PDB distant comme s'il s'agissait d'un PDB local dans le CDB.
Ce type de PDB est très utile pour interroger des données réparties sur des PDB dans différents CDB.

Dans l'exemple de la diapositive, lorsqu'elle est connectée à la racine de l'application toys_root, une requête sur une table partagée
dans les PDB, les robots, les poupées et les doodles de l'application ne peut pas récupérer les lignes des doodles distants si
deux conditions ne sont pas satisfaites :

• Une réplique de la racine de l'application est créée dans la CDB distante pour répliquer la racine de l'application et, par
conséquent, les entités communes de l'application telles que les tables, les utilisateurs et les privilèges. • Un PDB
proxy est créé à la racine de l'application dans le CDB local pour référencer la réplique de la racine de l'application dans le
CDB distant.

Lorsque vous êtes connecté à la racine de l'application toys_root et que vous interrogez à partir d'une table partagée de
l'application installée sur la racine de l'application toys_root, la requête récupère les lignes des deux PDB de l'application
locale, robots et dolls, et de la PDB du proxy de l'application, px_app_rr, l'exécution de la requête dans la réplique racine distante
et donc depuis la PDB de l'application doodles.

Oracle Database 19c : Atelier d'administration 13 ­ 15


Machine Translated by Google

Création d'un proxy PDB

CDB1
Un proxy PDB permet l'exécution dans un proxy PDB.
Racine CDB 1. Passez du mode d'annulation partagé au mode d'annulation local dans
les deux CDB.
Fichiers de données

SYSTÈME ANNULER1 2. Réglez le mode ARCHIVELOG dans les deux CDB.


PXPDB1 SYSAUX

3. Connectez­vous à CDB1 et créez un lien de base de données (vers CDB2).

4. Créez la PDB proxy PXPDB1 dans CDB1 en tant que vue


référençant l'ensemble de la PDB1 proxy dans CDB2.
Copie des fichiers de données
Exécution SQL
SQL> CONNECTER sys@cdb1 EN TANT QUE SYSDBA
SQL> CRÉER UNE BASE DE DONNÉES ENFICHABLE pxpdb1 COMME PROXY
CDB2 DE pdb1@link_cdb2 ;

Racine CDB 5. Exécutez toutes les instructions dans le contexte PDB proxy PXPDB1
pour qu'elles soient exécutées dans le PDB proxy PDB1 dans CDB2.
Fichiers de données Tableau
UTILISATEURS APP.C
SYSTÈME
SYSAUX
SQL> CONNECTER sys@pxpdb1 AS SYSDBA SQL>
CODE ALTER PLUGGABLE DATABASE pxpdb1 OPEN ; SQL> SELECT * FROM
C4 ANNULER1 app.c ;
APB1

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

La création d'une PDB proxy copie les fichiers de données des tablespaces SYSTEM, SYSAUX et UNDO de la PDB
proxy. Un proxy PDB peut être créé, modifié et supprimé de la racine CDB comme n'importe quel PDB normal.
Le lien de base de données doit être créé dans la racine CDB qui contiendra la PDB proxy, et le lien de base de
données se connecte soit à la racine CDB distante, soit au conteneur d'application distante, soit à la PDB d'application
distante.

Toute instruction ALTER PLUGGABLE DATABASE émise à partir de la PDB proxy lorsque la PDB est ouverte est
exécutée dans la PDB proxy. La clause AS PROXY est utilisée pour créer un PDB en tant que PDB proxy. La colonne
IS_PROXY_PDB dans CDB_PDBS s'affiche si un PDB est un PDB proxy.

Oracle Database 19c : Atelier d'administration 13 ­ 16


Machine Translated by Google

Résumé
Dans cette leçon, vous devez avoir appris à : • Cloner
une PDB normale • Débrancher et brancher ou cloner
une non­CDB • Débrancher et brancher une PDB
normale • Effectuer un clonage à chaud

• Effectuez une relocalisation de la PDB avec un temps d'arrêt proche de zéro

• Créer et utiliser un proxy PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 13 ­ 17


Machine Translated by Google

Aperçu de la pratique

• Clonage de PDB distants en mode chaud


• Déplacement des PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 13 ­ 18


Machine Translated by Google

14

Gestion des PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

Après avoir terminé cette leçon, vous devriez être en mesure de :

• Modifier les modes et les paramètres des PDB •

Évaluer l'impact des changements de valeur de paramètre •

Configurer le nom d'hôte et le numéro de port par PDB • Supprimer

les PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 14 ­ 2


Machine Translated by Google

Modification du mode PDB

Après avoir fermé un PDB, ouvrez­le dans :

• Mode lecture/écriture restreint

SQL> CONNECTER sys@pdb1 EN TANT QUE SYSDBA


SQL> MODIFIER LA FERMETURE DE LA BASE DE DONNÉES ENFICHABLE ;

SQL> ALTER PLUGGABLE DATABASE OPEN RESTRICTED ;

SQL> SELECT nom, open_mode FROM v$pdbs ;

NOM OPEN_MODE RÉS


­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­ ­­­

APB1 LIRE ECRIRE OUI

• Mode lecture seule


SQL> CONNECTER / EN TANT QUE SYSDBA
SQL> ALTER PLUGGABLE DATABASE ALL OPEN READ ONLY ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez modifier le mode de chaque PDB pour effectuer des opérations d'administration spécifiques.

Le premier exemple ouvre la PDB en mode RESTRICTED READ WRITE. Cela permet uniquement aux utilisateurs disposant du privilège
RESTRICTED SESSION de se connecter. Cela permet à l'administrateur local de la PDB de gérer les déplacements de fichiers, les sauvegardes
empêchant les sessions d'accéder aux données.

Utilisez la vue V$PDBS pour vérifier que la PDB est en mode ouvert RESTRICTED READ WRITE.

Le deuxième exemple ouvre la PDB en mode LECTURE SEULE. Toute session connectée à la PDB ne peut effectuer que des
transactions en lecture seule.

Pour changer le mode d'ouverture, fermez d'abord la PDB. Vous pouvez appliquer le même mode d'ouverture à tous les PDB ou seulement à
certains d'entre eux.

Oracle Database 19c : Atelier d'administration 14 ­ 3


Machine Translated by Google

Modification des paramètres PDB

• Mettre en ligne un fichier de données


PDB SQL> ALTER PLUGGABLE DATABASE DATAFILE '/u03/pdb1_01.dbf' ONLINE;

• Modifier l'espace de table par défaut de l'APB


SQL> ALTER PLUGGABLE DATABASE TABLESPACE PAR DÉFAUT pdb1_tbs ;

• Modifier l'espace de table temporaire par défaut de l'APB

SQL> ALTER PLUGGABLE DATABASE TEMPORARY TABLESPACE PAR DÉFAUT temp_tbs ;

• Définir la limite de stockage PDB


SQL> MODIFIER LE STOCKAGE DE LA BASE DE DONNÉES ENFICHABLE (MAXSIZE 2G);

• Modifier le nom global


SQL> ALTER PLUGGABLE DATABASE RENOMMER GLOBAL_NAME TO pdbAPP1 ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez modifier les paramètres de chaque PDB sans nécessairement changer le mode du PDB. Vous devez être connecté dans
la PDB pour effectuer les modifications dans les paramètres.

Le premier exemple utilise une clause DATAFILE pour mettre en ligne le fichier de données spécifié.

Le deuxième exemple définit le tablespace permanent par défaut sur PDB1_TBS pour la PDB.

Le troisième exemple définit l'espace de table temporaire par défaut sur TEMP_TBS pour la PDB.

Le quatrième exemple définit la limite de stockage pour tous les espaces de table qui appartiennent à la PDB à deux gigaoctets.

Le cinquième exemple modifie le nom de la base de données globale de la PDB en PDBAPP1. Le nouveau nom de base de
données globale pour cette PDB doit être différent de celui de n'importe quel conteneur de la CDB. Cette opération ne peut être
effectuée qu'en mode restreint.

Oracle Database 19c : Atelier d'administration 14 ­ 4


Machine Translated by Google

Impact de la modification des paramètres d'initialisation

• Un seul fichier de paramètres de serveur (SPFILE) par CDB

• Modifications de la valeur PDB :


– Uniquement lorsque ISPDB_MODIFIABLE=TRUE
– Chargé en mémoire après la fermeture de l'APB
­ Stocké dans le dictionnaire après l'arrêt de CDB

SQL> CONNECTER sys@pdb1 EN TANT QUE SYSDBA


Connecté.
SQL> ALTER SYSTEM SET ddl_lock_timeout=10 ; Système modifié.

SQL> AFFICHER LE PARAMETRE ddl_lock_timeout

NOM TAPER VALEUR


­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­­ ­­­ ­­­­­­

ddl_lock_timeout booléen dix

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Il existe un seul fichier de paramètres de serveur (SPFILE) par CDB. Les valeurs des paramètres d'initialisation sont
associées à la racine CDB et s'appliquent à la racine CDB et servent de valeurs par défaut pour tous les autres conteneurs.
Vous pouvez définir différentes valeurs de paramètre dans les PDB lorsque la valeur de la colonne ISPDB_MODIFIABLE dans
V$PARAMETER est TRUE. Ceux­ci sont définis dans le cadre d'un PDB ; ensuite, ils sont correctement mémorisés lors de la fermeture/
ouverture de la PDB et lors du rebond de l'instance CDB. Ils voyagent également avec des opérations de clonage et de débranchement/
branchement. D'autres paramètres d'initialisation peuvent être définis pour la racine CDB uniquement.

Connectez­vous à la racine CDB pour afficher les valeurs de paramètres spécifiques de tous les conteneurs.

SQL> SELECT db_uniq_name, pdb_uid, nom, valeur$ FROM pdb_spfile$ ;

DB_UNIQ_NA PDB_UID NOM VALUE$


­­­­­­­­­­ ­­­­­­­­­­ ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­ ­­­­­­

cdb2 3072231663 ddl_lock_timeout 4030283986 dix


cdb2 ddl_lock_timeout 3485283967 20
cdb2 ddl_lock_timeout 30

Oracle Database 19c : Atelier d'administration 14 ­ 5


Machine Translated by Google

Modification des paramètres d'initialisation : exemple

SQL> CONNECTER sys@pdb2 EN TANT QUE SYSDBA

SQL> ALTER SYSTEM SET ddl_lock_timeout=20 SCOPE=BOTH ;

SQL> MODIFIER LA FERMETURE DE LA BASE DE DONNÉES ENFICHABLE ;

SQL> MODIFIER LA BASE DE DONNÉES ENFICHABLE OUVRIR ;

SQL> CONNECTER / EN TANT QUE SYSDBA

SQL> SELECT valeur, ispdb_modifiable, con_id FROM v$system_parameter


WHERE nom = 'ddl_lock_timeout' ;

VALEUR ISPDB CON_ID


­­­­­­­­­­­­­­­­­­­­ ­­­­­ ­­­­­­­­­­

0 VRAI 0
dix VRAI 3
20 VRAI 4

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Dans cet exemple, une valeur différente du paramètre DDL_LOCK_TIMEOUT est définie dans PDB2. La
modification est maintenue après la fermeture et la réouverture de la PDB. La colonne CON_ID de la vue
V$SYSTEM_PARAMETER affiche la valeur DDL_LOCK_TIMEOUT dans chaque conteneur, la racine CDB, PDB1 et PDB2.

Oracle Database 19c : Atelier d'administration 14 ­ 6


Machine Translated by Google

Utilisation de la commande ALTER SYSTEM dans un PDB

• Certaines instructions modifient le fonctionnement d'un PDB :

ALTER SYSTEM Affectant uniquement l'APB Objets touchés


ALTER SYSTEM FLUSH SHARED_POOL Uniquement pour les objets de la PDB

ALTER SYSTEM FLUSH BUFFER_CACHE Uniquement pour les tampons de l'APB

ALTER SYSTEM ENABLE/DISABLE RESTRICTED SESSION Uniquement pour les sessions de la PDB

ALTER SYSTEM KILL SESSION Uniquement pour les sessions de l'APB

Paramètre ALTER SYSTEM SET Uniquement pour le paramètre de l'APB

• Certaines instructions ALTER SYSTEM peuvent être exécutées dans une PDB mais affectent l'ensemble de la CDB :

MODIFIER LE POINT DE CONTRÔLE DU SYSTÈME Affecte tous les fichiers de données sauf ceux en lecture seule ou hors ligne

• Toutes les autres instructions ALTER SYSTEM affectent l'ensemble de la CDB et doivent être exécutées par un
utilisateur commun dans la racine CDB.
MODIFIER LE FICHIER JOURNAL DU COMMUTATEUR DE SYSTÈME
Opération non autorisée à partir d'une base de données enfichable

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez utiliser une instruction ALTER SYSTEM pour modifier le mode de fonctionnement d'un PDB. Lorsque le conteneur actuel est un PDB,
vous pouvez exécuter les instructions ALTER SYSTEM suivantes :

ALTER SYSTEM FLUSH SHARED_POOL / BUFFER_CACHE


MODIFIER LE SYSTÈME ACTIVER / DÉSACTIVER LA SESSION RESTREINTE

ALTER SYSTEM SET USE_STORED_OUTLINES


MODIFIER LE SYSTÈME SUSPENDRE/REPRENDRE
ALTER SYSTEM CHECK DATAFILES
MODIFIER LE REGISTRE DU SYSTÈME

ALTER SYSTEM KILL SESSION


MODIFIER LA SESSION DE DÉCONNEXION DU SYSTÈME

ALTER SYSTEM SET initialization_parameter

Certaines instructions ALTER SYSTEM, telles que ALTER SYSTEM CHECKPOINT, peuvent être exécutées à partir d'un PDB mais affectent en
fait l'ensemble du CDB.

D'autres instructions ALTER SYSTEM, telles que ALTER SYSTEM SWITCH LOGFILE, affectent l'ensemble de la CDB et doivent être exécutées par
un utilisateur commun à la racine de la CDB, comme ALTER SYSTEM SWITCH LOG, sauf si vous définissez le paramètre NONCDB_COMPATIBLE
sur TRUE. Ce paramètre influence le comportement des instructions ALTER DATABASE de la même manière.

Oracle Database 19c : Atelier d'administration 14 ­ 7


Machine Translated by Google

Configuration du nom d'hôte et du numéro de port par PDB

• Les paramètres de nom d'hôte et de numéro de port d'un PDB ne sont importants que si les PDB proxy font référence au
PDB.

SQL> ALTER PLUGGABLE DATABASE CONTAINERS HOST = <host_name> ;


SQL> ALTER PLUGGABLE DATABASE CONTAINERS PORT = <port_nb> ;

• Le nom d'hôte et le numéro de port peuvent être réinitialisés à leur valeur par défaut :

SQL> MODIFIER LA RÉINITIALISATION DE L'HÔTE DES CONTENEURS DE BASE DE DONNÉES ENFICHABLE ;

SQL> MODIFIER LA RÉINITIALISATION DU PORT DES CONTENEURS DE BASE DE DONNÉES ENFICHABLES ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Lors de la création de la PDB, les clauses HOST=<host_name_string> et PORT=<port_number> peuvent être utilisées pour
indiquer le nom d'hôte et le numéro de port à utiliser par les liens de base de données internes à partir des PDB proxy qui
référencent la nouvelle PDB. Par défaut, la modification du nom d'hôte et du numéro de port d'un PDB n'a aucun effet sur les
liens de base de données internes qui ont déjà été créés pour pointer vers ce PDB. Seuls les liens de base de données
internes créés ultérieurement seront affectés par le nouveau nom d'hôte et le nouveau numéro de port. Un PDB proxy devra
être recréé pour qu'il puisse récupérer le nouveau numéro de port pour son PDB cible.

Oracle Database 19c : Atelier d'administration 14 ­ 8


Machine Translated by Google

Suppression des PDB


CDB1
Racine CDB
• La graine PDB ne peut pas être supprimée. •
Une graine d'application peut être supprimée. • Une
PDB$SEED racine d'application ne peut pas être supprimée tant qu'un
l'application PDB lui appartient.
Racine de l'application PDB_APP1
• Le PDB source d'un PDB déplacé est automatiquement supprimé
lorsque le PDB déplacé est ouvert en mode RW.
Graine de Application
candidature APB pdb2

Application • La PDB source d'une PDB actualisable peut être supprimée. • Un PDB
APB pdb3
proxy d'un PDB proxy peut être supprimé.
Clone racine de Clone racine de
l'application 1 l'application 2

APB déplacé CDB2


APB source L'opération DROP met à
OUVRIR Source PDBS abandonnée

jour les fichiers de contrôle :


PDB actualisable
APB source
SÉLECTIONNER ORA­00942 1. Supprime les fichiers de données PDB

2. Conserve les fichiers de données (par défaut)


PDB proxy APB proxy
SÉLECTIONNER ORA­12514

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Lorsque vous n'avez plus besoin des données d'un PDB, vous pouvez supprimer le PDB. Il n'y a qu'un seul PDB qui ne peut pas être
supprimé : c'est la graine PDB. • Vous ne pouvez pas supprimer une racine d'application tant qu'il y a encore des PDB d'application
qui lui sont associés.
Déposez d'abord la graine de l'application, puis les PDB de l'application.
• Lorsque la relocalisation d'un PDB est terminée, l'ouverture du nouveau PDB supprime automatiquement la source
APB.

• La suppression de la PDB source d'une PDB actualisable ne supprime pas la PDB actualisable. Les requêtes sur le
les données sources ne sont plus possibles.
• La suppression du PDB proxy d'un PDB proxy ne supprime pas le PDB proxy. Les requêtes sur la PDB proxy ne sont plus
possibles car le lien de la base de données vers la PDB proxy n'est plus valide.

Oracle Database 19c : Atelier d'administration 14 ­ 9


Machine Translated by Google

Résumé

Dans cette leçon, vous devez avoir appris à : • Modifier


les différents modes et paramètres des PDB • Évaluer l'impact
des changements de valeur de paramètre • Configurer le nom
d'hôte et le numéro de port par PDB • Supprimer les PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 14 ­ 10


Machine Translated by Google

Aperçu de la pratique

• Renommer un PDB •
Définir les valeurs des paramètres pour les PDB

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 14 ­ 11


Machine Translated by Google
Machine Translated by Google

15

Présentation du stockage de base de données

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

À l'issue de cette leçon, vous devriez être en mesure de : •


Décrire les structures de stockage logiques et physiques dans une base de données
Oracle • Décrire l'objectif de chacun des tablespaces par défaut • Décrire le stockage
des données dans des blocs • Répertorier les avantages de la création différée de
segments

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 15 ­ 2


Machine Translated by Google

Architecture de stockage de base de données

Fichiers de contrôle Fichiers de données Fichiers de journalisation en ligne

Fichier de paramètres Fichiers de sauvegarde Fichiers de journalisation

d'initialisation archivés

Fichier de mot de passe Fichiers journaux et de


trace

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les fichiers qui composent une base de données Oracle sont les suivants :

• Fichiers de contrôle : chaque base de données possède un fichier de contrôle unique qui contient des données sur
base de données elle­même (c'est­à­dire les informations sur la structure physique de la base de données). Plusieurs copies peuvent
être conservées pour se protéger contre la perte totale. Il peut également contenir des métadonnées liées aux sauvegardes. Le fichier de
contrôle est essentiel pour la base de données. Sans le fichier de contrôle, la base de données ne peut pas être ouverte. • Fichiers de données :

Ils contiennent les données utilisateur ou applicative de la base de données, ainsi que les métadonnées et le dictionnaire de données. • Fichiers redo log
en ligne : Ils permettent par exemple la récupération de la base de données. Si la base de données

Si le serveur tombe en panne et ne perd aucun fichier de données, l'instance peut récupérer la base de données avec les informations
contenues dans ces fichiers.

Les fichiers supplémentaires suivants sont utilisés lors du fonctionnement de la base de données :

• Fichier de paramètres d'initialisation : utilisé pour définir la manière dont l'instance est configurée au démarrage. • Fichier de mots de passe :

permet aux utilisateurs d'utiliser SYSDBA, SYSOPER, SYSBACKUP, SYSDG, SYSKM et


Rôles SYSASM pour se connecter à distance à l'instance et effectuer des tâches administratives

• Fichiers de sauvegarde : utilisés pour la restauration de la base de données. Vous restaurez généralement un fichier de sauvegarde lorsqu'une
défaillance du support ou une erreur de l'utilisateur a endommagé ou supprimé le fichier d'origine.

• Fichiers redo log archivés : contiennent un historique continu des modifications de données (redo)
généré par l'instance. En utilisant ces fichiers et une sauvegarde de la base de données, vous pouvez récupérer un fichier de données perdu.
Les journaux d'archivage permettent la récupération des fichiers de données restaurés.

Oracle Database 19c : Atelier d'administration 15 ­ 3


Machine Translated by Google

• Fichiers de trace : chaque serveur et processus d'arrière­plan peuvent écrire dans un fichier de trace associé. Lorsqu'une erreur
interne est détectée par un processus, le processus vide les informations sur l'erreur dans son fichier de trace. Certaines des
informations écrites dans un fichier de trace sont destinées à l'administrateur de la base de données, tandis que d'autres
informations sont destinées aux services de support Oracle.

Fichier journal des alertes : il s'agit d'entrées de trace spéciales. Le journal des alertes d'une base de données est un journal
chronologique des messages et des erreurs. Oracle vous recommande de consulter régulièrement le journal des alertes.

• Fichier journal DDL : Contient les instructions DDL émises par le serveur de base de données uniquement lorsque le
Le paramètre d'initialisation ENABLE_DDL_LOGGING est défini sur TRUE

Oracle Database 19c : Atelier d'administration 15 ­ 4


Machine Translated by Google

Structures de base de données logiques et physiques

Logique Physique

Base de données

Tablespace Fichier de données

Segment

Système de stockage

Étendue

Bloc de données
Oracle

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

La base de données a des structures logiques et des structures physiques.

Bases de données, tablespaces et fichiers de données La

relation entre les bases de données, les tablespaces et les fichiers de données est illustrée dans la diapositive. Chaque base de
données est logiquement divisée en deux espaces de table ou plus. Un ou plusieurs fichiers de données sont explicitement créés
pour chaque tablespace afin de stocker physiquement les données de tous les segments d'un tablespace. S'il s'agit d'un tablespace
TEMPORARY, il contient un fichier temporaire au lieu d'un fichier de données. Le fichier de données d'un tablespace peut être stocké
physiquement sur n'importe quelle technologie de stockage prise en charge.

Tablespaces

Une base de données est divisée en unités de stockage logiques appelées tablespaces, qui regroupent des structures logiques ou
des fichiers de données associés. Par exemple, les tablespaces regroupent généralement tous les segments d'une application pour
simplifier certaines opérations administratives.

Blocs de données

Au niveau de granularité le plus fin, les données d'une base de données Oracle sont stockées dans des blocs de données. Un bloc de
données correspond à un nombre spécifique d'octets d'espace physique sur le disque. Une taille de bloc de données est spécifiée pour
chaque tablespace lors de sa création. Une base de données utilise et alloue de l'espace de base de données libre dans les blocs de données
Oracle.

Étendues

Le niveau suivant d'espace de base de données logique est une étendue. Une extension est un nombre spécifique de blocs de données
Oracle contigus (obtenus en une seule allocation) qui sont utilisés pour stocker un type spécifique d'informations. Les blocs de données
Oracle dans une étendue sont logiquement contigus mais peuvent être physiquement répartis sur le disque en raison de la répartition RAID
et des implémentations de système de fichiers.

Oracle Database 19c : Atelier d'administration 15 ­ 5


Machine Translated by Google

Segments Le

niveau de stockage de la base de données logique au­dessus d'une extension est appelé un segment. Un segment est un ensemble
d'étendues allouées pour une certaine structure logique. Par exemple:

• Segments de données : chaque table non organisée en index et non en cluster possède un segment de données, à l'exception des
tables externes, des tables temporaires globales et des tables partitionnées. Toutes les données de la table sont stockées dans
les extensions de son segment de données. Pour une table partitionnée, chaque partition a un segment de données.
Chaque cluster a un segment de données. Les données de chaque table du cluster sont stockées dans le segment de
données du cluster. Lorsque la création de segment différée est activée, les segments ne sont pas créés tant que la première ligne
n'est pas insérée.

• Segments d'index : chaque index possède un segment d'index qui stocke toutes ses données. Pour un index partitionné, chaque
partition a un segment d'index.

• Segments d'annulation : un tablespace UNDO est créé pour chaque instance de base de données. Ce
tablespace contient de nombreux segments d'annulation pour stocker temporairement les informations d'annulation. Les
informations d'un segment d'annulation sont utilisées pour générer des informations de base de données cohérentes en lecture et,
lors de la récupération de la base de données, annuler les transactions non validées pour les utilisateurs.

• Segments temporaires : les segments temporaires sont créés par la base de données Oracle lorsqu'une instruction SQL nécessite une
zone de travail temporaire pour terminer son exécution. Lorsque l'instruction termine son exécution, les étendues du segment
temporaire sont renvoyées à la base de données pour une utilisation future.
Spécifiez soit un tablespace temporaire par défaut pour chaque utilisateur, soit un tablespace temporaire par défaut utilisé à l'échelle
de la base de données.

Remarque : Il existe d'autres types de segments qui ne sont pas répertoriés ici. Il existe également des objets de schéma tels que des
vues, des packages et des déclencheurs qui ne sont pas considérés comme des segments, même s'il s'agit d'objets de base de
données. Un segment possède son allocation d'espace disque respective. Les autres objets existent sous forme de lignes stockées dans
un segment de métadonnées système.

Le serveur Oracle Database alloue dynamiquement de l'espace. Lorsque les étendues existantes d'un segment sont pleines, des étendues
supplémentaires sont ajoutées. Étant donné que les extensions sont allouées selon les besoins, les extensions d'un segment peuvent être
contiguës ou non sur le disque, et elles peuvent provenir de différents fichiers de données appartenant au même tablespace.

Oracle Database 19c : Atelier d'administration 15 ­ 6


Machine Translated by Google

Segments, étendues et blocs

• Les segments existent dans un tablespace. • Les

segments sont des ensembles d'étendues.

• Les étendues sont des collections de blocs de données/d'annulation.

• Les blocs de données/annulation sont mappés sur des blocs de disque.

Segment Étendues Blocs de données/ Blocs de disque


annulation (Système de fichiers
Stockage)

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Un sous­ensemble d'objets de base de données, tels que des tables et des index, sont stockés sous forme de segments dans des tablespaces.
Chaque segment contient une ou plusieurs étendues. Une étendue se compose de blocs de données contigus, ce qui signifie que chaque
étendue ne peut exister que dans un seul fichier de données. Les blocs de données sont la plus petite unité d'E/S dans la base de données.

Lorsque la base de données demande un ensemble de blocs de données au système d'exploitation (OS), le système d'exploitation le mappe à un
système de fichiers réel ou à un bloc de disque sur le périphérique de stockage. Pour cette raison, vous n'avez pas besoin de connaître l'adresse
physique des données de votre base de données. Cela signifie également qu'un fichier de données peut être réparti ou mis en miroir sur plusieurs
disques.

La taille du bloc de données peut être définie au moment de la création de la base de données. La taille par défaut de 8 Ko convient à la

plupart des bases de données. Si votre base de données prend en charge une application d'entrepôt de données dotée de tables et d'index
volumineux, une taille de bloc plus grande peut être avantageuse.

Si votre base de données prend en charge une application transactionnelle dans laquelle les lectures et les écritures sont aléatoires, il peut être
avantageux de spécifier une taille de bloc plus petite. La taille de bloc maximale dépend de votre système d'exploitation. La taille de bloc Oracle
minimale est de 2 Ko ; il devrait rarement (voire jamais) être utilisé.

Vous pouvez avoir des tablespaces avec une taille de bloc non standard. Pour plus de détails, consultez le Guide de l'administrateur
de la base de données Oracle.

Oracle Database 19c : Atelier d'administration 15 ­ 7


Machine Translated by Google

Tablespaces et fichiers de données

Tablespace 1 Tablespace 2 (gros fichier)

Fichier de données 1 Fichier de données 2 Fichier de données 3

8 Ko 8 Ko 8 Ko 8 Ko
8 Ko 8 Ko 8 Ko 8 Ko 1 seul fichier de
données autorisé
8 Ko 8 Ko 8 Ko 8 Ko
<= 128 To
8 Ko 8 Ko 8 Ko 8 Ko

Étendue Étendue
64 Ko 64 Ko

Segment
128 Ko

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Une base de données est divisée en tablespaces, qui sont des unités de stockage logiques qui peuvent être utilisées pour regrouper des
structures logiques associées. Un ou plusieurs fichiers de données sont explicitement créés pour chaque tablespace afin de stocker
physiquement les données de toutes les structures logiques d'un tablespace.

Le graphique de la diapositive illustre le tablespace 1, composé de deux fichiers de données. Un segment d'une taille de 128 Ko, composé
de deux extensions, couvre les deux fichiers de données. La première étendue de taille 64 Ko se trouve dans le premier fichier de données et
la deuxième étendue, également de taille 64 Ko, se trouve dans le deuxième fichier de données. Les deux extensions sont formées de blocs
Oracle contigus de 8 Ko.

Remarque : Vous pouvez également créer des tablespaces bigfile, qui n'ont qu'un seul fichier souvent très volumineux. Le fichier peut être de
n'importe quelle taille jusqu'au maximum autorisé par l'architecture d'ID de ligne. La taille maximale du fichier de données unique ou du fichier
temporaire est de 128 téraoctets (To) pour un tablespace avec 32 K blocs et de 32 To pour un tablespace avec 8 K blocs.

Les tablespaces petits fichiers traditionnels (qui sont la valeur par défaut) peuvent contenir plusieurs fichiers de données, mais les fichiers ne
peuvent pas être aussi volumineux. Pour plus d'informations sur les espaces de table bigfile, consultez le Guide de l'administrateur de la base
de données Oracle.

Oracle Database 19c : Atelier d'administration 15 ­ 8


Machine Translated by Google

Tablespaces par défaut dans une base de données de conteneur mutualisée

Description de l'espace disque logique

SYSTÈME L'espace de table SYSTEM est utilisé pour les fonctionnalités de base. Dans le conteneur racine, il contient les métadonnées fournies
par Oracle. Dans un PDB, il contient des métadonnées utilisateur.

SYSAUX Le tablespace SYSAUX est un tablespace auxiliaire du tablespace SYSTEM et permet de réduire la charge sur le tablespace SYSTEM.
Il existe dans le conteneur racine et dans chaque PDB.

TEMP L'espace de table TEMP contient des objets de schéma uniquement pour la durée d'une session. Il existe un tablespace
temporaire par défaut pour la racine CDB et un pour chaque racine d'application, PDB d'application et PDB.

ANNULER L'espace de table UNDO stocke les données nécessaires pour annuler ou annuler les modifications apportées à la base de données.
Un tablespace d'annulation actif existe dans le conteneur racine. Il est recommandé d'avoir un tablespace d'annulation local dans
chaque PDB.

UTILISATEURS L'espace de table USERS stocke des objets et des données utilisateur. Il est créé par défaut dans le conteneur racine
uniquement.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

SYSTEM : Il stocke le dictionnaire de données (métadonnées décrivant les objets de la base de données) et les tables
contenant des informations administratives sur la base de données. Toutes ces informations sont contenues dans le schéma
SYS et ne sont accessibles que par l'utilisateur SYS ou d'autres utilisateurs administratifs disposant du privilège requis. Dans
le conteneur racine, il stocke les métadonnées fournies par Oracle, tandis que dans une PDB, il stocke les métadonnées
utilisateur. Les pointeurs des PDB vers les objets fournis par Oracle permettent d' accéder aux objets « système » sans les
dupliquer dans les PDB.

SYSAUX : le tablespace SYSAUX est un tablespace auxiliaire du tablespace SYSTEM et permet de réduire la charge
sur le tablespace SYSTEM. Certains composants et produits qui utilisaient le tablespace SYSTEM ou leurs propres
tablespaces dans les versions antérieures d'Oracle Database utilisent désormais le tablespace SYSAUX. L'espace de
table SYSAUX existe dans le conteneur racine et dans chaque PDB.

TEMP : l'espace de table TEMP contient des objets de schéma uniquement pour la durée d'une session. Les objets
des tablespaces temporaires sont stockés dans des fichiers temporaires. Votre tablespace temporaire est utilisé lorsque vous
exécutez une instruction SQL qui nécessite la création de segments temporaires (comme un grand tri ou la création d'un
index). Tout comme chaque utilisateur se voit attribuer un tablespace par défaut pour stocker les objets de données créés,
chaque utilisateur se voit attribuer un tablespace temporaire.
UNDO : l'espace de table UNDO stocke les données nécessaires pour annuler ou annuler les modifications apportées à la
base de données. Dans une CDB à instance unique, un tablespace UNDO actif existe dans le conteneur racine. Il est facultatif,
mais recommandé, d'avoir un tablespace UNDO local dans un PDB.

USERS : l'espace de table USERS stocke des objets et des données utilisateur. Si aucun tablespace par défaut n'est
spécifié lors de la création d'un utilisateur, alors le tablespace USERS est le tablespace par défaut pour tous les objets créés
par cet utilisateur. Pour les utilisateurs SYS et SYSTEM, le tablespace permanent par défaut est SYSTEM. L'espace de table
USERS est créé par défaut dans le conteneur racine uniquement.

Oracle Database 19c : Atelier d'administration 15 ­ 9


Machine Translated by Google

Tablespaces SYSTEM et SYSAUX

• Les tablespaces SYSTEM et SYSAUX sont des tablespaces obligatoires qui sont créés à
moment de la création de la base de données. Ils doivent être en ligne.

• Le tablespace SYSTEM est utilisé pour les fonctionnalités de base (par exemple, le dictionnaire de données
les tables).

• L'espace de table auxiliaire SYSAUX est utilisé pour les composants de base de données supplémentaires. • Les

tablespaces SYSTEM et SYSAUX ne doivent pas être utilisés pour les données d'application.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Chaque base de données Oracle doit contenir un tablespace SYSTEM et un tablespace SYSAUX. Ils sont créés
automatiquement lors de la création de la base de données. La valeur par défaut du système consiste à créer un espace
de table de petit fichier. Vous pouvez également créer des tablespaces bigfile, qui permettent à la base de données Oracle de
gérer des fichiers ultralarges.

Un tablespace peut être en ligne (accessible) ou hors ligne (non accessible). Le tablespace SYSTEM est toujours en ligne lorsque
la base de données est ouverte. Il stocke les tables qui prennent en charge les fonctionnalités de base de la base de données,
telles que les tables du dictionnaire de données.

Le tablespace SYSAUX est un tablespace auxiliaire du tablespace SYSTEM. L'espace de table SYSAUX stocke de
nombreux composants de base de données et doit être en ligne pour le bon fonctionnement de tous les composants de base
de données. Les tablespaces SYSTEM et SYSAUX ne sont pas recommandés pour stocker les données d'une application. Des
tablespaces supplémentaires peuvent être créés à cet effet.

Remarque : L'espace de table SYSAUX peut être mis hors ligne pour effectuer la récupération de l'espace de table, alors que
cela n'est pas possible pour l'espace de table SYSTEM. Aucun d'entre eux ne peut être mis en lecture seule.

Oracle Database 19c : Atelier d'administration 15 ­ 10


Machine Translated by Google

Types de segments

• Un segment est un ensemble d'étendues allouées pour une certaine structure


logique. • Les différents types de segments incluent : – Table et cluster

– Indice
– Annuler
– Temporaire •
Les segments sont alloués dynamiquement par le serveur Oracle Database.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Segments de table et de cluster : chaque table non clusterisée possède un segment de données. Toutes les données de table sont stockées dans les
étendues du segment de table. Pour une table partitionnée, chaque partition a un segment de données. Chaque cluster a un segment de données. Les
données de chaque table du cluster sont stockées dans le segment de données du cluster.

Segment d'index : chaque index possède un segment d'index qui stocke toutes ses données. Pour un index partitionné, chaque partition a un
segment d'index.

Segment d'annulation : la base de données Oracle conserve les informations permettant d'annuler les modifications apportées à la base de données.
Ces informations consistent en des enregistrements des actions des transactions, collectivement appelées annulation. L'annulation est stockée dans des
segments d'annulation dans un tablespace d'annulation.

Segment temporaire : un segment temporaire est créé par le serveur de base de données Oracle lorsqu'une instruction SQL a besoin d'une zone de
base de données temporaire pour terminer son exécution. Lorsque l'exécution de l'instruction est terminée, les étendues du segment temporaire sont
renvoyées au système pour une utilisation future.

Le serveur Oracle Database alloue dynamiquement de l'espace lorsque les étendues existantes d'un segment sont pleines. Étant donné que les
étendues sont allouées selon les besoins, les étendues d'un segment peuvent ou non être contiguës sur le disque.

Oracle Database 19c : Atelier d'administration 15 ­ 11


Machine Translated by Google

Comment les données de table sont stockées

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

À moins que la création de segment différé ne soit activée, un "segment" logique est créé lors de la création d'un tableau,
comme illustré dans la diapositive. Un tablespace contient une collection de segments.

Logiquement, une table contient des lignes de valeurs de colonne. Une ligne est finalement stockée dans un bloc de base de
données sous la forme d'un morceau de ligne (également illustré dans la diapositive). C'est ce qu'on appelle une pièce de
rangée car, dans certaines circonstances, la rangée entière peut ne pas être stockée au même endroit. Cela se produit
lorsqu'une ligne insérée est trop grande pour tenir dans un seul bloc (ligne chaînée) ou lorsqu'une mise à jour fait qu'une
ligne existante dépasse l'espace libre disponible du bloc actuel (ligne migrée). Les éléments de ligne sont également utilisés
lorsqu'un tableau comporte plus de 255 colonnes. Dans ce cas, les pièces peuvent être dans le même bloc (chaînage intra­
bloc) ou sur plusieurs blocs.

Oracle Database 19c : Atelier d'administration 15 ­ 12


Machine Translated by Google

Contenu du bloc de base de données

En­tête de bloc

Croissance Espace libre

Données de ligne

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Un bloc de base de données contient un en­tête de bloc, des données de ligne et de l'espace libre, comme illustré dans la diapositive.

• Un en­tête de bloc contient le type de segment (tel que table ou index), l'adresse du bloc de données, le répertoire de
la table, le répertoire des lignes et des emplacements de transaction d'environ 23 octets chacun, qui sont utilisés
lorsque des modifications sont apportées aux lignes du bloc. L'en­tête du bloc se développe vers le bas à partir du
haut.
• Les données de ligne sont les données réelles des lignes du bloc. L'espace de données de ligne augmente à partir de la
bas.

• L'espace libre se trouve au milieu du bloc, ce qui permet à l'en­tête et à l'espace de données de la ligne d'augmenter si nécessaire.
Les données de ligne occupent de l'espace libre lorsque de nouvelles lignes sont insérées ou lorsque des colonnes de lignes
existantes sont mises à jour avec des valeurs plus grandes. Exemples d'événements qui provoquent une croissance de l'en­tête :
­ Répertoires de lignes nécessitant plus d'entrées de ligne

­ Plus d'emplacements de transaction requis que ceux initialement configurés

Initialement, l'espace libre dans un bloc est contigu. Cependant, les suppressions et les mises à jour peuvent fragmenter
l'espace libre dans le bloc. L'espace libre dans le bloc est fusionné par le serveur Oracle si nécessaire.

Oracle Database 19c : Atelier d'administration 15 ­ 13


Machine Translated by Google

Présentation de la création de segment différée

• DEFERRED_SEGMENT_CREATION = TRUE est la valeur par défaut.


• Le segment différé est la valeur par défaut pour les tables, les index et les
partitions. • La création de segment se déroule comme suit :
– Création de table > Exploitation du dictionnaire de données

– DML > Création de segments

CRÉER UN TABLEAU INSÉRER DANS

• Économie d'espace disque •


Amélioration du temps d'installation des grosses applications

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Lorsque vous créez une table de tas non partitionnée, la création du segment de table est reportée à la première insertion de ligne.
Cette fonctionnalité est activée par défaut avec le paramètre d'initialisation DEFERRED_SEGMENT_CREATION défini sur TRUE.

Avantages de cette méthode d'allocation d'espace :

• Une quantité importante d'espace disque peut être économisée pour les applications qui créent des centaines ou des milliers de
tables lors de l'installation, dont beaucoup risquent de ne jamais être remplies. • Le temps d'installation de l'application est

réduit.

Lorsque vous insérez la première ligne dans la table, les segments sont créés pour la table de base, ses colonnes LOB et ses index.
Lors de la création du segment, les curseurs sur la table sont invalidés. Ces opérations ont un léger impact supplémentaire sur les
performances.

Avec cette méthode d'allocation, il est essentiel que vous effectuiez une planification de capacité appropriée afin que la base de données
dispose de suffisamment d'espace disque pour gérer la création de segments lorsque les tables sont remplies.

Oracle Database 19c : Atelier d'administration 15 ­ 14


Machine Translated by Google

Contrôle de la création de segments différés

• Avec le paramètre DEFERRED_SEGMENT_CREATION :


– Fichier de paramètres d'initialisation
– Commande ALTER SESSION
– Commande ALTER SYSTEM
• Avec la clause SEGMENT CREATION :
– IMMÉDIAT

– DIFFÉRÉ (par défaut)

CRÉER TABLE SEG_TAB3(numéro C1, numéro C2)


CREATION DE SEGMENT IMMEDIATE TABLESPACE SEG_TBS ;
CRÉER TABLE SEG_TAB4(numéro C1, numéro C2)
CRÉATION DE SEGMENT DIFFÉRÉE ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

La création de segment peut être contrôlée de deux manières :

• Avec le paramètre d'initialisation DEFERRED_SEGMENT_CREATION défini sur TRUE ou FALSE. Ce paramètre peut être
défini dans le fichier de paramètres d'initialisation. Vous pouvez également le contrôler via les commandes ALTER
SESSION ou ALTER SYSTEM.

• Avec la clause SEGMENT CREATION de la commande CREATE TABLE :

­ CRÉATION DE SEGMENT DIFFÉRÉE : si spécifié, la création du segment est différée jusqu'à la première
ligne est insérée dans le tableau. Ceci est le comportement par défaut.

­ SEGMENT CREATION IMMEDIATE : si spécifié, les segments sont matérialisés lors de la


création.

Cette clause est prioritaire sur le paramètre DEFERRED_SEGMENT_CREATION.

Il est possible de forcer la création de segments pour une table existante avec la commande ALTER TABLE. … DÉPLACER

Il n'est pas possible de contrôler directement la création de segment différée pour les objets dépendants tels que les index.
Ils héritent de cette caractéristique de leur objet parent, dans ce cas, la table.

Oracle Database 19c : Atelier d'administration 15 ­ 15


Machine Translated by Google

Surveillance de l'utilisation de l'espace de table

97 % critique
Alerte Effacé

85% Avertissement

Effacé
Alerte
MMON

• Tablespaces en lecture seule et hors ligne : ne configurez pas


d'alertes. • Tablespace temporaire : le seuil correspond à l'espace actuellement utilisé par les
sessions. • Undo tablespace : le seuil correspond à l'espace utilisé par les actifs et non expirés.
étendues.

• Fichiers auto­extensibles : le seuil est basé sur la taille de fichier maximale.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Le serveur de base de données suit l'utilisation de l'espace tout en effectuant des activités régulières de gestion de l'espace.
Ces informations sont agrégées par le processus MMON. Une alerte est déclenchée lorsque le seuil d'un tablespace a été
atteint ou effacé.

Les alertes ne doivent pas être signalées sur les tablespaces qui sont en mode lecture seule ou sur les tablespaces qui
ont été mis hors ligne, car il n'y a pas grand­chose à faire pour eux.

Dans les tablespaces temporaires, la valeur seuil doit être définie comme une limite sur l'espace utilisé dans le tablespace.

Pour les tablespaces d'annulation, une extension est réutilisable si elle ne contient pas d'annulation active ou non expirée.
Pour le calcul de la violation de seuil, la somme des étendues actives et non expirées est considérée comme l'espace
utilisé.

Pour les espaces de table avec des fichiers auto­extensibles, les seuils sont calculés en fonction de la taille de fichier maximale que vous avez
spécifiée ou de la taille de fichier maximale du système d'exploitation.

Le schéma de la diapositive montre que le processus MMON agrège les informations d'utilisation de l'espace et génère une
alerte critique lorsque l'espace de table est plein à 97 % et un avertissement lorsqu'il est plein à 85 %. L'alerte est effacée une
fois le problème d'utilisation de l'espace résolu.

Oracle Database 19c : Atelier d'administration 15 ­ 16


Machine Translated by Google

Structures de stockage de base de données Oracle : diagramme d'architecture interactif

Accédez au diagramme d'architecture interactif sur la page


"Nouveautés" de la base de données Oracle d'Oracle Help Center.

[Link]

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 15 ­ 17


Machine Translated by Google

Résumé

Dans cette leçon, vous devriez avoir appris à :


• Décrire les structures de stockage logiques et physiques dans une base de données
Oracle • Décrire le but de chacun des tablespaces par défaut • Décrire le stockage des
données dans des blocs • Énumérer les avantages de la création différée de segments

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 15 ­ 18


Machine Translated by Google

16

Créer et gérer des tablespaces

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

À la fin de cette leçon, vous devriez être en mesure de : • Créer, modifier et

supprimer des tablespaces • Afficher les informations sur les tablespaces

• Implémenter Oracle Managed Files (OMF)

• Déplacer et renommer les fichiers de données en ligne

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 16 ­ 2


Machine Translated by Google

Création d'espaces de table

• Un tablespace est une allocation d'espace dans la base de données qui peut contenir des objets de
schéma. • Créez un tablespace avec l'instruction CREATE TABLESPACE ou utilisez un outil graphique.
• Vous pouvez créer trois types de tablespaces :
– Tablespace permanent : contient des objets de schéma persistants. Les objets des tablespaces permanents sont
stockés dans des fichiers de données.

– Undo tablespace : est un type de tablespace permanent utilisé par Oracle Database pour
gérer les données d'annulation en mode de gestion automatique des annulations

– Tablespace temporaire : contient des objets de schéma uniquement pour la durée d'une session.
Les objets des tablespaces temporaires sont stockés dans des fichiers temporaires.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Avant de pouvoir créer un tablespace, vous devez créer une base de données pour le contenir, et la base de
données doit être ouverte. Vous devez également disposer du privilège système CREATE TABLESPACE. Pour
créer l'espace de table SYSAUX, vous devez disposer du privilège système SYSDBA.

Oracle Database 19c : Atelier d'administration 16 ­ 3


Machine Translated by Google

Création d'un tablespace : clauses


Incluez une ou plusieurs des clauses suivantes pour définir divers aspects de l'espace de table :

Clause Description
DATAFILE ou TEMPFILE Utilisé pour spécifier le nom, l'emplacement et la taille initiale du fichier de données ou du
fichier temporaire

EN LIGNE ou HORS LIGNE Utilisé pour rendre le tablespace disponible (ou non disponible) immédiatement après sa création

TAILLE DE BLOC Utilisé pour spécifier une taille de bloc non standard

GESTION DE L'ÉTENDUE Utilisé pour spécifier comment les étendues de l'espace de table seront gérées et où les
métadonnées pour les étendues allouées et non allouées doivent être stockées

ENREGISTREMENT Utilisé pour spécifier les attributs de journalisation par défaut des objets dans le
tablespace

GESTION DES SECTEURS Utilisé pour spécifier comment l'espace libre dans les segments du tablespace doit être suivi
(bitmaps ou listes libres)

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Spécification du nom et de la taille du fichier

Vous devez inclure la clause DATAFILE ou TEMPFILE lorsque vous créez un tablespace. Utilisez cette clause pour spécifier
le nom et l'emplacement du fichier de données ou du fichier temporaire. Un tablespace doit avoir au moins un fichier de données ou
un fichier temporaire. Vous devez également spécifier une taille de fichier initiale.

Vous pouvez inclure la clause AUTOEXTEND ON pour étendre automatiquement le fichier lorsqu'il est plein. Dans ce cas, vous
devrez spécifier un montant d'incrément et une taille de fichier maximale, qui peut être illimitée.
N'oubliez pas que la taille du fichier est limitée par le support physique sur lequel il réside.

Vous pouvez inclure la clause BIGFILE ou SMALLFILE pour remplacer le type d'espace table par défaut (permanent ou
temporaire) pour la base de données. Si vous omettez cette clause, Oracle Database utilise le type d'espace de table par défaut
actuel.

• Un tablespace bigfile ne contient qu'un seul fichier de données (ou fichier temporaire), qui peut contenir jusqu'à
environ 4 milliards de blocs. Les tablespaces Bigfile sont utilisés avec des bases de données extrêmement volumineuses,
dans lesquelles la gestion automatique du stockage (ASM) ou d'autres gestionnaires de volumes logiques prennent en
charge la répartition ou la matrice redondante de disques indépendants (RAID) et les volumes logiques dynamiquement
extensibles. Pour les espaces de table bigfile, vous ne pouvez spécifier qu'un seul fichier de données dans la clause
DATAFILE ou un seul fichier temporaire dans la clause TEMPFILE.

• Un tablespace smallfile est un tablespace Oracle traditionnel, qui peut contenir 1 022 fichiers de données ou fichiers temporaires,
chacun pouvant contenir jusqu'à environ 4 millions de blocs.

Spécification de la disponibilité de l'espace table

Vous pouvez inclure la clause ONLINE ou OFFLINE pour rendre l'espace table disponible (ou non disponible) immédiatement après
sa création pour les utilisateurs auxquels l'accès à l'espace table a été accordé. EN LIGNE est la valeur par défaut. La vue du
dictionnaire de données DBA_TABLESPACES indique si chaque tablespace est en ligne ou hors ligne. Cette clause ne peut pas être
utilisée avec des tablespaces temporaires.
Oracle Database 19c : Atelier d'administration 16 ­ 4
Machine Translated by Google

Spécification de la taille de bloc

Vous pouvez inclure la clause BLOCKSIZE pour spécifier une taille de bloc non standard. Pour spécifier cette clause, le paramètre
DB_CACHE_SIZE et au moins un paramètre DB_nK_CACHE_SIZE doivent être définis, et l'entier que vous spécifiez dans cette
clause doit correspondre à la définition d'un paramètre DB_nK_CACHE_SIZE . Vous ne pouvez pas spécifier de tailles de bloc non
standard pour un tablespace temporaire ou si vous avez l'intention d' affecter ce tablespace en tant que tablespace temporaire pour
des utilisateurs. Si vous ne spécifiez pas de taille de bloc, la base de données utilisera la taille de bloc par défaut de 8 Ko pour l'espace
de table.

Spécification de la gestion de l'étendue Vous

pouvez inclure la clause EXTENT MANAGEMENT pour spécifier comment les étendues de l'espace de table seront gérées. •
AUTOALLOCATE indique que l'espace table est géré par le système. Les utilisateurs ne peuvent pas spécifier une taille d'étendue.

Vous ne pouvez pas spécifier AUTOALLOCATE pour un tablespace temporaire.

• La valeur UNIFORM indique que le tablespace est géré avec des étendues uniformes de SIZE
octets. La taille par défaut est de 1 Mo. Toutes les étendues des tablespaces temporaires sont de taille uniforme, ce mot­
clé est donc facultatif pour un tablespace temporaire. Cependant, vous devez spécifier UNIFORM pour spécifier SIZE.
Vous ne pouvez pas spécifier UNIFORM pour un tablespace d'annulation.

Si vous ne spécifiez pas AUTOALLOCATE ou UNIFORM, la valeur par défaut est UNIFORM pour les tablespaces
temporaires et AUTOALLOCATE pour tous les autres types de tablespaces. Si vous ne spécifiez pas la clause
EXTENT_MANAGEMENT, Oracle Database interprète la clause MINIMUM EXTENT et la clause DEFAULT STORAGE pour
déterminer la gestion de l'étendue.

De plus, avec la clause EXTENT MANAGEMENT, vous pouvez spécifier où les métadonnées des extensions allouées et non
allouées doivent être stockées, soit dans le dictionnaire de données (DICTIONARY), soit dans le tablespace lui­même (LOCAL) .
Les tablespaces qui enregistrent l'allocation d'étendue dans le dictionnaire sont appelés tablespaces gérés par dictionnaire. Les
tablespaces qui enregistrent l'allocation d'extent dans l'en­tête de tablespace sont appelés tablespaces gérés localement.

Spécification des attributs de journalisation par défaut

Vous pouvez inclure la clause LOGGING pour spécifier les attributs de journalisation par défaut de toutes les tables, index, vues
matérialisées, journaux de vues matérialisées et partitions d'un tablespace. L'attribut de journalisation contrôle si certaines
opérations DML sont consignées dans le fichier de journalisation (LOGGING) ou non (NOLOGGING). La valeur par défaut est
LOGGING. Cette clause n'est pas valide pour un tablespace temporaire ou d'annulation.

Si la journalisation n'est pas activée, les chargements directs utilisant SQL*Loader et les opérations INSERT de chargement direct
ne sont pas écrits dans le journal de rétablissement, et les objets sont donc irrécupérables en cas de perte de données. Lorsqu'un
objet est créé sans que la journalisation soit activée, vous devez sauvegarder ces objets si vous souhaitez qu'ils soient récupérables.
Choisir de ne pas activer la journalisation peut avoir un impact significatif sur la capacité à récupérer des objets à l'avenir. Utiliser avec
précaution.

Vous pouvez utiliser la clause FORCE LOGGING pour mettre le tablespace en mode FORCE LOGGING. Oracle Database
enregistrera toutes les modifications apportées à tous les objets de l'espace de table, à l'exception des modifications apportées aux
segments temporaires, en remplaçant tout paramètre NOLOGGING pour les objets individuels. La base de données doit être ouverte
et en mode READ WRITE.

Oracle Database 19c : Atelier d'administration 16 ­ 5


Machine Translated by Google

Spécification de la gestion de l'espace libre


Vous pouvez inclure la clause SEGMENT MANAGEMENT pour spécifier si Oracle Database doit suivre l'espace utilisé et
libre dans les segments du tablespace à l'aide de listes libres ou de bitmaps (AUTO) ou non (MANUAL). • AUTO : le
serveur Oracle Database utilisera des bitmaps pour gérer l'espace libre dans les segments.

Le bitmap décrit l'état de chaque bloc de données dans un segment par rapport à la quantité d'espace
disponible dans le bloc pour l'insertion de lignes. Lorsque plus ou moins d'espace devient disponible dans un
bloc de données, le nouvel état est reflété dans le bitmap. Avec les bitmaps, la base de données Oracle gère
plus automatiquement l'espace libre. Par conséquent, cette forme de gestion de l'espace est appelée gestion
automatique de l'espace de segment (ASSM).
• MANUEL : vous souhaitez utiliser des listes libres pour gérer l'espace libre dans les segments. Les listes libres
sont des listes de blocs de données disposant d'un espace disponible pour l'insertion de lignes. Cette forme
de gestion de l'espace dans les segments est appelée gestion manuelle de l'espace des segments en raison
de la nécessité de spécifier et d'ajuster les paramètres de stockage PCTUSED, FREELISTS et FREELIST
GROUPS pour les objets de schéma créés dans le tablespace. Ceci est pris en charge pour la rétrocompatibilité ;
il est recommandé d'utiliser ASSM.
La clause SEGMENT MANAGEMENT s'applique uniquement aux tablespaces permanents gérés localement et n'est
pas valide pour les tablespaces temporaires.

Oracle Database 19c : Atelier d'administration 16 ­ 6


Machine Translated by Google

Créer des tablespaces permanents dans un CDB

• Création de tablespace lors de la création de CDB :


– Avec DBCA : tablespace USERS créé à la racine CDB
– Avec l'instruction CREATE DATABASE avec la clause USER_DATA TABLESPACE : Votre
tablespace défini créé à la racine CDB • Créez
un tablespace permanent à la racine CDB :

SQL> CONNECTER
system@cdb1 SQL> CREATE TABLESPACE
tbs_CDB_users DATAFILE '/u1/app/oracle/oradata/cdb/cdb_users01.dbf' SIZE 100M;

• Créez un tablespace permanent dans un PDB :

SQL> CONNECTER
system@PDB1 SQL> CREATE TABLESPACE
tbs_PDB1_users DATAFILE '/u1/app/oracle/oradata/cdb/pdb1/[Link]' SIZE 100M;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Dans une non­CDB, tous les tablespaces appartiennent à une seule base de données. Dans un CDB, un ensemble d'espaces de table
appartient à la racine CDB, et chaque PDB a son propre ensemble d'espaces de table.

Dans une architecture mutualisée, le tablespace est créé dans le conteneur où la commande CREATE TABLESPACE est
exécutée.

Séparer les fichiers de données dans différents répertoires par PDB peut aider à déterminer quels fichiers appartiennent à quel PDB,
bien que cela ne soit pas nécessaire.

Vous pouvez utiliser le stockage Oracle ASM pour gérer votre stockage sur disque.

La clause USER_DATA TABLESPACE de la commande CREATE DATABASE vous permet de spécifier un tablespace par défaut autre
que USERS lors de l'utilisation de DBCA pour créer une base de données. Ce tablespace sera également utilisé pour les options XDB.

Oracle Database 19c : Atelier d'administration 16 ­ 7


Machine Translated by Google

Définition des tablespaces permanents par défaut


Base de données de conteneurs mutualisés CDB1

Racine CDB SYSTÈME TBS_CDB_USERS

PDBHR SYSTÈME PDBHR_USERS

PDBdev SYSTÈME
• Au CDB

SQL> CONNECTER system@cdb1


SQL> ALTER DATABASE DEFAULT TABLESPACE tbs_CDB_users ;

• Dans l'APB
SQL> CONNECTER pdb1_admin@pdbhr
SQL> ALTER PLUGGABLE DATABASE TABLESPACE PAR DÉFAUT pdbhr_users ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

L'espace de table par défaut d'une base de données est une propriété de base de données. Pour modifier l'espace de table
par défaut d'un conteneur racine CDB, vous devez vous connecter au conteneur racine CDB en tant qu'utilisateur disposant
des privilèges appropriés et émettre la commande ALTER DATABASE. Cette opération ne modifie pas l'espace de table
permanent par défaut des PDB.

Pour modifier l'espace de table par défaut d'une PDB, vous devez vous connecter à la PDB en tant qu'utilisateur
disposant des autorisations appropriées et émettre la commande ALTER PLUGGABLE DATABASE. Lorsqu'elles sont
connectées à la PDB, les commandes ALTER DATABASE et ALTER PLUGGABLE DATABASE effectuent les mêmes
modifications sur la PDB. La commande ALTER DATABASE est autorisée pour la compatibilité descendante.

Oracle Database 19c : Atelier d'administration 16 ­ 8


Machine Translated by Google

Tablespaces temporaires
Base de données de conteneurs mutualisés CDB1

Racine CDB TEMP_ROOT

PDBtest TEMP

PDBHR LOCAL_TEMP TEMP2

• Un seul tablespace temporaire ou groupe de tablespaces par défaut est autorisé par CDB ou PDB. •
Chaque PDB peut avoir des tablespaces temporaires ou des groupes de tablespaces. • Définissez le
tablespace temporaire par défaut dans un PDB :

SQL> CONNECTER pdb1_admin@pdbhr


SQL> ALTER DATABASE DEFAULT TEMPORARY TABLESPACE local_temp ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Une CDB ne peut avoir qu'un seul tablespace temporaire ou groupe de tablespaces par défaut. Comme avec un non­CDB, il peut
y avoir d'autres tablespaces temporaires auxquels les utilisateurs peuvent être affectés.

Les PDB doivent avoir leur propre espace de table temporaire (ou groupe d'espaces de table) à utiliser par les utilisateurs de la PDB.
Ces tablespaces temporaires seront transportés avec la PDB lorsqu'elle sera débranchée.

La création d'un utilisateur local nécessite l'affectation d'un tablespace temporaire par défaut dans la PDB.
La création d'un utilisateur commun nécessite que l'espace de table temporaire par défaut existe dans le conteneur où il est répliqué.

L'espace de table temporaire par défaut pour la CDB est défini au niveau racine de la CDB. Il peut y avoir plusieurs tablespaces
temporaires, mais un seul peut être la valeur par défaut.

Lorsque vous créez un utilisateur, vous pouvez spécifier un tablespace temporaire à utiliser par cet utilisateur. Si aucun
espace de table temporaire n'est spécifié, l'espace de table par défaut de la PDB est utilisé.

La quantité d'espace qu'un PDB peut utiliser dans le tablespace temporaire partagé peut être limitée :

MODIFIER LE STOCKAGE DE LA BASE DE DONNÉES ENFICHABLE (MAX_SHARED_TEMP_SIZE 500 M );

Dans cet exemple, si la valeur utilisée par les sessions connectées à la PDB est supérieure à 500 Mo, aucun stockage
supplémentaire dans l'espace de table temporaire partagé ne sera disponible pour les sessions connectées à la PDB jusqu'à ce
que la quantité de stockage utilisée par elles devienne inférieure à 500M.

Oracle Database 19c : Atelier d'administration 16 ­ 9


Machine Translated by Google

Modification et suppression de tablespaces

• Lorsque vous créez un tablespace, il s'agit initialement d'un tablespace en lecture/écriture. • Utilisez

l'instruction ALTER TABLESPACE pour mettre un tablespace hors ligne ou en ligne, lui ajouter des fichiers de données
ou des fichiers temporaires, ou en faire un tablespace en lecture seule. • Un tablespace peut être dans l'un des trois

statuts ou états suivants :

– Lire Ecrire
– Lecture seule
– Hors ligne avec l'une des options suivantes :
— NORMALE

— TEMPORAIRE

— IMMÉDIAT

• Ajoutez de l'espace à un tablespace existant en ajoutant des fichiers de données au tablespace ou en modifiant la taille
d'un fichier de données existant. • Utilisez l'instruction DROP TABLESPACE pour supprimer un tablespace et son

contenu du
base de données si vous n'avez plus besoin de son contenu.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Modification du statut

Un tablespace peut être dans l'un des trois statuts ou états différents. L'un des trois états suivants peut ne pas être disponible car leur
disponibilité dépend du type d'espace de table :

• Lecture/écriture : le tablespace est en ligne et peut être lu et écrit. • Lecture seule : spécifiez la lecture seule

pour placer le tablespace en mode lecture seule de transition. Dans ce


, les transactions existantes peuvent être terminées (validées ou annulées), mais aucune autre opération de langage de
manipulation de données (DML) n'est autorisée sur les objets du tablespace. L'espace table est en ligne lorsqu'il est en lecture
seule. Vous ne pouvez pas mettre les tablespaces SYSTEM ou SYSAUX en lecture seule.

Remarque : Les tablespaces d'annulation et temporaires ne peuvent pas être mis en lecture seule.

Hors ligne : vous pouvez mettre un tablespace en ligne hors ligne afin que cette partie de la base de données soit
temporairement indisponible pour une utilisation générale. Le reste de la base de données est ouvert et disponible pour que
les utilisateurs puissent accéder aux données. Lorsque vous le mettez hors ligne, vous pouvez utiliser les options suivantes :

­ Normal : un tablespace peut être mis hors ligne normalement s'il n'existe aucune condition d'erreur pour l'un des fichiers de
données du tablespace. Oracle Database garantit que toutes les données sont écrites sur le disque en prenant un
point de contrôle pour tous les fichiers de données de l'espace de table lorsqu'il les met hors ligne.

­ Temporaire : un tablespace peut être temporairement mis hors ligne même s'il existe des conditions d'erreur pour un
ou plusieurs fichiers du tablespace. Oracle Database met les fichiers de données (qui ne sont pas déjà hors
ligne) hors ligne, en effectuant des points de contrôle sur eux. Si aucun fichier n'est hors ligne, mais que vous
utilisez la clause Temporaire, la récupération de média n'est pas nécessaire pour remettre l'espace de table en
ligne. Toutefois, si un ou plusieurs fichiers du tablespace sont hors ligne en raison d'erreurs d'écriture et que vous
mettez temporairement le tablespace hors ligne, le tablespace nécessite une récupération avant que vous puissiez
le remettre en ligne.

Oracle Database 19c : Atelier d'administration 16 ­ 10


Machine Translated by Google

­ Immédiat : un espace de table peut être mis hors ligne immédiatement sans qu'Oracle Database n'effectue de point de
contrôle sur l'un des fichiers de données. Lorsque vous spécifiez Immédiat, la récupération de média pour l'espace de
table est requise avant que l'espace de table puisse être mis en ligne.
Vous ne pouvez pas mettre un tablespace hors ligne immédiatement si la base de données s'exécute en
mode NOARCHIVELOG.

Remarque : Les tablespaces système ne peuvent pas être mis hors ligne.

Modification de la taille

Vous pouvez ajouter de l'espace à un tablespace existant en ajoutant des fichiers de données au tablespace ou en modifiant la
taille d'un fichier de données existant. Vous ne pouvez pas ajouter de fichiers de données supplémentaires aux espaces de table bigfile.
Vous pouvez agrandir ou réduire un tablespace. Cependant, vous ne pouvez pas rendre un fichier de données plus petit que l'espace utilisé
dans le fichier. Si vous essayez de le faire, vous obtiendrez une erreur.

Suppression d'espaces de table

Vous pouvez supprimer un tablespace et son contenu (les segments contenus dans le tablespace) de la base de données si le tablespace
et son contenu ne sont plus nécessaires. Vous devez disposer du privilège système DROP TABLESPACE pour supprimer un tablespace.

Lorsque vous supprimez un tablespace, les pointeurs de fichier du fichier de contrôle de la base de données associée sont supprimés.
Si vous utilisez Oracle Managed Files (OMF), les fichiers sous­jacents du système d'exploitation sont également supprimés. Sinon, sans
OMF, vous pouvez éventuellement demander au serveur Oracle de supprimer les fichiers du système d'exploitation (fichiers de données)
qui constituent l'espace de table supprimé. Si vous ne demandez pas au serveur Oracle de supprimer les fichiers de données en même
temps qu'il supprime l'espace de table, vous devez utiliser ultérieurement les commandes appropriées de votre système d'exploitation si
vous souhaitez qu'ils soient supprimés.

Vous ne pouvez pas supprimer un tablespace qui contient des segments avec des mises à jour non validées à partir de transactions
actives. Par exemple, si une table du tablespace est en cours d'utilisation ou si le tablespace contient des données d'annulation nécessaires
pour annuler les transactions non validées, vous ne pouvez pas supprimer le tablespace. Il est préférable de mettre l'espace de table hors
ligne avant de le supprimer.

Oracle Database 19c : Atelier d'administration 16 ­ 11


Machine Translated by Google

Affichage des informations sur les espaces disque logiques

Les informations sur les tablespaces et les fichiers de données peuvent être obtenues en interrogeant les vues suivantes : • Informations sur les

tablespaces :

– CDB_TABLESPACES et DBA_TABLESPACES
– V$TABLESPACE
• Informations sur le fichier de données :

– CDB_DATA_FILES et DBA_DATA_FILES
– V$DATAFILE
• Informations sur le fichier temporaire :

– CDB_TEMP_FILES et DBA_TEMP_FILES
– V$TEMPFILE
• Tables dans un tablespace :

– TOUTES_TABLES

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

V$TABLESPACE, V$DATAFILE et V$TEMPFILE affichent les informations du fichier de contrôle.

Oracle Database 19c : Atelier d'administration 16 ­ 12


Machine Translated by Google

Implémentation des fichiers gérés Oracle (OMF)

• Spécifiez les opérations sur les fichiers en termes d'objets de base de données plutôt qu'en termes de noms de fichiers.

Paramètre Description
DB_CREATE_FILE_DEST Définit l'emplacement du répertoire du système de fichiers par défaut pour les
fichiers de données et les fichiers temporaires

DB_CREATE_ONLINE_LOG_DEST_n Définit l'emplacement des fichiers de journalisation et de la création de fichiers de contrôle

DB_RECOVERY_FILE_DEST Donne l'emplacement par défaut pour la zone de récupération rapide

• Exemple :

SQL> ALTER SYSTEM SET DB_CREATE_FILE_DEST='/u01/app/oracle/oradata' ;


SQL> CRÉER TABLESPACE tbs_1 ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Managed Files (OMF) vous évite d'avoir à gérer directement les fichiers du système d'exploitation dans une base de données
Oracle. Vous spécifiez les opérations en termes d'objets de base de données plutôt qu'en termes de noms de fichiers. La base de
données utilise en interne des interfaces de système de fichiers standard pour créer et supprimer des fichiers selon les besoins des
structures de base de données suivantes : • Tablespaces • Fichiers de journalisation

• Fichiers de contrôle

• Journaux archivés

Bloquer les fichiers de suivi des

modifications • Journaux Flashback •

Sauvegardes RMAN

Une base de données peut contenir un mélange de fichiers gérés par Oracle et non gérés par Oracle. Le répertoire du système de
fichiers spécifié par l'un de ces paramètres doit déjà exister ; la base de données ne le crée pas.
Le répertoire doit également avoir des autorisations pour que la base de données crée les fichiers qu'il contient.

Le tableau de la diapositive répertorie trois paramètres d'initialisation utilisés avec OMF. L'exemple de la diapositive montre qu'après la
définition du paramètre d'initialisation DB_CREATE_FILE_DEST, vous pouvez omettre la clause DATAFILE de l'instruction CREATE
TABLESPACE. Le fichier de données est créé à l'emplacement spécifié par DB_CREATE_FILE_DEST.

Oracle Database 19c : Atelier d'administration 16 ­ 13


Machine Translated by Google

Formats de

dénomination Les fichiers gérés par Oracle ont un format de dénomination spécifique. Par exemple, sur les
systèmes Linux et UNIX, le format suivant est utilisé : <préfixe_destination>/o1_mf_%t_%u_.dbf Ne renommez pas

un fichier géré par Oracle. La base de données identifie un fichier géré par Oracle en fonction de son nom. Si vous

renommez le fichier, la base de données n'est plus en mesure de le reconnaître en tant que fichier géré par Oracle et ne
gérera pas le fichier en conséquence.

Taille du fichier

Par défaut, les fichiers de données gérés par Oracle, y compris ceux des tablespaces SYSTEM et SYSAUX, font 100 Mo
et sont auto­extensibles.

Remarque : Par défaut, Automatic Storage Management (ASM) utilise des fichiers OMF, mais si vous spécifiez un nom
d'alias pour un fichier de données ASM lors de la création d'un tablespace ou lors de l'ajout d'un fichier de données ASM
à un tablespace existant, ce fichier ne sera pas OMF. .

Oracle Database 19c : Atelier d'administration 16 ­ 14


Machine Translated by Google

Agrandissement de la base de données

Vous pouvez agrandir la base de données des manières suivantes :

• Créez un nouveau tablespace. • Ajouter un fichier de données à

un tablespace smallfile existant.


• Augmenter la taille d'un fichier de données.

• Prévoir la croissance dynamique d'un fichier de données.


Base de données

SYSTÈME INVENTAIRE
tablespace tablespace

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Ces activités peuvent être effectuées avec Enterprise Manager ou avec des instructions SQL. La taille de la base
de données peut être décrite comme la somme de tous ses tablespaces.

Oracle Database 19c : Atelier d'administration 16 ­ 15


Machine Translated by Google

Déplacer ou renommer des fichiers de données en ligne

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez renommer et déplacer un fichier de données en ligne d'un type de système de stockage à un autre pendant que la
base de données est ouverte et accède au fichier. Le premier exemple du diagramme illustre le déplacement de l'espace de table
HR (trois fichiers de données) du stockage du système de fichiers vers le stockage ASM (groupe de disques A). Le deuxième
exemple illustre le déplacement de l'espace de table APP du stockage ASM (groupe de disques B) vers le stockage du système de
fichiers (trois fichiers de données).

Les requêtes et les opérations DML et DDL peuvent être effectuées pendant le déplacement du fichier de données. Par
exemple : • Instructions SELECT sur des tables et des partitions

• Création de tables et d'index



Reconstruction des index
Autres notes:

Si des objets sont compressés pendant le déplacement du fichier de données, la compression reste la même. • Vous n'avez

pas besoin d'arrêter la base de données ou de mettre le fichier de données hors ligne pendant que vous déplacez un fichier de données.
fichier vers un autre emplacement, disque ou système de stockage.

• Vous pouvez omettre la clause TO uniquement lorsqu'un fichier géré par Oracle est utilisé. Dans ce cas, le
Le paramètre d'initialisation DB_CREATE_FILE_DEST doit être défini pour indiquer le nouvel emplacement.

Si l'option REUSE est spécifiée, le fichier existant est écrasé.

Si la clause KEEP est spécifiée, l'ancien fichier sera conservé après l'opération de déplacement. La clause KEEP n'est
pas autorisée si le fichier source est un fichier géré par Oracle. • Utilisez la vue V$SESSION_LONGOPS pour afficher

les opérations de déplacement en ligne en cours. Chaque


l'opération en cours comporte une ligne. La transition d'état d'une opération de déplacement en ligne réussie est
généralement NORMAL vers COPYING vers SUCCESS et enfin vers NORMAL.

Oracle Database 19c : Atelier d'administration 16 ­ 16


Machine Translated by Google

Exemples : Déplacer et renommer des fichiers de données en ligne

• Déplacer un fichier de données en ligne :

SQL> ALTER DATABASE MOVE DATAFILE '/disk1/[Link]'


2 TO '/disk2/[Link]';

• Copier un fichier de données d'un système de fichiers vers Automatic Storage Management (ASM) :

SQL> ALTER DATABASE MOVE DATAFILE '/disk1/[Link]'


2 À '+DiskGroup2' CONSERVER ;

• Renommer un fichier de données en ligne :

SQL> ALTER DATABASE MOVE DATAFILE '/disk1/[Link]'


2 TO '/disk1/[Link]';

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous n'avez pas besoin d'arrêter la base de données ou de mettre le fichier de données hors ligne lorsque vous déplacez un fichier de données
vers un autre emplacement, disque ou système de stockage.

La clause TO peut être omise uniquement lorsqu'un fichier géré par Oracle est utilisé. Dans ce cas, le
paramètre DB_CREATE_FILE_DEST doit être défini pour indiquer le nouvel emplacement.
Si l'option REUSE est spécifiée, le fichier existant est écrasé.

Si la clause KEEP est spécifiée, l'ancien fichier sera conservé après l'opération de déplacement. La clause KEEP n'est
pas autorisée si le fichier source est un fichier géré par Oracle.

Utilisez la vue V$SESSION_LONGOPS pour afficher les opérations de déplacement en ligne en cours. Chaque
opération en cours a une ligne. La transition d'état d'une opération de déplacement en ligne réussie est généralement
NORMAL vers COPYING vers SUCCESS et enfin vers NORMAL.

Oracle Database 19c : Atelier d'administration 16 ­ 17


Machine Translated by Google

Résumé

Dans cette leçon, vous devez avoir appris à : • Créer, modifier et

supprimer des tablespaces • Afficher les informations sur les

tablespaces • Implémenter Oracle Managed Files (OMF)

• Déplacer et renommer les fichiers de données en ligne

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 16 ­ 18


Machine Translated by Google

Aperçu de la pratique

• Affichage des informations sur les


tablespaces • Création d'un tablespace
• Gestion des tablespaces temporaires et permanents

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 16 ­ 19


Machine Translated by Google
Machine Translated by Google

17

Améliorer l'utilisation de l'espace

Copyright © 2021, Oracle et/ou ses sociétés affiliées.


Machine Translated by Google

Objectifs

À la fin de cette leçon, vous devriez être en mesure de : •


Décrire et utiliser les fonctionnalités d'Oracle Database qui économisent de
l'espace • Créer des tables temporaires privées • Économiser de l'espace en
utilisant la compression • Récupérer l'espace perdu des tables et des index
à l'aide de la fonctionnalité de réduction de segment • Gérer l'espace pouvant être repris allocation

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database 19c : Atelier d'administration 17 ­ 2


Machine Translated by Google

Fonctionnalités de gestion de l'espace

• L'espace est automatiquement géré par le serveur Oracle Database. Il génère des alertes sur les problèmes
potentiels et recommande des solutions possibles.

• Les fonctionnalités de gestion de l'espace incluent :


– Fichiers gérés Oracle (OMF)
– Gestion de l'espace libre avec bitmaps (« gérés localement ») et fichier de données automatique
extension

– Gestion proactive de l'espace (seuils par défaut et alertes générées par le serveur)
– Récupération d'espace (rétrécissement des segments, redéfinition de table en ligne)

– Planification des capacités (rapports de croissance)

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Avec Oracle Managed Files (OMF), vous pouvez spécifier des opérations en termes d'objets de base de données plutôt qu'en termes
de noms de fichiers. Le serveur Oracle Database peut gérer l'espace libre dans un tablespace avec des bitmaps. C'est ce qu'on
appelle un tablespace « géré localement ». De plus, l'espace libre dans les segments situés dans des tablespaces gérés localement
peut être géré à l'aide de bitmaps. C'est ce qu'on appelle la gestion automatique de l'espace des segments. L'implémentation bitmap
élimine la plupart des réglages liés à l'espace des tables, tout en offrant des performances améliorées pendant les pics de charge. De
plus, le serveur Oracle Database fournit une extension automatique des fichiers de données, de sorte que les fichiers peuvent croître
automatiquement en fonction de la quantité de données dans les fichiers.

Lorsque vous créez une base de données, la surveillance proactive de l'espace est activée par défaut (cela n'a aucun impact sur
les performances). Le serveur Oracle Database surveille l'utilisation de l'espace pendant les opérations normales d'allocation et de
désallocation d'espace et vous alerte si la disponibilité de l'espace libre tombe en dessous des seuils prédéfinis (que vous pouvez
remplacer). Des conseillers et des assistants vous assistent dans la récupération d'espace.

Pour la planification de la capacité, le serveur de base de données Oracle fournit des estimations d'espace basées sur la
structure de la table et le nombre de lignes, ainsi qu'un rapport sur les tendances de croissance basé sur l'utilisation de l'espace
historique stocké dans le référentiel de charge de travail automatique (AWR).

Oracle Database 19c : Atelier d'administration 17 ­ 3


Machine Translated by Google

Gestion de l'espace des blocs

PCTFREE = 10

FS2

FS3

FS1
FS1

FS2
Insertions, Supprime Supprime
FS3
mises à jour

FS4

Bloc complet Bloc complet

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

La gestion de l'espace implique la gestion de l'espace libre au niveau du bloc. Avec Automatic Segment Space
Management, chaque bloc est divisé en quatre sections, nommées FS1 (entre 0 et 25 % d'espace libre), FS2 (25 % à
50 % libre), FS3 (50 % à 75 % libre) et FS4 ( 75% à 100% gratuit).
Selon le niveau d'espace libre dans le bloc, son état est automatiquement mis à jour. De cette façon, en fonction
de la longueur d'une ligne insérée, vous pouvez savoir si un bloc particulier peut être utilisé pour satisfaire une
opération d'insertion. Notez qu'un statut "complet" signifie qu'un bloc n'est plus disponible pour les insertions.

Dans l'exemple de la diapositive, le bloc de gauche est un bloc FS3 car il a entre 50 % et 75 % d'espace libre. Après
quelques instructions d'insertion et de mise à jour, PCTFREE est atteint (la ligne pointillée) et il n'est plus possible
d'insérer de nouvelles lignes dans ce bloc. Le bloc est maintenant considéré comme un bloc « complet » ou FS1. Le bloc
est à nouveau considéré pour une insertion dès que son niveau d'espace libre descend en dessous de la section suivante.
Dans le cas précédent, il obtient le statut FS2 dès que l'espace libre est supérieur à 25%.

Remarque : Les types de données d'objet volumineux (LOB) (BLOB, CLOB, NCLOB et BFILE) n'utilisent pas le
paramètre de stockage PCTFREE. Les blocs non compressés et compressés OLTP ont une valeur PCTFREE par
défaut de 10 ; les blocs compressés de base ont une valeur PCTFREE par défaut de 0.

Oracle Database 19c : Atelier d'administration 17 ­ 4


Machine Translated by Google

Chaînage de lignes et migration

• Lors de la mise à jour : la longueur de la ligne augmente,


dépassant l'espace libre disponible dans le bloc.
Vieux
• Les données doivent être stockées dans un nouveau bloc.

• L'identificateur physique d'origine de la ligne (ROWID)


Bloc d'origine
est conservé.
avec pointeur
• Le serveur Oracle Database doit lire deux blocs pour récupérer les vers la ligne
migrée
données.

• Segment Advisor trouve les segments contenant les lignes


migrées.
Nouvelles données

• Il y a fusion automatique de l'espace libre fragmenté à l'intérieur


du bloc.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Dans deux cas, les données d'une ligne d'un tableau peuvent être trop volumineuses pour tenir dans un seul bloc de données.
Dans le premier cas, la ligne est trop grande pour tenir dans un bloc de données lors de sa première insertion. Dans ce cas,
le serveur Oracle Database stocke les données de la ligne dans une chaîne de blocs de données (un ou plusieurs) réservés à
ce segment. Le chaînage de lignes se produit le plus souvent avec de grandes lignes, telles que des lignes contenant une
colonne de type de données LONG ou LONG RAW. Le chaînage de lignes dans ces cas est inévitable.

Cependant, dans le second cas, une ligne qui correspondait à l'origine à un bloc de données est mise à jour de sorte
que la longueur globale de la ligne augmente et que l'espace libre du bloc soit déjà complètement rempli. Dans ce cas, le
serveur Oracle Database migre les données de la ligne entière vers un nouveau bloc de données, en supposant que la ligne
entière peut tenir dans un nouveau bloc. La base de données conserve le morceau de ligne d'origine d'une ligne migrée pour
pointer vers le nouveau bloc contenant la ligne migrée. Le ROWID d'une ligne migrée ne change pas.

Lorsqu'une ligne est chaînée ou migrée, les performances d'entrée/sortie (E/S) associées à cette ligne diminuent
car le serveur Oracle Database doit analyser plusieurs blocs de données pour récupérer les informations de la ligne.

Segment Advisor recherche les segments contenant des lignes migrées résultant d'une mise à jour.

Le serveur Oracle Database fusionne automatiquement et de manière transparente l'espace libre d'un bloc de données
lorsque :

• Une instruction INSERT ou UPDATE tente d'utiliser un bloc avec suffisamment d'espace libre pour un nouveau
morceau de rangée

• L'espace libre est fragmenté de sorte que la pièce de rang ne puisse pas être insérée dans un
partie du bloc

Après la fusion, la quantité d'espace libre est identique à la quantité avant l'opération, mais l' espace est maintenant contigu.

Oracle Database 19c : Atelier d'administration 17 ­ 5


Machine Translated by Google

Gestion de l'espace libre dans les segments

BMB BMB BMB … BMB

BMB BMB …

… • Suivi par bitmaps dans les segments


BMB
• Avantages :

– Utilisation plus flexible de l'espace
… – Réglage du temps d'exécution

……… … – Recherche de processus


multiples de blocs bitmap (BMB)

Bloc
de données …

Étendue
Segment

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

L'espace libre peut être géré automatiquement à l'intérieur des segments de la base de données. L'espace libre ou utilisé dans le
segment est suivi avec des bitmaps. Pour tirer parti de cette fonctionnalité, spécifiez la gestion automatique de l'espace de segment
lorsque vous créez un tablespace géré localement. Votre spécification s'applique alors à tous les segments créés par la suite dans ce
tablespace.

Les segments de gestion automatique de l'espace ont un ensemble de blocs bitmap (BMB) décrivant l'utilisation de l'espace des blocs
de données dans ce segment. Les BMB sont organisés en arborescence. Le niveau racine de la hiérarchie, qui contient des références
à tous les BMB intermédiaires, est stocké dans l'en­tête de segment. Les feuilles de cette hiérarchie représentent les informations
d'espace pour un ensemble de blocs de données contigus qui appartiennent au segment. Le nombre maximum de niveaux à l'intérieur
de cette hiérarchie est de trois.

Les avantages de l'utilisation de la gestion automatique de l'espace incluent :



Meilleure utilisation de l'espace, en particulier pour les objets avec des tailles de lignes très variables

Meilleur ajustement du temps d'exécution aux variations d'accès simultanés

• Meilleur comportement multi­instance en termes de performances ou d'utilisation de l'espace

Oracle Database 19c : Atelier d'administration 17 ­ 6


Machine Translated by Google

Allocation d'étendues

• Recherche dans le bitmap du fichier de données du nombre requis de blocs libres adjacents •

Dimensionnement des étendues avec des clauses de stockage :


– UNIFORME
– ALLOUER AUTOMATIQUEMENT

• Affichage de la carte de l'étendue

• Obtention d'un avis de désallocation

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Avec les tablespaces gérés localement, le serveur Oracle Database recherche de l'espace libre à allouer à une nouvelle
étendue en déterminant d'abord un fichier de données candidat dans le tablespace, puis en recherchant dans le bitmap du
fichier de données le nombre requis de blocs libres adjacents. Si ce fichier de données ne dispose pas de suffisamment
d'espace libre adjacent, le serveur de base de données Oracle recherche dans un autre fichier de données.

Deux clauses affectent le dimensionnement des extensions :

• Avec la clause UNIFORM, la base de données crée toutes les étendues d'une taille uniforme que vous avez
spécifiée (ou d'une taille par défaut) pour tous les objets créés dans le tablespace.
• Avec la clause AUTOALLOCATE, la base de données détermine la stratégie de dimensionnement d'extension pour
tablespace.

Le serveur Oracle Database fournit un Segment Advisor qui vous aide à déterminer si un objet dispose d'espace
disponible pour la récupération en fonction du niveau de fragmentation de l'espace au sein de l'objet.

Oracle Database 19c : Atelier d'administration 17 ­ 7


Machine Translated by Google

Utilisation d'index inutilisables

• Envisagez d'utiliser des index inutilisables pour améliorer les performances des chargements en

masse. • Les index inutilisables sont ignorés par l'optimiseur. • Lorsqu'un index inutilisable est créé,

aucun segment n'est créé :

CREATE INDEX test_i1 ON seg_test(c) UNUSABLE • Lorsqu'un


index existant est rendu inutilisable, le segment est supprimé :

ALTER INDEX test_i INUTILISABLE


• Un index inutilisable peut être reconstruit pour le rendre à nouveau valide :

ALTER INDEX test_i RECONSTRUIRE

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez utiliser un index inutilisable pour améliorer les performances du chargement en masse.

Lorsqu'un nouvel index est créé avec l'attribut UNUSABLE, l'index est défini mais aucun segment
n'est créé. Les opérations DML n'entraînent aucune mise à jour de l'index et l'optimiseur ne l'utilise pas.
Vous pouvez également définir un index existant sur inutilisable. Lorsque vous faites cela, le segment d'index est supprimé.
Vous pouvez recréer l'index à l'aide de l'option REBUILD de l'instruction ALTER INDEX.

Oracle Database 19c : Atelier d'administration 17 ­ 8


Machine Translated by Google

Utilisation de tables temporaires

• Les tables temporaires contiennent des données pour la durée d'une transaction ou d'une session.

• Types de tables temporaires : – Global : la définition de table est visible pour toutes les sessions ;
le contenu est spécifique à une session.
– Privé : la définition de table n'est visible que pour la session de création. • Le

segment d'une table temporaire est alloué avec la première instruction INSERT ou CREATE TABLE AS SELECT.

• La définition de table persiste après un ROLLBACK. • La

table temporaire spécifique à une transaction ne peut être utilisée que par une transaction à la fois.

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Envisagez d'utiliser des tables temporaires dans les applications où un jeu de résultats doit être mis en mémoire tampon
(temporairement persistant). Vous pouvez créer une table temporaire globale ou une table temporaire privée.

Une définition de table temporaire globale est visible pour toutes les sessions. Cependant, le contenu du tableau est
spécifique à une session. Les définitions de table temporaire globale sont stockées sur le disque.

Une définition de table temporaire privée n'est visible que par la session qui l'a créée. La définition de table est stockée
uniquement en mémoire.

Oracle Database 19c : Atelier d'administration 17 ­ 9


Machine Translated by Google

Création de tables temporaires globales

• Créer une table temporaire globale à l'aide de CREATE GLOBAL TEMPORARY TABLE
déclaration.

• Spécifiez si la table temporaire globale s'applique à une transaction ou à une session en utilisant
la clause ON COMMIT :
– Spécifique à la transaction (par défaut) : ON COMMIT DELETE ROWS
– Spécifique à la session : ON COMMIT PRESERVE ROWS

• Exemple :
SQL> CRÉER UNE TABLE TEMPORAIRE GLOBALE trans_buff_area(date1 DATE,…)
> ON COMMIT SUPPRIMER LES LIGNES ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Vous pouvez utiliser l'instruction CREATE GLOBAL TEMPORARY TABLE pour créer une table temporaire globale.
La clause ON COMMIT indique si les données de la table sont spécifiques à la transaction (valeur par défaut) ou
spécifiques à la session.

Si la table temporaire globale est spécifique à une transaction, la table est tronquée après chaque validation. Avec une table
temporaire globale spécifique à la session, la table est tronquée lorsque la session est terminée.

Oracle Database 19c : Atelier d'administration 17 ­ 10


Machine Translated by Google

Création de tables temporaires privées

• Créer une table temporaire privée à l'aide de CREATE PRIVATE TEMPORARY TABLE
déclaration.
PRIVATE_TEMP_TABLE_PREFIX = ORA$PTT_
• Le nom de la table doit commencer par ORA$PTT_ :
SQL> CREATE PRIVATE TEMPORARY TABLE ORA$PTT_mine (c1 DATE, … c3 NUMBER(10,2));

• L'instruction CREATE PRIVATE TEMPORARY TABLE ne valide pas de transaction.

• Deux sessions simultanées peuvent avoir une table temporaire privée avec le même nom mais
forme différente.
• La définition et le contenu de la table temporaire privée sont automatiquement supprimés à la fin d'un
séance ou transaction.

SQL> CRÉER TABLE PRIVÉE TEMPORAIRE ORA$PTT_mine (c1 DATE …)


ON COMMIT PRESERVE DEFINITION ;

SQL> SUPPRIMER LA TABLE ORA$PTT_mine ;

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Les tables temporaires privées sont locales à une session spécifique. Contrairement aux tables temporaires globales, la
définition et le contenu sont locaux pour la session de création uniquement et ne sont pas visibles pour les autres sessions.

Il existe deux types de durées pour les tables temporaires privées :


• Transaction : la table temporaire privée est automatiquement supprimée lorsque la transaction dans laquelle elle a été
créée se termine par un ROLLBACK ou un COMMIT. Il s'agit du comportement par défaut si aucune clause ON
COMMIT n'est définie lors de la création de la table temporaire privée. • Session : la table temporaire privée est

automatiquement supprimée à la fin de la session qui l'a créée. C'est le comportement si la clause ON COMMIT PRESERVE
DEFINITION est définie lors de la création de la table temporaire privée.

Une table temporaire privée doit être nommée avec un préfixe 'ORA$PTT_'. Le préfixe est défini par défaut par le paramètre
d'initialisation PRIVATE_TEMP_TABLE_PREFIX, modifiable au niveau de l'instance uniquement.

La création d'une table temporaire privée ne valide pas la transaction en cours. Comme elle est locale à la session en cours,
une session simultanée peut également créer une table temporaire privée portant le même nom mais ayant une forme
différente.

Les tables temporaires privées doivent être créées dans le schéma utilisateur. La création d'une table temporaire privée
dans un autre schéma n'est pas autorisée.

Oracle Database 19c : Atelier d'administration 17 ­ 11


Machine Translated by Google

Compression de table : Présentation

Réduction des coûts de stockage en compressant toutes les

données : • Compression de base pour les opérations d'insertion de chemin

direct : 10x • Compression de ligne avancée pour toutes les opérations DML : 2 à 4x

Compression Compression Surcharge CPU CREATE et ALTER TABLE Typique


Méthode Rapport Syntaxe Applications

Compression Haut Minimal COMPRESSER ou SSD


de table de base RANGE STORE COMPRESS BASIC

Compression Haut Minimal ROW STORE COMPRESS ADVANCED OLTP, DSS


avancée des lignes

Copyright © 2021, Oracle et/ou ses sociétés affiliées.

Oracle Database prend en charge trois méthodes de compression de table :



Compression de table de base

• Compression avancée des lignes

• Compression cylindrique hybride


Oracle Corporation recommande de compresser toutes les données pour réduire les coûts de stockage. Le serveur Oracle
Database peut utiliser la compression de table pour éliminer les valeurs en double dans un bloc de données. Pour les tables contenant des
données hautement redondantes, la compression économise de l'espace disque et réduit l'utilisation de la mémoire dans le cache de tampon
de la base de données. La compression de table est transparente pour les applications de base de données.

La clause TABLE_COMPRESSION n'est valide que pour les tables organisées en tas. Le mot­clé COMPRESS active la compression de
table. Le mot clé NOCOMPRESS désactive la compression de table. NOCOMPRESS est la valeur par défaut.

Avec la compression de base, le serveur Oracle Database compresse les données au moment de l'exécution du chargement en bloc à l'aide
d'opérations telles que les chargements directs ou CREATE TABLE AS SELECT.

Avec ROW STORE COMPRESS ADVANCED, le serveur Oracle Database compresse les données lors de toutes les opérations DML
sur la table.

Hybrid Columnar Compression est optimisé pour les applications d'entreposage de données et d'aide à la décision sur le stockage Oracle
Exadata. D'autres systèmes de stockage Oracle prennent en charge la compression en colonne hybride et offrent les mêmes économies
d'espace que sur le stockage Oracle Exadata, mais n'offrent pas le même niveau de performances de requête.

Oracle Database 19c : Atelier d'administration 17 ­ 12

Vous aimerez peut-être aussi