Vous êtes sur la page 1sur 10

Documentation DBA AWS

Oracle RDS et RDS Custom

Présentation
Présenter les différentes possibilités EC2, RDS Custom et RDS en quelques mots…

Grille comparative des limitations


Fonctionnalité EC2 RDS Custom RDS
ASM Oui Non Non
SYSDBA Oui Oui Non
EXTPROC Oui Restreint Non
RMAN Oui Oui Non
DATAPUMP Oui Oui Restreint
DATAGUARD Oui Oui Non
MULTITENANT Oui Oui Non

Détail des restrictions


RDS Custom
Ceux-ci ne peuvent pas être faits dans une instance RDS Custom:
• Modifier le nombre de cœurs et de threads CPU par noyau sur la DB instance class.
• Allumer l’autoscaling de stockage.
• Mettre la rétention de sauvegarde à 0.
• Configurer Kerberos authentication.
• Personnaliser le DB parameter group ou option group.
• Allumer Performance Insights.
• Allumer mise à niveau automatique de la version mineure.
• Augmenter le stockage de l’instance DB au-delà 64 TiB.
• Une seule base de données de conteneur est prise en charge sur une instance RDS Custom.
• La facturation d'une instance RDS Custom pour Oracle ne peut pas être arrêtée ou suspendue.
• Il faut ne pas changer le DB_UNIQUE_NAME pour l’instance.

RDS
La taille maximale d'un seul fichier sur RDS Oracle est de 16 TiB.
Il faut ni créer ni modifier de synonymes publics pour les schémas fournis par Oracle, notamment
SYS, SYSTEM et RDSADMIN. De telles actions peuvent entraîner l'invalidation des composants
principaux de la base de données et affecter la disponibilité de l’instance de base de données. Il
est possible de créer des synonymes publics référençant des objets dans vos propres schémas. À
la création de l’instance, le compte d'utilisateur principal obtient les privilèges DBA (avec
quelques limites). Pour offrir une expérience managée, RDS Oracle ne fournit pas les privilèges
suivants pour le rôle DBA:
• ALTER DATABASE
• ALTER SYSTEM
• CREATE ANY DIRECTORY
• DROP ANY DIRECTORY
• GRANT ANY PRIVILEGE
• GRANT ANY ROLE
Il faut utiliser le compte d'utilisateur principal pour les tâches administratives telles que la
création de comptes d'utilisateurs supplémentaires dans la base de données. Impossible d’utiliser
SYS, SYSTEM, et d'autres comptes administratifs fournis par Oracle.
Les options suivantes ne sont pas prises en charge pour l'architecture à locataire unique:
• Database Activity Streams
• Oracle Data Guard
• Oracle Enterprise Manager
• Oracle Enterprise Manager Agent
• Oracle Label Security.

Documentation AWS
RDS Custom
Liens vers différentes documentation officielle.

Sujet Lien
Installation https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-creating.html
Mise à jour https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-upgrading.html
Sauvegarde https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-backup.html
Restauration https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-backup.html
Clone https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-rr.html

RDS
Liens vers différentes documentation officielle.
Sujet Lien
Installation https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/
CHAP_GettingStarted.CreatingConnecting.Oracle.html
Mise à jour https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Oracle.html
Sauvegarde https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.RMAN.html
Restauratio https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-
n replicas.backups.html
Clone https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.html

Procédures ou particularités
Exemples:
Accès OS (si possible)

1. Dans la section Databases de la console RDS, choisisser l'instance de base de


données à laquelle vous souhaitez vous connecter.
2. Choisisser Configuration.
3. Noter la valeur de Resource ID. Par exemple, le resource ID peut être db-
ABCDEFGHIJKLMNOPQRS0123456.
4. Accéder au segment Instances de la console Amazon EC2.
5. Trouver le nom de l'instance EC2 correspondant à la DB RDS et choisisser l'Instance
ID qui lui est associé. Par exemple, l’Instance ID EC2 peut être i-
abcdefghijklm01234.
6. Dans Details, trouver Key pair name. Le nom de la paire inclut le resource ID
7. Depuis la console Secrets
Manager: https://console.aws.amazon.com/secretsmanager/.
8. Choisisser le secret qui porte le même nom que la paire de clés.
9. Choisisser Retrieve secret value.
10. Copier la clé privée dans un fichier texte, puis l’enregistrer avec l'extension .pem.
11. Connecter en utilisant ssh -i "xxxx.pem" ec2-user@FCDN

Accès SYSDBA
Changer mot de passe SYSDBA
Modification tnsnames.ora : tnsnames.ora -> /rdsdbdata/config/tnsnames.ora
Modification listener.ora listener.ora -> /rdsdbdata/config/listener.ora
Modification sqlnet.ora sqlnet.ora -> /rdsdbdata/config/sqlnet.ora
Modification spfile SpfileRDSCDB.ora -> /rdsdbdata/admin/RDSCDB/pfile/
SpfileRDSCDB.ora
La taille du stockage de ORACLE_HOME (/u01) reste invariable à 25GB.

Les logs et traces


ADR base = "/rdsdbdata/log"
trace -> /rdsdbdata/log/diag/rdbms/rdscdb_a/RDSCDB/trace
incident -> /rdsdbdata/log/diag/rdbms/rdscdb_a/RDSCDB/incident
audit -> /rdsdbdata/admin/RDSCDB/adump
diag

les datafiles sont stockés dans le répertoire suivant gérées avec OMF
/rdsdbdata/db/

Le spfile est localisé dans le répertoire suivant


/rdsdbdata/admin/ORACLE_SID/pfile

Il faut savoir qu’un EC2 peut être lié à plusieurs instances de RDS Custom pour la connexion à la
base de données.

Le shape et la taille du disque de l’instance RDS Custom sont manuellement modifiable. Mais
cela entrain quelques temps d’indisponibilité de la base de données

Datapump

Oracle Data Pump est composé des composants suivants accessibles dans RDS:

 Clients de ligne de commande expdp and impdp


 Le package PL/SQL DBMS_DATAPUMP
 Le package PL/SQL DBMS_METADATA

L'utilisation d'Oracle Data Pump implique les étapes suivantes:

1. Exporter les données dans un fichier dump sur la DB source.


2. Charger le fichier dump à la DB destination. Ceci est possible en utilisant un compartiment
Amazon S3 ou en utilisant un lien de base de données entre les deux bases de données.
3. Importer les données du fichier de vidage dans l’instance RDS.
Oracle Data Pump meilleures pratiques

 Effectuer des importations en mode schéma ou mode pour importer des objets spécifiques.
 Limiter les schémas importés à ceux requis par l’application.
 Il faut jamais importer en mode complet ou les schémas pour les composants gérés par le
système.
Puisque RDS ne permet pas d'accès aux utilisateurs SYS ou SYSDBA, ces actions peuvent
endommager le dictionnaire de données et affecter la stabilité de la base de données.
 Lors du chargement des grandes quantités de données, il faut procéder comme suit:
1. Transferer le fichier de vichage à la DB destination.
2. Prendre un instantané de l’instance.
3. Tester l'importation pour vérifier qu'elle réussit.
Si des composants de base de données se trouvent invalidés, il est possible de supprimer
l'instance et la recréer à partir de l'instantané. Cette instance restaurée inclut tous les fichiers de
vidage stockés lorsque l'instantané de base de données a été prise.
 RDS ne prend pas en charge l'importation de fichiers de vidage créés avec les paramètres de Data
Pump TRANSPORT_TABLESPACES, TRANSPORTABLE, et TRANSPORT_FULL_CHECK.
 RDS ne prend pas en charge l'importation de fichiers de vidage qui contiennent des objets de
Oracle Scheduler dans les schémas SYS, SYSTEM, RDSADMIN, RDSSEC,
RDS_DATAGUARD, et qui appartiennent aux catégories suivantes:
o Jobs
o Programs
o Schedules
o Chains
o Rules
o Evaluation contexts
o Rule sets
 Pour exclure ces objets non pris en charge, il faudra utiliser des directives supplémentaires lors
de l'exportation: via METADATA_FILTER avant le DBMS_METADATA.START_JOB, ou en
créeant un fichier de paramètres qui contient les directive(s) exclude via l’option PARFILE =
fichier_de_parametre avec la commande expdp.

Le processus d'importation suivant utilise Data Pump et un compartiment Amazon S3:

1. Exporter les données sur la BD source en utilisant expdp.


2. Placer le fichier de vidage dans un compartiment S3.
3. Télécharger le fichier de vidage du compartiment Amazon S3 vers le répertoire
DATA_PUMP_DIR sur le RDS destination pour l'instance de BD Oracle.
4. Importer les données du fichier de vidage copié dans à l'aide du package DBMS_DATAPUMP.

Pour créer un instantané RDS Custom


1. Acceder à la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/.
2. Dans le volet de navigation, choisisser Databases.
3. Dans la liste des instances, choisisser l’instance pour lequel il faut prendre un instantané.
4. Pour Actions, choisisser Take snapshot. Take DB snapshot se montre.
5. Pour Snapshot name, entrer le nom de l’instantané.
6. Choisisser Take snapshot.

RDS Custom crée un instantané du volume de stockage de l’instance de BD, en sauvegardant


l'intégralité de l'instance et pas seulement les BDs individuelles. Lorsque l’instance contient une
BD de conteneur (CDB), l'instantané de l'instance inclut la CDB racine et toutes les PDBs. Il
faudra spécifier l'instance à sauvegarder et donner un nom à l’instantané afin de pouvoir le
restaurer ultérieurement. Un instantané du type Amazon EBS se crée pour chaque volume attaché
à l'instance de BD. RDS Custom utilise l'instantané EBS du volume racine pour enregistrer une
nouvelle Amazon Machine Image (AMI).

Pour faciliter l'association des instantanés à une instance de BD spécifique, ils sont balisés avec
DBSnapshotIdentifier, DbiResourceId et VolumeType.

Pour restaurer une instance de base de données personnalisée RDS à partir d'un instantané de BD
1. Acceder à la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/.
2. Dans le volet de navigation, choisisser Snapshots.
3. Choisisser l’instantané duquel il faut restaurer.
4. Pour Actions, choisisser Restore snapshot.
5. Sur la page Restore DB instance, pour DB instance identifier entrer le nom de l’instance
restauré.
6. Choisisser Restore DB instance.

Ce processus de restauration diffère des manières suivantes de celui de RDS:

 Avant de restaurer un instantané, RDS Custom sauvegarde les fichiers de configuration existants.
Ces fichiers se retrouvent sur l'instance restaurée dans le répertoire /rdsdbdata/config/backup.
RDS Custom restaure l'instantané de BD avec les paramètres par défaut et remplace les fichiers
de configuration de BDs précédents par ceux existants. Ainsi, l'instance restaurée ne conserve pas
les paramètres personnalisés et les modifications apportées aux fichiers de configuration de la
BD.
 La BD restaurée porte le même nom que l'instantané. Impossible de spécifier un nom different.

Dataguard (si possible)

Les répliques de RDS Custom ont les limitations suivantes:

 Les répliques du type Cross-Region Oracle ne sont pas prises en charge.


 Le paramètre DataGuard CommunicationTimeout se met à 15 seconds et n’est pas modifiable.
 Il faut ne pas modifier l’utilisateur RDS_DATAGUARD, qui se reserve à l’automatisation.
 Il faut ne pas modifier le mot de passe de l’utilisateur de replication. Il est nécessaire pour
administrer la configuration Oracle Data Guard sur l'hôte.
 Lors de la création du réplica, RDS Custom interrompt temporairement le nettoyage des redo
logs. Ca fait en sorte qu’ils puissent s’appliquer au réplica une fois qu’il sera disponible.

Intégration S3 avec une instance RDS normal


Lecteur EFS pour UTL_FILE / DATAPUMP

Pour configurer un groupe d'options pour l'intégration d’Amazon EFS

1. Créer un nouveau groupe d'options ou identifier un groupe d'options existant auquel peut être
ajouté l'option EFS_INTEGRATION.

2. Ajouter l'option EFS_INTEGRATION au groupe d'options, en spécifiant l'ID du système de


fichiers EFS_ID et en définissant l'indicateur USE_IAM_ROLE.

3. Associer le groupe d'options à l’instance de BD de l'une des manières suivantes :

• Créer une nouvelle instance de BD et associer-lui le groupe d'options.


• Modifier une instance de base de données Oracle pour lui associer le groupe d'options.

Pour transférer des fichiers entre une instance RDS et un système de fichiers Amazon EFS, il
faudra créer au moins un répertoire Oracle et configurer les autorisations du système de fichiers
EFS pour contrôler l'accès à l'instance de BDs. Supposons que vous créez un sous-répertoire
nommé /datapump1 sur le système de fichiers EFS fs-123456789a. L'exemple suivant crée un
répertoire Oracle DIR_EFS qui pointe vers le répertoire /datapump1 sur le système de fichiers
EFS. La valeur du chemin du système de fichiers pour le paramètre p_path_on_efs est précédée
de la chaîne /rdsefs-

exec rdsadmin.rdsadmin_util.create_directory_efs
(p_directory_name => 'DIR_EFS', p_path_on_efs => '/rdsefs-123456789a/datapump1');

Amazon S3 integration

Step 1: Créer une politique IAM pour le rôle RDS en utilisant:

 Le Amazon Resource Name (ARN) for le compartiment


 L’ARN pour le clé AWS KMS, si le compartiment utilises SSE-KMS ou SSE-S3 encryption

Step 2: Créer un rôle IAM pour l’instance de BD et attacher la politique.

Step 3: Associer le rôle IAM à l’instance de BD.

 Impossible d’associer plus qu'un seul rôle IAM à l’instance de BD à la fois.


 Il faut que le statut de l’instance soit disponible.

Pour configurer un groupe d’option group pour l’integration de S3


1. Créer un nouveau groupe d'options ou identifier un groupe d'options existant auquel peut être
ajouté l'option S3_INTEGRATION.
2. Ajouter l'option S3_INTEGRATION au groupe d'options.
3. Créer une nouvelle instance et associer-lui le groupe d'options, ou modifier une instance pour
lui associer le groupe d'options. Pour transférer des fichiers entre une instance et un compartiment
S3, vous pouvez utiliser le package Amazon RDS rdsadmin_s3_tasks. Vous pouvez aussi
compresser les fichiers avec GZIP lors de leur téléchargement et les décompresser lors du
téléchargement.

L'exemple suivant charge tous les fichiers du répertoire DATA_PUMP_DIR dans le


compartiment Amazon S3 nommé mys3bucket. Les fichiers sont téléchargés dans un dossier
dbfiles. Dans cet exemple, le niveau de compression GZIP est 1, qui est le niveau de compression
le plus rapide.
SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(

p_bucket_name => 'mys3bucket', p_prefix =>'', p_s3_prefix => 'dbfiles/',


p_directory_name => 'DATA_PUMP_DIR', p_compression_level =>1)
AS TASK_ID FROM DUAL;

Mettre a jour
Gérer une montée de version automatique mineure
L'exemple suivant met immédiatement à niveau l'instance de base de données nommée orclinst1:
aws rds apply-pending-maintenance-action --apply-action db-upgrade --opt-in-type immediate
\ --resource-identifier arn:aws:rds:us-east-1:123456789012:db:orclinst1

Pour désactiver une mise à niveau automatique vers une version mineure qui n'a pas encore été
planifiée, définisser opt-in-type sur undo-opt-in, comme dans l'exemple suivant :
aws rds apply-pending-maintenance-action --apply-action db-upgrade --opt-in-type undo-opt-in
\ --resource-identifier arn:aws:rds:us-east-1:123456789012:db:orclinst1
Si RDS a déjà planifié une mise à niveau pour l’instance, il est impossible d’utiliser apply-
pending-maintenance-action pour l'annuler. Mais il est encore possible de modifier l’instance et
désactiver la fonctionnalité de mise à niveau mineure automatique, qui annule la planification de
la mise à niveau.

RDS Custom :
Pour mettre à niveau l’instance de RDS Custom, elle est la modifiée pour utiliser un nouveau
CEV.
1. Dans les bases de données du volet de navigation, choisisser l'instance désirée.
2. Choisisser Change. La page Modifier l'instance de base de données s'affiche.
3. Pour la version du moteur de base de données, choisisser le CEV vers lequel effectuer la mise à
niveau, par exemple 19.my_cev3.
4. Choisisser Continue pour vérifier le résumé des modifications.
Choisisser Apply Immediately pour appliquer les modifications immédiatement.
5. Si les modifications sont correctes, choisisser Change Database. Ou choisisser Return
pour valider les modifications ou Cancel pour annuler les modifications.

Vous aimerez peut-être aussi