Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Procédures stockées pour les bases de données pour RDS for Db2
Les procédures stockées intégrées décrites dans cette rubrique gèrent les bases de données pour Amazon RDS for Db2. Pour exécuter ces procédures, l’utilisateur principal doit d’abord se connecter à la base de données rdsadmin.
Ces procédures stockées sont utilisées dans diverses tâches. Cette liste n’est pas exhaustive.
Reportez-vous aux procédures stockées intégrées suivantes pour obtenir des informations sur leur syntaxe, leurs paramètres, leurs notes d’utilisation et des exemples.
Procédures stockées
rdsadmin.create_database
Crée une base de données.
Syntaxe
db2 "call rdsadmin.create_database( 'database_name', 'database_page_size', 'database_code_set', 'database_territory', 'database_collation', 'database_autoconfigure_str', 'database_non-restrictive')"
Parameters
Note
Cette procédure stockée ne valide pas la combinaison des paramètres requis. Lorsque vous appelez rdsadmin.get_task_status, la fonction définie par l’utilisateur peut renvoyer une erreur en raison d’une combinaison de database_codeset, database_territory et database_collation qui n’est pas valide. Pour plus d’informations, consultez Choix de la page de code, du territoire et du classement pour votre base de données
Les paramètres suivants sont obligatoires :
database_name-
Nom de la base de données à créer. Le type de données est
varchar.
Les paramètres suivants sont facultatifs :
database_page_size-
Taille de page par défaut de la base de données. Valeurs valides:
4096,8192,16384,32768. Le type de données estinteger. La valeur par défaut est8192.Important
Amazon RDS prend en charge l’atomicité d’écriture pour les pages de 4 Kio, 8 Kio et 16 Kio. En revanche, les pages de 32 Kio risquent d'être déchirées en écriture ou d'écrire des données partielles sur le disque. Si vous utilisez des pages 32 KiB, nous vous recommandons d'activer la point-in-time restauration et les sauvegardes automatisées. Sinon, vous risquez de ne pas pouvoir récupérer les pages déchirées. Pour plus d’informations, consultez Présentation des sauvegardes et Restauration d’une instance de base de données à un instant précis pour Amazon RDS.
database_code_set-
Code défini pour la base de données. Le type de données est
varchar. La valeur par défaut estUTF-8. database_territory-
Code de pays à deux lettres pour la base de données. Le type de données est
varchar. La valeur par défaut estUS. database_collation-
Séquence de classement qui détermine comment les chaînes de caractères stockées dans la base de données sont triées et comparées. Le type de données est
varchar.Valeurs valides :
-
COMPATIBILITY: une séquence de classement IBM Db2 version 2. -
EBCDIC_819_037: page de code latin ISO, classement ; CCSID 037 (EBCDIC, anglais américain). -
EBCDIC_819_500: page de code latin ISO, classement ; CCSID 500 (EBCDIC international). -
EBCDIC_850_037: page de code latin ASCII, classement ; CCSID 037 (EBCDIC, anglais américain). -
EBCDIC_850_500: page de code latin ASCII, classement ; CCSID 500 (EBCDIC international). -
EBCDIC_932_5026: page de code japonais ASCII, classement ; CCSID 5026 (EBCDIC, anglais américain). -
EBCDIC_932_5035: page de code japonais ASCII, classement ; CCSID 5035 (EBCDIC international). -
EBCDIC_1252_037: page de code latin Windows, classement ; CCSID 037 (EBCDIC, anglais américain). -
EBCDIC_1252_500: page de code latin Windows, classement ; CCSID 500 (EBCDIC international). -
IDENTITY: classement par défaut. Les chaînes sont comparées octet par octet. -
IDENTITY_16BIT: schéma de codage de compatibilité pour UTF-16 : séquence de classement 8 bits (CESU-8). Pour plus d’informations, consultez Rapport technique Unicode #26sur le site Web du consortium Unicode. -
NLSCHAR— À utiliser uniquement avec la page de code thaï (CP874). -
SYSTEM: si vous utilisezSYSTEM, la base de données utilise automatiquement la séquence de classement pourdatabase_codesetetdatabase_territory.
La valeur par défaut est
IDENTITY.En outre, RDS for Db2 prend en charge les groupes de classement suivants :
language-aware-collationetlocale-sensitive-collation. Pour plus d’informations, consultez Choix d’un classement pour une base de données Unicodedans la documentation IBM Db2. -
database_autoconfigure_str-
Syntaxe de la
AUTOCONFIGUREcommande, par exemple'AUTOCONFIGURE APPLY DB'. Le type de données estvarchar. La valeur par défaut est une chaîne vide ou nulle.Pour plus d’informations, consultez Commande AUTOCONFIGURE
dans la documentation IBM Db2. database_non-restrictive-
Octroi d'autorisations et de privilèges par défaut au sein de la base de données. Le type de données est
varchar. La valeur par défaut estN.Valeurs valides :
-
N— La base de données créée est restrictive et n'accorde ni pouvoirs ni privilèges. -
Y— La base de données créée n'est pas restrictive et accorde un ensemble d'autorisations au groupePUBLICspécial. Pour plus d'informations, consultez la section Privilèges par défaut accordés lors de la création d'une base de donnéesdans la IBM Db2 documentation.
-
Notes d’utilisation
Si vous envisagez de modifier le paramètre db2_compatibility_vector, modifiez-le avant de créer une base de données. Pour de plus amples informations, veuillez consulter Définition du paramètre db2_compatibility_vector.
Considérations spéciales :
-
La commande
CREATE DATABASEenvoyée à l’instance Db2 utilise l’optionRESTRICTIVE. -
RDS for Db2 utilise uniquement des tablespaces
AUTOMATIC STORAGE. -
RDS for Db2 utilise les valeurs par défaut pour
NUMSEGSetDFT_EXTENT_SZ. -
RDS for Db2 utilise le chiffrement de stockage et ne prend pas en charge le chiffrement de base de données.
Pour plus d’informations sur ces considérations, consultez commande CREATE DATABASE
Avant d’appelerrdsadmin.create_database, vous devez vous connecter à la base de données rdsadmin. Dans l'exemple suivant, remplacez master_username et master_password par votre RDS pour les informations d'instance de base de données DB2 :
db2 connect to rdsadmin usermaster_usernameusingmaster_password
Pour plus d’informations sur la vérification du statut de création d’une base de données, consultez rdsadmin.get_task_status.
Pour les messages d’erreur renvoyés lors de l’appel rdsadmin.create_database, consultez Erreurs de procédure stockée.
Exemples
L'exemple suivant crée une base de données appelée TESTJP avec une combinaison correcte des database_collation paramètres database_code_setdatabase_territory,, et pour le Japon :
db2 "call rdsadmin.create_database('TESTJP', 4096, 'IBM-437', 'JP', 'SYSTEM')"
rdsadmin.deactivate_database
Désactive une base de données.
Syntaxe
db2 "call rdsadmin.deactivate_database( ?, 'database_name')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Le paramètre d’entrée suivant est obligatoire :
database_name-
Nom de la base de données à désactiver. Le type de données est
varchar.
Notes d’utilisation
Vous pouvez désactiver des bases de données pour conserver des ressources mémoire ou pour apporter d’autres modifications à la configuration de la base de données. Pour remettre en ligne les bases de données désactivées, appelez la procédure stockée rdsadmin.activate_database.
Vous ne pouvez pas désactiver une base de données sur une instance de base de données source pendant la réplication en appelant la procédure stockée rdsadmin.deactivate_database.
Pour plus d’informations sur la vérification du statut de désactivation d’une base de données, consultez rdsadmin.get_task_status.
Pour les messages d’erreur renvoyés lors de l’appel rdsadmin.deactivate_database, consultez Erreurs de procédure stockée.
Exemples
Les exemples suivants désactivent une base de données appelée TESTDB.
db2 "call rdsadmin.deactivate_database(?, 'TESTDB')"
rdsadmin.activate_database
Active une base de données.
Pour plus d'informations sur les différences entre rdsadmin.reactivate_database et rdsadmin.activate_database, consultez Notes d’utilisation.
Syntaxe
db2 "call rdsadmin.activate_database( ?, 'database_name')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Le paramètre d’entrée suivant est obligatoire :
database_name-
Nom de la base de données à activer. Le type de données est
varchar.
Notes d’utilisation
Toutes les bases de données sont activées par défaut lors de leur création. Si vous désactivez une base de données sur une instance de base de données autonome pour conserver des ressources mémoire ou pour apporter d’autres modifications à la configuration de la base de données, appelez la procédure stockée rdsadmin.activate_database pour réactiver la base de données.
Cette procédure stockée active uniquement une base de données qui se trouve sur une instance de base de données autonome et qui a été désactivée en appelant la procédure stockée rdsadmin.deactivate_database. Pour activer une base de données sur une instance de base de données source de réplica, vous devez appeler la procédure stockée rdsadmin.reactivate_database.
Pour plus d’informations sur la vérification du statut d’activation d’une base de données, consultez rdsadmin.get_task_status.
Pour les messages d’erreur renvoyés lors de l’appel rdsadmin.activate_database, consultez Erreurs de procédure stockée.
Exemples
Les exemples suivants activent une base de données appelée TESTDB.
db2 "call rdsadmin.activate_database(?, 'TESTDB')"
rdsadmin.reactivate_database
Réactive une base de données.
Pour plus d’informations sur les différences entre rdsadmin.activate_database et rdsadmin.reactivate_database, consultez Notes d’utilisation.
Syntaxe
db2 "call rdsadmin.reactivate_database( ?, 'database_name')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Le paramètre d’entrée suivant est obligatoire :
database_name-
Nom de la base de données à réactiver. Le type de données est
varchar.
Notes d’utilisation
Lorsque vous appelez la procédure stockée rdsadmin.reactivate_database, celle-ci désactive d’abord la base de données en appelant la procédure stockée rdsadmin.deactivate_database, puis active la base de données en appelant la procédure stockée rdsadmin.activate_database.
Après avoir modifié les configurations des bases de données, vous devrez peut-être réactiver une base de données sur une instance de base de données RDS for Db2. Pour déterminer si vous devez réactiver une base de données, connectez-vous à la base de données et exécutez db2 get db cfg show detail.
Pour une base de données sur une instance de base de données autonome, vous pouvez utiliser la procédure stockée rdsadmin.reactivate_database pour réactiver la base de données. Ou, si vous avez déjà appelé la procédure stockée rdsadmin.deactivate_database, vous pouvez appeler la procédure stockée rdsadmin.activate_database à la place.
Pour une base de données sur une instance de base de données source de réplica, vous devez utiliser la procédure stockée rdsadmin.reactivate_database pour réactiver la base de données.
Pour plus d’informations sur la vérification du statut de réactivation d’une base de données, consultez rdsadmin.get_task_status.
Pour les messages d’erreur renvoyés lors de l’appel rdsadmin.reactivate_database, consultez Erreurs de procédure stockée.
Exemples
Les exemples suivants réactivent une base de données appelée TESTDB.
db2 "call rdsadmin.reactivate_database(?, 'TESTDB')"
rdsadmin.drop_database
Supprime une base de données.
Syntaxe
db2 "call rdsadmin.drop_database('database_name')"
Parameters
Les paramètres suivants sont obligatoires :
database_name-
Nom de la base de données à supprimer. Le type de données est
varchar.
Notes d’utilisation
Vous ne pouvez supprimer une base de données en appelant rdsadmin.drop_database que si les conditions suivantes sont réunies :
-
Vous n’avez pas spécifié le nom de la base de données lorsque vous avez créé votre instance de base de données RDS for Db2 à l’aide de la console Amazon RDS ou de l’ AWS CLI. Pour de plus amples informations, veuillez consulter Création d’une instance de base de données.
-
Vous avez créé la base de données en appelant la procédure stockée rdsadmin.create_database.
-
Vous avez restauré la base de données à partir d’une image hors ligne ou sauvegardée en appelant la procédure stockée rdsadmin.restore_database.
Avant d’appelerrdsadmin.drop_database, vous devez vous connecter à la base de données rdsadmin. Dans l'exemple suivant, remplacez master_username et master_password par votre RDS pour les informations d'instance de base de données DB2 :
db2 connect to rdsadmin usermaster_usernameusingmaster_password
Pour plus d’informations sur la vérification du statut de suppression d’une base de données, consultez rdsadmin.get_task_status.
Pour les messages d’erreur renvoyés lors de l’appel rdsadmin.drop_database, consultez Erreurs de procédure stockée.
Exemples
L’exemple suivant supprime une base de données appelée TESTDB :
db2 "call rdsadmin.drop_database('TESTDB')"
rdsadmin.update_db_param
Met à jour les paramètres de la base de données.
Syntaxe
db2 "call rdsadmin.update_db_param( 'database_name', 'parameter_to_modify', 'changed_value', 'restart_database')"
Parameters
Les paramètres suivants sont obligatoires :
database_name-
Nom de la base de données pour laquelle la tâche doit être exécutée. Le type de données est
varchar. parameter_to_modify-
Nom du paramètre à modifier. Le type de données est
varchar. Pour de plus amples informations, veuillez consulter Paramètres Amazon RDS for Db2. changed_value-
Valeur à modifier pour la valeur du paramètre. Le type de données est
varchar.
Le paramètre suivant est facultatif :
restart_database-
Spécifie si RDS redémarre la base de données si un redémarrage est nécessaire. Le type de données est
varchar. Pour modifierlogprimaryetlogfilsiz, définissez ce paramètre sur'YES'.
Notes d’utilisation
Pour plus d’informations sur la vérification du statut de mise à jour des paramètres de la base de données, consultez rdsadmin.get_task_status.
Pour les messages d’erreur renvoyés lors de l’appel rdsadmin.update_db_param, consultez Erreurs de procédure stockée.
Exemples
Exemple 1 : mise à jour d’un paramètre
L’exemple suivant met à jour le paramètre archretrydelay par 100 pour une base de données appelée TESTDB :
db2 "call rdsadmin.update_db_param( 'TESTDB', 'archretrydelay', '100')"
Exemple 2 : report de la validation des objets
L’exemple suivant reporte la validation des objets créés sur une base de données appelée TESTDB pour éviter la vérification des dépendances :
db2 "call rdsadmin.update_db_param( 'TESTDB', 'auto_reval', 'deferred_force')"
rdsadmin.set_configuration
Configure les paramètres spécifiques de la base de données.
Syntaxe
db2 "call rdsadmin.set_configuration( 'name', 'value')"
Parameters
Les paramètres suivants sont obligatoires :
name-
Nom du paramètre de configuration. Le type de données est
varchar. value-
Valeur du paramètre de configuration. Le type de données est
varchar.
Notes d’utilisation
Le tableau suivant présente les paramètres de configuration que vous pouvez contrôler avec rdsadmin.set_configuration.
| Nom | Description |
|---|---|
|
|
Nombre de mémoires tampons à créer lors d’une opération de restauration. Cette valeur doit être inférieure à la taille totale de la mémoire de la classe d’instance de base de données. Si ce paramètre n’est pas configuré, Db2 détermine la valeur à utiliser lors de l’opération de restauration. Pour plus d'informations, consultez la commande RESTORE DATABASE |
|
|
Le nombre de manipulateurs de mémoire tampon à créer lors d’une opération de restauration. Cette valeur doit être inférieure au double du nombre de v CPUs pour l'instance de base de données. Si ce paramètre n’est pas configuré, Db2 détermine la valeur à utiliser lors de l’opération de restauration. Pour plus d'informations, consultez la commande RESTORE DATABASE |
|
|
Le nombre de chemins (ou de I/O flux) à utiliser lors d'une opération de restauration à partir d'Amazon S3. Pour utiliser ce paramètre de configuration, vous devez disposer de plusieurs fichiers de sauvegarde. Cette valeur peut améliorer les performances lors de la restauration de bases de données contenant de gros volumes de données, car elle restaure plusieurs fichiers de sauvegarde de base de données en parallèle. Nous vous recommandons de définir cette valeur pour qu'elle corresponde au nombre de fichiers de sauvegarde de votre base de données. Pour plus d'informations, consultez la commande BACKUP DATABASE |
|
|
Spécifie s'il faut diffuser les données de sauvegarde directement pendant la restauration plutôt que de télécharger d'abord la sauvegarde complète sur votre instance de base de données RDS pour DB2, puis de l'extraire. Le réglage |
Exemples
Exemple 1 : Spécification du nombre de tampons à créer
L’exemple suivant défini configuration RESTORE_DATABASE_NUM_BUFFERS sur 150.
db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_NUM_BUFFERS', '150')"
Exemple 2 : Spécification du nombre de manipulateurs de mémoire tampon à créer
L’exemple suivant défini configuration RESTORE_DATABASE_PARALLELISM sur 8.
db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_PARALLELISM', '8')"
Exemple 3 : Spécification du nombre de chemins ou de I/O flux à utiliser lors de la restauration
L’exemple suivant défini configuration RESTORE_DATABASE_NUM_MULTI_PATHS sur 5.
db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_NUM_MULTI_PATHS', '5')"
Exemple 4 : Configuration de la restauration pour diffuser les données de sauvegarde
L’exemple suivant défini configuration USE_STREAMING_RESTORE sur TRUE.
db2 "call rdsadmin.set_configuration( 'USE_STREAMING_RESTORE', 'TRUE')"
rdsadmin.show_configuration
Renvoie les paramètres actuels que vous pouvez définir à l’aide de la procédure stockée rdsadmin.set_configuration.
Syntaxe
db2 "call rdsadmin.show_configuration( 'name')"
Parameters
Le paramètre suivant est facultatif :
name-
Nom du paramètre de configuration pour lequel les informations doivent être renvoyées. Le type de données est
varchar.Les noms de configuration suivants sont valides :
-
RESTORE_DATABASE_NUM_BUFFERS— Le nombre de tampons à créer lors d'une opération de restauration. -
RESTORE_DATABASE_PARALLELISM— Nombre de manipulateurs de mémoire tampon à créer lors d'une opération de restauration. -
RESTORE_DATABASE_NUM_MULTI_PATHS— Le nombre de chemins (ou de I/O flux) à utiliser lors d'une opération de restauration à partir d'Amazon S3. -
USE_STREAMING_RESTORE— Spécifie s'il faut diffuser les données de sauvegarde directement pendant la restauration plutôt que de télécharger d'abord l'intégralité des données de sauvegarde sur votre instance de base de données RDS pour DB2, puis de les extraire.
-
Notes d’utilisation
Si vous ne spécifiez pas le nom d’un paramètre de configuration, rdsadmin.show_configuration renvoie des informations pour tous les paramètres de configuration que vous pouvez définir à l’aide de la procédure stockée rdsadmin.set_configuration.
Exemples
L’exemple suivant renvoie des informations sur la configuration RESTORE_DATABASE_PARALLELISM actuelle.
db2 "call rdsadmin.show_configuration( 'RESTORE_DATABASE_PARALLELISM')"
rdsadmin.backup_database
Sauvegarde une base de données depuis une instance de base de données RDS pour DB2 dans un compartiment Amazon S3.
Syntaxe
db2 "call rdsadmin.backup_database( ?, 'database_name', 's3_bucket_name', 's3_prefix', 'backup_type', 'compression_option', 'util_impact_priority', 'num_files', 'parallelism', 'num_buffers')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Les paramètres d’entrée suivants sont obligatoires :
database_name-
Nom de la base de données cible sur une instance de base de données RDS pour DB2 à sauvegarder. Le type de données est
varchar.La base de données doit exister dans l'instance de base de données. Vous ne pouvez pas sauvegarder la
rdsadminbase de données. s3_bucket_name-
Le nom du compartiment Amazon S3 dans lequel vous souhaitez placer votre sauvegarde. Le type de données est
varchar.Le compartiment S3 doit exister avant l'appel
rdsadmin.backup_database, se trouver dans la même base de données Région AWS que la base de données cible dans l'instance de base de données RDS pour DB2 que vous souhaitez sauvegarder et être accessible via le rôle IAM attaché à l'instance de base de données. s3_prefix-
Préfixe du chemin d'accès à Amazon S3 où RDS for Db2 télécharge les fichiers de sauvegarde. Le type de données est
varchar.Le préfixe est limité à 1024 caractères. Il ne doit pas comporter de barre oblique initiale ou terminale (/). En raison des limites liées au IBM streaming vers Amazon S3, nous recommandons que le préfixe inclue des sous-répertoires.
Pour une meilleure gestion des fichiers, RDS pour DB2 crée ensuite des répertoires supplémentaires.
s3_prefixRDS pour DB2 télécharge tous les fichiers de sauvegarde vers.s3_prefix/dbi_resource_id/db_nameSi vous définisseznum_filesune valeur supérieure à1, ledb_namerépertoire contiendra plusieurs fichiers de sauvegarde.Voici un exemple d'emplacement Amazon S3 pour les fichiers de sauvegarde. Dans l'exemple,
backups/dailyest la valeur définie pour les3_prefixparamètre.backups/daily/db-5N7FXOY4GDP7RG2NSH2ZTAI2W4/SAMPLEDB backup_type-
Type de sauvegarde qui détermine si la base de données reste disponible pendant la sauvegarde. Le type de données est
varchar.Valeurs valides :
-
OFFLINE— La base de données n'est pas disponible pendant la sauvegarde. Ce type est plus rapide, mais il entraîne des temps d'arrêt. -
ONLINE— La base de données reste disponible pendant la sauvegarde. Par défaut, la propriétéONLINEa la valeurINCLUDE LOGS.
-
Les paramètres suivants sont facultatifs :
compression_option-
Type d'algorithme de compression utilisé qui influe sur le temps de sauvegarde, l'utilisation du processeur et les coûts de stockage. Le type de données est
varchar. La valeur par défaut estNONE.Valeurs valides :
-
NONE— La plus grande taille de fichier, l'utilisation minimale du processeur et les coûts de stockage les moins élevés. -
STANDARD— Compression DB2 standard. Utilisationslibdb2compr.so. -
ZLIB— Compression Db2 améliorée. Utiliselibdb2zcompr.so, mais c'est plus gourmand en processeur et le coût de stockage le plus élevé.
-
util_impact_priority-
Paramètre qui contrôle l'impact de la sauvegarde sur les ressources du système. Le type de données est
integer. Valeurs valides :1—100(du plus faible au plus élevé). La valeur par défaut est50.Des valeurs inférieures réduisent l'impact de la sauvegarde sur les ressources du système, mais peuvent augmenter le temps nécessaire à la sauvegarde de la base de données. Des valeurs plus élevées peuvent terminer la sauvegarde de la base de données plus rapidement, mais peuvent affecter d'autres opérations. L'impact réel dépend de l'utilisation globale du système et du
util_impact_limparamètre. Vous pouvez afficher et modifier leutil_impact_limréglage dans les groupes de paramètres. Pour de plus amples informations, veuillez consulter Paramètres Amazon RDS for Db2. num_files-
Le nombre de flux de téléchargement parallèle vers Amazon S3. Le type de données est
integer. Valeurs valides :1-256.Nous vous recommandons de ne définir ce paramètre qu'après avoir observé les performances de sauvegarde par défaut calculées automatiquement par Amazon RDS. Des valeurs plus élevées peuvent améliorer les performances pour les sauvegardes de grande taille, en particulier pour les connexions à bande passante élevée, mais à un moment donné, des valeurs plus élevées dégradent les performances. Assurez-vous également de prendre en compte les ressources système disponibles et la capacité du réseau.
parallelism-
Nombre de tablespaces que l'utilitaire de sauvegarde peut lire en parallèle. Le type de données est
integer. Valeurs valides :1-256.Nous vous recommandons de ne définir ce paramètre qu'après avoir observé les performances de sauvegarde à la valeur par défaut que le moteur DB2 calcule automatiquement comme étant la valeur optimale. Si vous définissez ce paramètre, Amazon RDS effectue la validation par rapport aux processeurs disponibles et n'exécute pas la demande de sauvegarde si la puissance de traitement est insuffisante.
num_buffers-
Le nombre de tampons à utiliser. Le type de données est
integer. Valeurs valides :1-268435456.Nous vous recommandons de ne définir ce paramètre qu'après avoir observé les performances de sauvegarde par défaut calculées automatiquement par Amazon RDS en fonction de la mémoire. Si vous définissez ce paramètre, Amazon RDS valide par rapport à la mémoire disponible et n'exécutera pas la demande de sauvegarde si la mémoire disponible est insuffisante. Si vous sauvegardez sur plusieurs emplacements (
num_filesdéfini sur plus de1), un nombre plus élevé de mémoires tampons peut améliorer les performances. Si ce n'est pascompression_optionle casNONE, vous pouvez améliorer les performances en augmentantnum_buffersetparallelism.
Notes d’utilisation
Cette procédure stockée crée des tâches de sauvegarde asynchrones qui diffusent la sauvegarde de votre base de données directement dans votre compartiment Amazon S3 à l'aide de l'intégration Amazon S3. Vous pouvez effectuer des sauvegardes à la fois depuis votre serveur local ou depuis une instance de base de données RDS pour DB2, les diffuser sur Amazon S3, puis les restaurer où vous le souhaitez. Pour plus d'informations sur la restauration d'une base de données sur une instance de base de données RDS pour DB2, consultez. rdsadmin.restore_database
Avant d’appeler la procédure stockée, passez en revue les considérations suivantes :
-
Vous ne pouvez sauvegarder qu'une seule base de données à la fois.
-
Vous ne pouvez pas effectuer une sauvegarde et une restauration ensemble sur une instance de base de données.
-
Le chiffrement côté serveur Amazon S3 avec AWS KMS (SSE-KMS) n'est pas pris en charge. Même si le compartiment S3 est défini sur SSE-KMS, les fichiers chargés dans le compartiment S3 n'utiliseront pas le chiffrement SSE-KMS.
-
Pour diffuser les fichiers de sauvegarde vers Amazon S3, vous devez déjà avoir configuré l'intégration. Pour de plus amples informations, veuillez consulter Intégration d’une instance de base de données Amazon RDS for Db2 avec Amazon S3.
-
Pour qu'une instance de base de données RDS for Db2 puisse interagir avec Amazon S3, vous devez disposer d'un VPC et d'un point de terminaison de passerelle Amazon S3 que les sous-réseaux privés peuvent utiliser. Pour plus d’informations, consultez Étape 1 : création d’un point de terminaison de passerelle VPC pour Amazon S3 et Étape 2 : vérification de l’existence du point de terminaison de votre passerelle VPC pour Amazon S3 existe.
Avant d’appelerrdsadmin.backup_database, vous devez vous connecter à la base de données rdsadmin. Dans l'exemple suivant, remplacez master_username et master_password par votre RDS pour les informations d'instance de base de données DB2 :
db2 connect to rdsadmin usermaster_usernameusingmaster_password
Après avoir sauvegardé votre base de données, veillez à mettre fin à la connexion.
terminate
Pour plus d'informations sur la vérification de l'état de sauvegarde d'une base de données, consultezrdsadmin.get_task_status.
Pour les messages d’erreur renvoyés lors de l’appel rdsadmin.backup_database, consultez Erreurs de procédure stockée.
Exemples
Tous les exemples sauvegardent une base de données appelée MYDB dans le compartiment Amazon S3 appelé amzn-s3-demo-bucket et lui attribuent la valeur s3_prefix àbackups/daily.
Exemple #1 : Spécification d'une base de données hors ligne et indisponible avec une utilisation médiane et un seul flux de téléchargement
Dans l'exemple suivant, la base de données est hors ligne, ce qui est plus rapide mais signifie qu'elle n'est pas disponible pendant la sauvegarde. L'exemple n'effectue aucune compression des fichiers, a un impact médian sur les ressources système et utilise un seul flux de téléchargement vers Amazon S3.
db2 call "rdsadmin.backup_database( ?, 'MYDB', 'amzn-s3-demo-bucket', 'backups/daily', 'OFFLINE', 'NONE', 50, 1)"
Exemple #2 : Spécification d'une base de données en ligne et disponible avec une compression améliorée, une utilisation médiane et quelques flux de téléchargement parallèles
Dans l'exemple suivant, la base de données est en ligne et disponible pendant la sauvegarde. L'exemple effectue une compression améliorée, ce qui réduit la taille du fichier, mais consomme beaucoup de ressources processeur. Il a un impact légèrement supérieur à la moyenne sur les ressources du système et utilise cinq flux de téléchargement vers Amazon S3.
db2 call "rdsadmin.backup_database( ?, 'MYDB', 'amzn-s3-demo-bucket', 'backups/daily', 'ONLINE', 'ZLIB', 60, 5)"
Exemple #3 : Spécification de la base de données hors ligne et indisponible avec les valeurs par défaut et les calculs du système
Dans l'exemple suivant, la base de données est hors ligne, ce qui est plus rapide mais signifie qu'elle n'est pas disponible pendant la sauvegarde. L'exemple utilise la compression par défaut des fichiers et son impact sur les ressources du système. Cela permet également à RDS pour Db2 de calculer le nombre de flux de téléchargement parallèles vers Amazon S3, les tablespaces à lire en parallèle et les tampons à utiliser.
db2 "call rdsadmin.backup_database( ?, 'MYDB', 'amzn-s3-demo-bucket', 'backups/daily', 'OFFLINE')"
Exemple #4 : Spécification d'une base de données hors ligne et indisponible sans compression, utilisation élevée et calculs personnalisés
Dans l'exemple suivant, la base de données est hors ligne, ce qui est plus rapide mais signifie qu'elle n'est pas disponible pendant la sauvegarde. L'exemple n'effectue aucune compression des fichiers, a un impact important sur les ressources système et utilise 20 flux de téléchargement vers Amazon S3. Il définit le nombre maximum de tablespaces à lire en parallèle, ce qui peut entraîner l'échec de la demande de sauvegarde si la puissance de traitement est insuffisante. Il définit également le nombre maximum de tampons à utiliser, ce qui peut entraîner l'échec de la demande de sauvegarde si la mémoire est insuffisante.
db2 "call rdsadmin.backup_database( ?, 'MYDB', 'amzn-s3-demo-bucket', 'backups/daily', 'OFFLINE', 'NONE', 90, 20, 256, 268435456)"
rdsadmin.restore_database
Restaure une base de données d’un compartiment Amazon S3 vers votre instance de base de données RDS for Db2.
Syntaxe
db2 "call rdsadmin.restore_database( ?, 'database_name', 's3_bucket_name', 's3_prefix',restore_timestamp, 'backup_type')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Les paramètres d’entrée suivants sont obligatoires :
database_name-
Nom de la base de données cible à restaurer dans RDS for Db2. Le type de données est
varchar.Par exemple, si le nom de la base de données source était
TESTDBet que vous l'avez définidatabase_namesurNEWDB, Amazon RDS effectue la restaurationNEWDBen tant que base de données source. s3_bucket_name-
Nom du compartiment Amazon S3 dans lequel réside la sauvegarde. Le type de données est
varchar. s3_prefix-
Le préfixe à utiliser pour la mise en correspondance des fichiers lors du téléchargement. Le type de données est
varchar.Si ce paramètre est vide, tous les fichiers du compartiment Amazon S3 seront traités. Voici un exemple de préfixe :
backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101 restore_timestamp-
Horodatage de l’image de sauvegarde de la base de données. Le type de données est
varchar.L’horodatage est inclus dans le nom du fichier de sauvegarde. Par exemple,
20230615010101est l’horodatage du nom du fichierSAMPLE.0.rdsdb.DBPART000.20230615010101.001. backup_type-
Type de sauvegarde. Le type de données est
varchar. Valeurs valides :OFFLINE,ONLINE.Utilisez
ONLINEpour des migrations quasiment sans interruption de service. Pour de plus amples informations, veuillez consulter Migration de Linux vers Linux avec une durée d’indisponibilité quasiment nulle pour Amazon RDS for Db2.
Notes d’utilisation
Vous pouvez utiliser cette procédure stockée pour migrer une base de données Db2 vers une instance de base de données RDS for Db2. Pour de plus amples informations, veuillez consulter Utilisation des services AWS pour migrer des données de Db2 vers Amazon RDS for Db2. Vous pouvez également utiliser cette procédure stockée pour créer plusieurs copies de la même base de données portant des noms de base de données différents et utilisant la même image de restauration.
Avant d’appeler la procédure stockée, passez en revue les considérations suivantes :
-
Avant de restaurer une base de données, vous devez allouer un espace de stockage pour votre instance de base de données RDS for DB2 supérieur à celui de la base de données Db2 d'origine sur le disque. Si vous l'avez activé
USE_STREAMING_RESTORE, Amazon RDS diffuse les fichiers de sauvegarde directement depuis votre compartiment S3 vers votre instance de base de données RDS pour Db2 lorsque vous restaurez votre sauvegarde. Si vous ne l'activez pasUSE_STREAMING_RESTORE, vous devez allouer un espace de stockage pour votre instance de base de données RDS for DB2 égal ou supérieur à la somme de la taille de sauvegarde et de la base de données Db2 d'origine sur le disque. Pour de plus amples informations, veuillez consulter Insufficient disk space. -
Lorsque vous restaurez la sauvegarde, Amazon RDS extrait le fichier de sauvegarde sur votre instance de base de données RDS for Db2. La taille de chaque fichier de sauvegarde doit être inférieure ou égale à 5 To. Si un fichier de sauvegarde dépasse 5 To, vous devez diviser celui-ci en plusieurs fichiers plus petits.
-
Pour restaurer tous les fichiers à l’aide de la procédure stockée
rdsadmin.restore_database, n’incluez pas le suffixe du numéro de fichier après l’horodatage dans les noms de fichiers. Par exemple, les fichiers suivants sonts3_prefixbackupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101restaurés :SAMPLE.0.rdsdb.DBPART000.20230615010101.001 SAMPLE.0.rdsdb.DBPART000.20230615010101.002 SAMPLE.0.rdsdb.DBPART000.20230615010101.003 SAMPLE.0.rdsdb.DBPART000.20230615010101.004 SAMPLE.0.rdsdb.DBPART000.20230615010101.005 -
RDS for Db2 ne prend pas en charge le stockage non automatique. Pour de plus amples informations, veuillez consulter Tablespaces not restored.
-
RDS for Db2 ne prend pas en charge les routines non clôturées. Pour de plus amples informations, veuillez consulter Non-fenced routines not allowed.
-
Pour améliorer les performances des opérations de restauration de base de données, vous pouvez configurer le nombre de tampons, de manipulateurs de mémoire tampon et le nombre de chemins de sauvegarde multiples à utiliser par RDS. Pour optimiser l'utilisation du stockage et potentiellement améliorer les performances, vous pouvez également diffuser directement une sauvegarde depuis Amazon S3. Pour vérifier la configuration actuelle, utilisez rdsadmin.show_configuration. Pour modifier la configuration, utilisez rdsadmin.set_configuration.
Pour mettre la base de données en ligne et appliquer des journaux de transactions supplémentaires après avoir restauré la base de données, consultez rdsadmin.rollforward_database.
Pour plus d’informations sur la vérification du statut de restauration de votre base de données, consultez rdsadmin.get_task_status.
Pour les messages d’erreur renvoyés lors de l’appel rdsadmin.restore_database, consultez Erreurs de procédure stockée.
Exemples
L'exemple suivant restaure une sauvegarde hors ligne avec un seul fichier ou plusieurs fichiers dotés des caractéristiques s3_prefix backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101 suivantes :
db2 "call rdsadmin.restore_database( ?, 'SAMPLE', 'amzn-s3-demo-bucket', 'backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101', 20230615010101, 'OFFLINE')"
rdsadmin.rollforward_database
Met la base de données en ligne et applique des journaux de transactions supplémentaires après avoir restauré une base de données en appelant rdsadmin.restore_database.
Syntaxe
db2 "call rdsadmin.rollforward_database( ?, 'database_name', 's3_bucket_name',s3_prefix, 'rollforward_to_option', 'complete_rollforward')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Les paramètres d’entrée suivants sont obligatoires :
database_name-
Nom de la base de données sur laquelle effectuer l’opération. Le type de données est
varchar. s3_bucket_name-
Nom du compartiment Amazon S3 dans lequel réside la sauvegarde. Le type de données est
varchar. s3_prefix-
Le préfixe à utiliser pour la mise en correspondance des fichiers lors du téléchargement. Le type de données est
varchar.Si ce paramètre est vide, tous les fichiers du compartiment S3 seront téléchargés. Voici un exemple de préfixe :
backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101
Les paramètres d’entrée suivants sont facultatifs :
rollforward_to_option-
Point de report. Le type de données est
varchar. Valeurs valides :END_OF_LOGS,END_OF_BACKUPavec l’horodatage au formatYYYY-MM-DD-HH.MM.SS. La valeur par défaut estEND_OF_LOGS. complete_rollforward-
Indique s’il faut achever le processus de report. Le type de données est
varchar. La valeur par défaut estTRUE.Si
TRUE, la base de données est en ligne et accessible à la fin du processus. SiFALSE, la base de données reste dans à l’étatROLL-FORWARD PENDING.
Notes d’utilisation
Vous pouvez utiliser rds.rollforward_database pour une sauvegarde en ligne avec des journaux inclus qui sont produits sur site dans de nombreux scénarios différents.
Scénario 1 : restauration de la base de données, report des journaux inclus et mise en ligne de la base de données
Une fois rdsadmin.restore_database() terminé, utilisez la syntaxe de l’exemple 1 pour mettre en ligne la base de données contenant les journaux de transactions.
Scénario 2 : mise en ligne de la base de données sans report des journaux inclus.
Une fois rdsadmin.restore_database() terminé, utilisez la syntaxe de l’exemple 2 pour mettre en ligne la base de données sans journaux de transactions.
Scénario 3 : report des journaux inclus dans la sauvegarde et application de journaux de transactions supplémentaires au fur et à mesure qu’ils sont produits sur site
Une fois rdsadmin.restore_database() terminé, utilisez la syntaxe de l’exemple 3 ou de l’exemple 4 pour reporter les journaux sans mettre en ligne la base de données.
Si vous définissez complete_rollforward sur FALSE, votre base de données est dans un état ROLL-FORWARD PENDING et hors ligne. Pour mettre la base de données en ligne, vous devez appeler rdsadmin.complete_rollforward.
Pour plus d’informations sur la vérification du statut de report de la base de données, consultez rdsadmin.rollforward_status.
Exemples
Exemple 1 : mise en ligne d’une base de données contenant des journaux de transactions
L’exemple suivant reprend une sauvegarde en ligne de la base de données avec les journaux de transactions, puis met la base de données en ligne :
db2 "call rdsadmin.rollforward_database( ?, null, null, 'END_OF_LOGS', 'TRUE')"
Exemple 2 : mise en ligne d’une base de données sans journaux de transactions
L’exemple suivant reprend une sauvegarde en ligne de la base de données sans journaux de transactions, puis met la base de données en ligne :
db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', 'amzn-s3-demo-bucket', 'logsfolder/, 'END_OF_BACKUP', 'TRUE')"
Exemple 3 : non mise en ligne d’une base de données contenant des journaux de transactions
L’exemple suivant reprend une sauvegarde en ligne de la base de données avec les journaux de transactions, puis ne met pas la base de données en ligne :
db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', null, 'onlinebackup/TESTDB', 'END_OF_LOGS', 'FALSE')"
Exemple 4 : non mise en ligne d’une base de données contenant des journaux de transactions supplémentaires
L’exemple suivant reprend une sauvegarde en ligne de la base de données avec les journaux de transactions supplémentaires, puis ne met pas la base de données en ligne :
db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', 'amzn-s3-demo-bucket', 'logsfolder/S0000155.LOG', 'END_OF_LOGS', 'FALSE')"
rdsadmin.rollforward_status
Renvoie la sortie de ROLLFORWARD DATABASE
.database_name QUERY STATUS
Syntaxe
db2 "call rdsadmin.rollforward_status( ?, 'database_name')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Le paramètre d’entrée suivant est obligatoire :
database_name-
Nom de la base de données sur laquelle effectuer l’opération. Le type de données est
varchar.
Notes d’utilisation
Après avoir appelé rdsadmin.rollforward_database, vous pouvez appeler rdsadmin.rollforward_status pour vérifier le statut du report dans la base de données.
Pour plus d’informations sur la vérification du statut de cette procédure stockée, consultez rdsadmin.get_task_status.
rdsadmin.complete_rollforward
Met en ligne la base de données à partir d’un état ROLL-FORWARD PENDING.
Syntaxe
db2 "call rdsadmin.complete_rollforward( ?, 'database_name')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Le paramètre d’entrée suivant est obligatoire :
database_name-
Nom de la base de données que vous souhaitez mettre en ligne. Le type de données est
varchar.
Notes d’utilisation
Si vous appelez rdsadmin.rollforward_database avec complete_rollforward défini sur FALSE, votre base de données est alors dans un état ROLL-FORWARD PENDING et hors ligne. Pour terminer le processus de report et mettre la base de données en ligne, appelez rdsadmin.complete_rollforward.
Pour plus d’informations sur la vérification du statut de finalisation du processus de report, consultez rdsadmin.rollforward_status.
Exemples
L’exemple suivant met la base de données TESTDB en ligne :
db2 "call rdsadmin.complete_rollforward( ?, 'TESTDB')"
rdsadmin.db2pd_command
Collecte des informations sur une base de données RDS for Db2.
Syntaxe
db2 "call rdsadmin.db2pd_command('db2pd_cmd')"
Parameters
Le paramètre d’entrée suivant est obligatoire :
db2pd_cmd-
Nom de la commande
db2pdque vous voulez exécuter. Le type de données estvarchar.Le paramètre doit commencer par un tiret. Pour obtenir la liste des paramètres, consultez db2pd - Surveiller et résoudre les problèmes liés à la commande de base de données Db2
dans la documentation IBM Db2. Les options suivantes ne sont pas prises en charge :
-
-addnode -
-alldatabases -
-alldbp -
-alldbs -
-allmembers -
-alm_in_memory -
-cfinfo -
-cfpool -
-command -
-dbpartitionnum -
-debug -
-dump -
-everything -
-file | -o -
-ha -
-interactive -
-member -
-pagesNote
-pages summaryest pris en charge. -
-pdcollection -
-repeat -
-stack -
-totalmem
La sous-option
filen’est pas prise en charge, par exempledb2pd -db testdb -tcbstats file=tcbstat.out.L’utilisation de l’option
stacksn’est pas prise en charge, par exempledb2pd -edus interval=5 top=10 stacks. -
Notes d’utilisation
Cette procédure stockée rassemble des informations qui peuvent aider à surveiller et à résoudre les problème liés aux bases de données RDS for Db2.
La procédure stockée utilise l’utilitaire IBM db2pd pour exécuter différentes commandes. L’utilitaire db2pd nécessite une autorisation SYSADM, que l’utilisateur principal de RDS for Db2 ne possède pas. Cependant, avec la procédure stockée Amazon RDS, l’utilisateur principal peut utiliser l’utilitaire pour exécuter diverses commandes. Pour plus d’informations sur cet utilitaire, consultez db2pd - Surveiller et résoudre les problèmes liés à la commande de base de données Db2
La sortie est limitée à un maximum de 2 Go.
Pour plus d’informations sur la vérification du statut de collecte d’informations sur la base de données, consultez rdsadmin.get_task_status.
Exemples
Exemple 1 : renvoi de la durée de fonctionnement d’une instance de base de données
L’exemple suivant renvoie la durée de fonctionnement d’une instance de base de données RDS for Db2 :
db2 "call rdsadmin.db2pd_command('-')"
Exemple 2 : renvoi de la durée de fonctionnement de la base de données
L’exemple suivant renvoie la durée de fonctionnement d’une base de données appelée TESTDB :
db2 "call rdsadmin.db2pd_command('-db TESTDB -')"
Exemple 3 : renvoi de l’utilisation de la mémoire d’une instance de base de données
L’exemple suivant renvoie l’utilisation de la mémoire d’une instance de base de données RDS for Db2 :
db2 "call rdsadmin.db2pd_command('-dbptnmem')"
Exemple 4 : renvoi des ensembles de mémoire d’une instance de base de données et d’une base de données
L’exemple suivant renvoie les ensembles de mémoire d’une instance de base de données RDS for Db2 et d’une base de données appelée TESTDB :
db2 "call rdsadmin.db2pd_command('-inst -db TESTDB -memsets')"
rdsadmin.force_application
Force les applications à quitter une base de données RDS for Db2.
Syntaxe
db2 "call rdsadmin.force_application( ?, 'applications')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Le paramètre d’entrée suivant est obligatoire :
applications-
Applications que vous voulez forcer à quitter une base de données RDS for Db2. Le type de données est
varchar. Valeurs valides :ALLouapplication_handle.Séparez les noms de plusieurs applications par des virgules. Exemple : «
application_handle_1,application_handle_2».
Notes d’utilisation
Cette procédure stockée force toutes les applications à quitter une base de données afin que vous puissiez effectuer la maintenance.
La procédure stockée utilise la commande IBM FORCE APPLICATION. La commande FORCE APPLICATION nécessite l’autorisation SYSADM, SYSMAINT ou SYSCTRL, que l’utilisateur principal de RDS for Db2 ne possède pas. Cependant, avec la procédure stockée Amazon RDS, l’utilisateur principal peut utiliser la commande. Pour plus d’informations, consultez Commande FORCER L’APPLICATION
Pour plus d’informations sur la vérification du statut de désactivation forcée des applications d’une base de données, consultez rdsadmin.get_task_status.
Exemples
Exemple 1 : spécification de toutes les applications
L’exemple suivant force toutes les applications à quitter une base de données RDS for Db2 :
db2 "call rdsadmin.force_application( ?, 'ALL')"
Exemple 2 : spécification de plusieurs applications
L’exemple suivant force toutes les handles d’application 9991, 8891 et 1192 à quitter une base de données RDS for Db2 :
db2 "call rdsadmin.force_application( ?, '9991, 8891, 1192')"
rdsadmin.set_archive_log_retention
Configure la durée (en heures) de conservation des fichiers journaux d’archivage pour la base de données RDS for Db2 spécifiée.
Syntaxe
db2 "call rdsadmin.set_archive_log_retention( ?, 'database_name', 'archive_log_retention_hours')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Les paramètres d’entrée suivants sont obligatoires :
database_name-
Nom de la base de données pour laquelle la conservation des journaux d’archivage doit être configurée. Le type de données est
varchar. archive_log_retention_hours-
Nombre d’heures pendant lesquelles les fichiers journaux d’archivage doivent être conservés. Le type de données est
smallint. La valeur par défaut est0et la valeur maximale est168(7 jours).Si la valeur est
0, Amazon RDS ne conserve pas les fichiers journaux d’archivage.
Notes d’utilisation
Par défaut, RDS for Db2 conserve les journaux pendant 5 minutes. Nous vous recommandons d'utiliser des outils de réplication tels que AWS DMS pour la capture des données de modification (CDC) ou IBM Q Replication de configurer la conservation des journaux dans ces outils pendant plus de 5 minutes.
Vous pouvez consulter le paramètre actuel de conservation des journaux d’archivage en appelant rdsadmin.show_archive_log_retention.
Vous ne pouvez pas configurer le paramètre de conservation des journaux d’archivage sur la base de données rdsadmin.
Exemples
Exemple 1 : définition de la durée de conservation
L’exemple suivant définit la durée de conservation du journal d’archivage pour une base de données appelée TESTDB à 24 heures.
db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '24')"
Exemple 2 : désactivation de la durée de conservation
L’exemple suivant désactive la conservation du journal d’archivage pour une base de données appelée TESTDB.
db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '0')"
rdsadmin.show_archive_log_retention
Renvoie le paramètre actuel de conservation du journal d’archivage pour la base de données spécifiée.
Syntaxe
db2 "call rdsadmin.show_archive_log_retention( ?, 'database_name')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Le paramètre d’entrée suivant est obligatoire :
database_name-
Nom de la base de données pour laquelle le paramètre de conservation du journal d’archivage doit être affiché. Le type de données est
varchar.
Exemples
L’exemple suivant affiche la conservation du journal d’archivage pour une base de données appelée TESTDB.
db2 "call rdsadmin.show_archive_log_retention(?,'TESTDB')"
rdsadmin.list_archive_log_information
Renvoie des informations sur les fichiers journaux d’archivage, tels que la taille, la date et l’heure de création, ainsi que le nom des fichiers journaux individuels pour la base de données spécifiée. Il renvoie également la quantité totale de stockage utilisée par les fichiers journaux de la base de données.
Syntaxe
db2 "call rdsadmin.list_archive_log_information( ?, 'database_name')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Le paramètre d’entrée suivant est obligatoire :
database_name-
Nom de la base de données pour laquelle répertorier les informations du journal d’archivage. Le type de données est
varchar.
Exemples
L’exemple suivant renvoie les informations du journal d’archivage pour une base de données appelée TESTDB.
db2 "call rdsadmin.list_archive_log_information( ?, 'TESTDB')"
rdsadmin.fgac_command
Exécute des commandes de contrôle d'accès détaillées (FGAC).
Syntaxe
db2 "call rdsadmin.fgac_command( ?, 'database_name', 'fgac_cmd')"
Parameters
Les paramètres de sortie suivants sont obligatoires :
- ?
-
Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement
?.
Les paramètres d’entrée suivants sont obligatoires :
database_name-
Nom de la base de données sur laquelle vous souhaitez exécuter les commandes FGAC. Le type de données est
varchar. fgac_cmd-
Commande de contrôle d'accès précise que vous souhaitez exécuter. Le type de données est
varchar.Les commandes suivantes sont valides :
-
ALTER MASK— Modifie un masque de colonne existant dans le contrôle d'accès aux lignes et aux colonnes (RCAC). -
ALTER PERMISSION— Modifie les propriétés d'une autorisation de ligne existante dans RCAC. -
ALTER SECURITY POLICY— Modifie une politique de sécurité existante pour le RCAC. -
ALTER SECURITY LABEL— Modifie les propriétés d'une étiquette de sécurité existante dans le contrôle d'accès basé sur les étiquettes (LBAC). -
ALTER TABLE— Modifie la structure de la table, notamment en ajoutant des contrôles RCAC ou LBAC. -
CREATE MASK— Crée un nouveau masque de colonne pour le RCAC. -
CREATE PERMISSION— Crée une nouvelle autorisation de ligne pour le RCAC. -
CREATE SECURITY LABEL— Crée une nouvelle étiquette de sécurité pour le LBAC. -
CREATE SECURITY POLICY— Crée une nouvelle politique de sécurité pour le RCAC. -
DROP MASK— Supprime un masque de colonne existant. -
DROP PERMISSION— Supprime une autorisation de ligne existante. -
DROP SECURITY LABEL— Supprime une étiquette de sécurité du LBAC. -
DROP SECURITY POLICY— Supprime une politique de sécurité RCAC existante. -
GRANT EXEMPTION ON RULE— Permet à un utilisateur de contourner des règles LBAC spécifiques. -
GRANT SECURITY LABEL— Attribue une étiquette de sécurité LBAC à un utilisateur. -
REVOKE EXEMPTION ON RULE— Supprime l'exemption d'un utilisateur aux règles LBAC. -
REVOKE SECURITY LABEL— Supprime une étiquette de sécurité LBAC attribuée à un utilisateur.
-
Notes d’utilisation
Cette procédure stockée contrôle l'accès au niveau de la ligne ou de la colonne aux données de table de votre base de données sur une instance de base de données RDS pour DB2. RDS pour Db2 prend en charge deux types de FGAC sur la base de données :
-
Contrôle d'accès basé sur des étiquettes (LBAC)
-
Contrôle d'accès aux lignes et aux colonnes (RCAC)
Avant d’appeler la procédure stockée, passez en revue les considérations suivantes :
-
Pour éviter un guillemet simple ('), utilisez un guillemet simple supplémentaire. Les exemples suivants montrent comment s'échapper
'apple''banana', et'fruit'.db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE SECURITY LABEL COMPONENT FRUITSET SET{''apple'',''banana''}')"db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE SECURITY LABEL COMPONENT FRUITTREE TREE(''fruit'' ROOT, ''apple'' UNDER ''fruit'', ''banana'' UNDER ''fruit'')')" -
Pour éviter les crochets ([]), utilisez une barre oblique inverse (\). L'exemple suivant montre comment s'échapper
[''apple'',''banana''].db2 "call rdsadmin.fgac_command( ?, ' testdb', 'CREATE SECURITY LABEL COMPONENT FRUITARRAY ARRAY\[''apple'',''banana''\]')"
Exemples
Les exemples suivants exécutent tous des commandes FGAC sur une base de données appeléetestdb.
Exemple 1 : Création d'une nouvelle étiquette de sécurité appelée FRUITSET
db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE SECURITY LABEL COMPONENT FRUITSET SET{''apple'',''banana''}')"
Exemple 2 : Création d'un nouveau masque pour la EMP_ID colonne qui est activé lorsque la valeur EMP_ID est inférieure à trois
db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE MASK id_MASK ON EMPLOYEE FOR COLUMN EMP_ID RETURN CASE WHEN (EMP_ID < 3) THEN EMP_ID ELSE NULL END ENABLE')"
Exemple 3 : Création d'un nouveau masque pour la DEPARTMENT colonne qui est activé lorsqu'il SESSION_USER est défini sur security_user
db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE MASK DEPARTMENT_MASK ON EMPLOYEE FOR COLUMN DEPARTMENT RETURN CASE WHEN SESSION_USER = ''security_user'' THEN DEPARTMENT ELSE NULL END ENABLE')"
Exemple 4 : Création d'une nouvelle étiquette de sécurité appelée treelabel
db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE SECURITY LABEL COMPONENT treelabel TREE(''COMPANY'' ROOT, ''HR'' UNDER ''COMPANY'', ''FINANCE'' UNDER ''COMPANY'', ''IT'' UNDER ''COMPANY'')')"