Migrer des données à l'aide de tablespaces transportables

Les tablespaces transportables permettent une migration efficace d'importants volumes de données en déplaçant les tablespaces, y compris leurs données et métadonnées, d'une base de données source vers une base de données cible sans nécessiter d'export et d'import de données complets.

A propos des tablespaces transportables

Les tablespaces transportables sont une fonctionnalité d'Oracle Database qui vous permet de déplacer d'importants volumes de données entre des bases de données rapidement et efficacement.

Vous pouvez utiliser des tablespaces transportables avec une base de données Autonomous AI pour déplacer efficacement des ensembles de données volumineux en transportant des tablespaces entiers gérés par l'utilisateur à partir d'une base de données non Autonomous AI, telle qu'une instance Oracle Database sur site ou une instance Oracle Database Cloud Service (DBCS), même sur plusieurs plates-formes. La migration de tablespaces complets, au lieu d'objets individuels, réduit le temps de migration et réduit les temps d'arrêt par rapport à l'export et à l'import au niveau objet. Cette fonctionnalité est particulièrement utile pour les migrations de data warehouse, l'archivage des données historiques et les mises à niveau de base de données.

Les tablespaces transportables prennent en charge les tablespaces cryptés et non cryptés, y compris la gestion des portefeuilles de cryptage transparent des données (TDE), le cas échéant. Etant donné qu'Autonomous AI Database ne prend en charge que les tablespaces bigfile, tous les tablespaces smallfile de la source sont automatiquement convertis en tablespaces bigfile pendant l'opération de transport.

Les principaux avantages des tablespaces transportables sont les suivants :
  • Portabilité interplate-forme pour un déplacement flexible des données.

  • Migrations plus rapides que les exportations et les importations conventionnelles, avec un temps d'arrêt réduit.

  • Prise en charge de l'archivage des données pour rationaliser les environnements de production.

  • Sécurité et intégrité grâce à la validation intégrée, à la gestion correcte des métadonnées et au traitement sécurisé du portefeuille TDE.

Prérequis

Répertorie les prérequis pour le transport de tablespaces entre les bases de données.

  • Avant de migrer d'une base de données d'IA non autonome vers une base de données d'IA autonome, consultez les informations dans Remarques pour les utilisateurs migrant à partir d'autres bases de données Oracle. Ces informations décrivent les limitations importantes et les différences de comportement qui peuvent affecter les opérations de base de données de migration et post-migration.

  • Créez un répertoire intermédiaire sur l'hôte sur lequel la base de données source est exécutée. Utilisez ce répertoire pour télécharger l'utilitaire de sauvegarde de tablespaces transportables et les fichiers associés, ainsi que le module Oracle Database Cloud Backup pour OCI.

  • Téléchargez l'utilitaire de sauvegarde des tablespaces transportables et les fichiers associés dans le répertoire de votre projet. Pour obtenir des instructions de téléchargement et accéder aux fichiers nécessaires, reportez-vous au référentiel Transportable-Tablespaces-Backup-Utility sur GitHub.

  • Créez deux buckets OCI Object Storage : l'un pour stocker les sauvegardes et l'autre pour stocker les métadonnées, telles que les métadonnées de schéma et de tablespace. Pour plus d'informations, reportez-vous à Création d'un bucket Object Storage.

  • Générez une clé de signature d'API. Cette clé permet à l'utilitaire de sauvegarde de tablespaces transportables de s'authentifier auprès d'OCI Object Storage et de vérifier qu'il est autorisé à écrire des sauvegardes de tablespace à partir de la base de données source. Sans cela, les demandes de sauvegarde seront rejetées. Pour plus d'informations, reportez-vous à Procédure de génération d'une clé de signature d'API.

  • Téléchargement et installation du module Oracle Database Cloud Backup pour OCI. Pour créer une sauvegarde de tablespace à partir de la base de données source vers Oracle Cloud Infrastructure, vous devez d'abord installer le module Oracle Database Cloud Backup pour OCI. Vous téléchargez le module à partir d'Oracle Technology Network (OTN) et l'installez sur votre serveur de base de données. Pour plus d'informations, reportez-vous à Installation du module Oracle Database Cloud Backup pour OCI.

  • Définissez des stratégies et des groupes dynamiques pour accéder à Oracle Cloud Infrastructure OCI Object Storage avec un principal de ressource. Vous avez besoin d'un principal de ressource pour télécharger en toute sécurité le groupe de métadonnées Transport Tablespaces sur la base de données Autonomous AI cible. Pour plus d'informations, reportez-vous à Utilisation du principal de ressource pour accéder à des ressources Oracle Cloud Infrastructure.

  • Les tablespaces doivent être autonomes. Tous les objets dépendants doivent résider entièrement dans l'ensemble de tablespaces transportés. Exécutez la requête suivante pour vérifier l'auto-confinement :
    EXEC DBMS_TTS.TRANSPORT_SET_CHECK('HR,PROD', TRUE);
    SELECT * FROM TRANSPORT_SET_VIOLATIONS;
    Si aucune ligne n'est renvoyée, les tablespaces sont autonomes et peuvent être transportés.
  • Les tablespaces doivent être définis sur le mode READ ONLY lors de l'exécution de la sauvegarde finale pour le transport, tandis qu'ils peuvent rester en mode READ WRITE pour les sauvegardes incrémentielles. Pour plus d'informations, reportez-vous à Concepts de sauvegarde RMAN.

  • Les bases de données source et cible doivent avoir des jeux de caractères identiques ou compatibles, et l'enchaînement (ordre des octets) doit correspondre entre les plates-formes. Pour plus d'informations, reportez-vous à Conversion de données au format Endian du système d'exploitation cible.

  • Provisionnez la base de données cible avec suffisamment d'espace de stockage pour les fichiers de données transportés.

Pour obtenir la liste des restrictions supplémentaires, reportez-vous à Limites sur les tablespaces transportables.

Workflow de migration utilisant des tablespaces transportables

Cette section décrit les étapes à suivre pour effectuer une migration de tablespaces transportables d'une base de données AI non autonome vers une base de données AI autonome.

Vous ne pouvez pas transférer directement des tablespaces d'une base de données d'IA non autonome vers une base de données d'IA autonome. Pour transporter des tablespaces, sauvegardez d'abord les tablespaces de la base de données source vers l'emplacement de stockage intermédiaire, OCI Object Storage. Le stockage intermédiaire stocke la sauvegarde des données et des métadonnées, ainsi que les fichiers de portefeuille TDE (Transparent Data Encryption) si le cryptage est activé sur les tablespaces transportés. Après la sauvegarde, restaurez les données du stockage intermédiaire vers la base de données Autonomous AI cible.

Le workflow pour les tablespaces transportables comprend les étapes suivantes :

  1. Préparer l'hôte de la base de données source pour les tablespaces transportables
    Avant d'effectuer une opération de tablespace transportable, effectuez plusieurs tâches de configuration pour vous assurer que l'environnement de base de données source est correctement configuré :

    Ces étapes préparatoires garantissent les configurations de connectivité, d'authentification et de stockage requises pour une opération de tablespace transportable sécurisée.

    Pour plus d'informations, reportez-vous à Préparation de l'environnement hôte de la base de données source.

  2. Exécutez l'utilitaire de sauvegarde sur la source.

    Utilisez l'utilitaire de sauvegarde de tablespace transportable fourni par Oracle, un script basé sur Python, pour créer et télécharger une sauvegarde de tablespace à partir de la base de données source. Cet utilitaire :

    • Valide la préparation de l'environnement source.

    • Utilise l'export Oracle Data Pump pour exporter les métadonnées.

    • Utilise Oracle Recovery Manager (RMAN) pour sauvegarder les données des tablespaces.

    • Packages de sortie, éléments de sauvegarde RMAN, métadonnées, fichiers de portefeuille TDE, le cas échéant, et certificats dans une archive tar compressée (groupe de métadonnées Tablespaces transportables).

    • Télécharge le groupe en toute sécurité vers le bucket Object Storage indiqué.

    • Renvoie une URL vers le groupe chargé, à utiliser lors du processus de restauration.

    • L'utilitaire appelle également le module Oracle Database Cloud Backup pour OCI afin de créer un portefeuille pour les clés de signature d'API et les certificats requis, garantissant ainsi un accès sécurisé à OCI Object Storage.

    • Les sauvegardes incrémentielles et non incrémentielles sont prises en charge. La sauvegarde non incrémentielle est une sauvegarde complète et ponctuelle avec des tablespaces en mode lecture seule. Les sauvegardes incrémentielles commencent par une sauvegarde de niveau 0, suivie d'une ou de plusieurs sauvegardes incrémentielles (niveau 1) et d'une sauvegarde incrémentielle finale avec des tablspaces en mode lecture seule. Le workflow de restauration sur la base de données Autonomous AI cible dépend du type de sauvegarde que vous choisissez.

    Pour plus d'informations, reportez-vous à Sauvegarde de tablespace sur la base de données source : étapes et exemple.

  3. Importer des tablespaces dans la base de données Autonomous AI
    Le processus de restauration des tablespaces transportables sur la base de données Autonomous AI cible dépend du type de sauvegarde de tablespace sur la base de données source :
    • Sauvegardes non incrémentielles

      Appliquez la sauvegarde non incrémentielle lors du provisionnement de la base de données Autonomous AI. Cette opération restaure les données et importe les métadonnées en une seule étape.

    • les sauvegardes incrémentielles,

      Commencez par créer une sauvegarde incrémentielle level 0 sur la base de données source. Restaurez la sauvegarde du tablespace level 0 à partir de la base de données source lors du provisionnement de la base de données Autonomous AI cible. Une fois la base de données créée, appliquez les sauvegardes incrémentielles de niveau 1 suivantes dans l'ordre. Au cours de ce processus, seuls les éléments de sauvegarde RMAN sont copiés dans la base de données cible. Les métadonnées associées sont importées après l'application de la sauvegarde incrémentielle finale sur la base de données Autonomous AI cible.

    Pour plus d'informations, reportez-vous à Tablespaces de transport vers une base de données Autonomous AI.

Préparation de l'environnement hôte de la base de données source

Décrit les étapes requises pour configurer l'environnement avant d'effectuer des opérations de tablespace transportable.

Sujets

Créer un répertoire dans la base de données source

Affiche les étapes de création d'un répertoire de projet sur l'hôte exécutant la base de données source. Ce répertoire sert de zone intermédiaire pour les fichiers liés aux tablespaces transportables.

Pour créer un répertoire de projet, procédez comme suit :

  1. Connectez-vous à l'hôte de base de données source sur lequel la base de données Oracle source est exécutée.

  2. Identifiez un emplacement approprié avec suffisamment d'espace pour stocker les fichiers requis.

  3. Créez le répertoire. Exécutez la commande suivante pour créer un répertoire de projet :
    mkdir -p /u01/tts_project
    
  4. Accordez les autorisations appropriées sur le répertoire. Par exemple :

    chmod 755 /u01/tts_project
    
  5. Accédez à l'annuaire. Par exemple :

    cd /u01/tts_project

Téléchargement et configuration de l'utilitaire de sauvegarde de tablespaces transportables

Décrit l'utilitaire de sauvegarde de tablespaces transportables fourni par Oracle et les fichiers associés, et explique comment les télécharger à partir du référentiel GitHub.

Oracle fournit cinq fichiers individuels. Il n'existe pas de programme d'installation groupé. Téléchargez les cinq fichiers séparément dans le même répertoire, par exemple le répertoire tts_project précédemment créé sur l'hôte de base de données source. Les fichiers suivants sont fournis, chacun servant un but spécifique :

  • README.md : présentation, instructions de configuration, exemples d'utilisation et considérations connues. Vérifiez d'abord ce fichier.

  • tts-backup-env.txt : fichier de paramètres utilisé pour indiquer les valeurs d'entrée requises pour l'opération de sauvegarde. Vous utilisez le fichier tts-backup-env.txt pour fournir tous les paramètres d'entrée nécessaires au processus de sauvegarde, y compris des détails tels que les informations de connexion à la base de données, les emplacements de banque d'objets, les noms de tablespace et de schéma. tts-backup.py est un script Python qui effectue la sauvegarde des tablespaces transportables à l'aide des paramètres fournis dans le fichier de paramètres tts-backup-env.txt.

  • tts-backup-env-sample.txt : exemple de fichier de paramètres. Copiez et modifiez votre environnement.

  • ttsTemplate.txt : modèle pour les paramètres utilitaires (par exemple, les détails de la base de données source, les cibles OCI Object Storage et l'authentification).

  • tts-backup.py : utilitaire de sauvegarde de tablespaces transportables basé sur Python. Il valide la source, crée la sauvegarde, conditionne les métadonnées requises et télécharge la sauvegarde vers OCI Object Storage. Exécutez cet utilitaire pour sauvegarder la base de données source. Il utilise les paramètres indiqués dans le fichier tts-backup-env.txt pour effectuer la sauvegarde.

Vous pouvez obtenir la dernière version de l'utilitaire de sauvegarde de tablespaces transportables et les fichiers associés à partir des packages GitHub. Pour obtenir des instructions de téléchargement et accéder aux fichiers, reportez-vous au référentiel Transportable-Tablespaces-Backup-Utility.

Avant d'exécuter tts-backup.py, configurez le fichier tts-backup-env.txt. L'utilitaire de sauvegarde de tablespaces transportables lit ce fichier pour effectuer la sauvegarde ; des valeurs de paramètre manquantes ou incorrectes entraîneront l'échec de la sauvegarde.

Les tableaux suivants répertorient chaque paramètre avec sa description et un exemple de valeur :

Nom du paramètre Description Exemple

PROJECT_NAME

Nom du projet de tablespace de transport.

tts_project

DATABASE_NAME

Nom de la base source.

tts_db

TABLESPACES

Liste des noms de tablespace, séparés par des virgules.

Ce paramètre est facultatif et est défini par défaut sur tous les tablespaces définis par l'utilisateur.

emp_tablespace, dept_tablespace, cust_tablespace

SCHEMAS

Liste des noms de schéma, séparés par des virgules.

Ce paramètre est facultatif et est défini par défaut sur tous les schémas non SYS.

SALES, HR

Paramètres de connexion de base de données:

Nom du paramètre Description Exemple

HOSTNAME

Nom de l'hôte de la base source.

db1

LSNR_PORT

Port du processus d'écoute de la base de données source.

1521

DB_SVC_NAME

Nom du service Database pour la connexion à la base source.

tts_db

ORAHOME

Valeur du répertoire de base Oracle sur le serveur qui contient la base de données source.

/opt/oracle/product/19c/dbhome_1

DBUSER

Nom d'utilisateur pour la connexion à la base source. Le nom utilisateur fourni doit disposer des privilèges SYSDBA.

bkp_user

DBPASSWORD

Mot de passe pour la connexion à la base source.

Le mot de passe fourni sera ignoré. Vous serez invité à saisir le mot de passe manuellement lors de l'exécution du script de l'utilitaire de sauvegarde.

NA

DB_VERSION

Version source de la base de données. Les versions prises en charge sont Oracle Database 19c ou une version ultérieure.

19c

Paramètres OCI Object Storage Service (OSS) : ces paramètres sont requis uniquement lors de l'utilisation d'OCI Object Storage Service (OSS) pour stocker la sauvegarde et les métadonnées.

Nom du paramètre Description Exemple

TTS_BACKUP_URL

URI de bucket OCI Object Storage : destination permettant de stocker la sauvegarde de données.

https://objectstorage.us-ashburn-1.oraclecloud.com/n/namespace/b/bucketname

TTS_BUNDLE_URL

URI de bucket OCI Object Storage : destination permettant de stocker la sauvegarde de métadonnées.

https://objectstorage.us-ashburn-1.oraclecloud.com/n/namespace/b/bucketname

OCI_INSTALLER_PATH

Emplacement oci_install.jar permettant de télécharger le portefeuille et d'importer tous les certificats.

Ce paramètre est facultatif et correspond par défaut au répertoire en cours.

/home/oracle/opc_installer/oci_installer/oci_install.jar

CONFIG_FILE

Chemin d'accès au fragment de code du fichier de configuration qui inclut les informations d'authentification de base.

/home/oracle/OCI_CONFIG/config

COMPARTMENT_OCID

OCID de compartiment des buckets OCI Object Storage.

ocid1.compartment.oc1..xxxxx

OCI_PROXY_HOST

Serveur proxy HTTP

Ce paramètre est facultatif.

proxy.company.com

OCI_PROXY_PORT

Port de connexion au serveur proxy HTTP

Ce paramètre est facultatif.

80

Paramètres de clés de cryptage transparent des données (TDE) : cette entrée n'est requise que si un ou plusieurs tablespaces sont cryptés à l'aide de Transparent Data Encryption (TDE).

Nom du paramètre Description

TDE_WALLET_STORE_PASSWD

Mot de passe de banque de portefeuille TDE (Transparent Data Encryption)

Le mot de passe fourni sera ignoré. Vous serez invité à saisir le mot de passe manuellement lors de l'exécution du script de l'utilitaire de sauvegarde.

Paramètres de sauvegarde finale :

Nom du paramètre Description Exemple

FINAL_BACKUP

Spécifie une opération non incrémentielle ou pour indiquer que la dernière sauvegarde est une opération incrémentielle.

Indiquez TRUE pour effectuer une sauvegarde complète (non incrémentielle).

Indiquez FALSE pour effectuer une sauvegarde incrémentielle.

La dernière opération de sauvegarde dans la séquence incrémentielle doit être exécutée avec FINAL_BACKUP=TRUE pour garantir que les métadonnées sont exportées.

TRUE

(Facultatif) Paramètres de performance :

Nom du paramètre Description

PARALLELISM

Nombre de canaux à employer pour la sauvegarde.

CPU_COUNT

Indique le nombre d'UC à utiliser à partir de l'instance lorsque le paramètre PARALLELISM n'est pas fourni.

Installation du module Oracle Database Cloud Backup pour OCI

Explique comment télécharger et installer le module Oracle Database Cloud Backup pour OCI sur votre serveur de base de données.

Le module Oracle Database Cloud Backup pour OCI vous permet d'effectuer des sauvegardes et des restaurations avec OCI Object Storage à l'aide d'Oracle Recovery Manager (RMAN). L'installation et l'utilisation du module nécessitent vos informations d'identification Oracle Cloud. Le module installé est utilisé par l'utilitaire de sauvegarde de tablespaces transportables pour stocker en toute sécurité les certificats et les clés d'authentification dans un portefeuille Oracle. Le portefeuille est utilisé pour effectuer une sauvegarde et une restauration RMAN avec OCI Object Storage.

Téléchargez le module à partir d'Oracle Technology Network (OTN), puis reportez-vous à Installation du module Oracle Database Cloud Backup pour OCI pour connaître les étapes d'installation.

Configurer le stockage pour le transport

Présente les étapes de configuration du stockage et de l'accès pour les opérations de tablespace transportable.

Pour effectuer une sauvegarde de tablespace transportable, vous devez configurer le stockage afin de stocker les fichiers de sauvegarde et les métadonnées associées. L'emplacement de stockage sert de référentiel intermédiaire pour le transport. Vous devez créer deux buckets Object Storage <tts_data_bucket> et <tts_metadata_bucket>.

Configurer le bucket OCI Object Storage
  1. Se connecter à la console OCI

    Connectez-vous au console Oracle Cloud.

    Pour plus d'informations, reportez-vous à Connexion à la console OCI.

  2. Création de buckets Object Storage

    Pour obtenir des étapes détaillées de création de buckets Object Storage, reportez-vous à Création d'un bucket Object Storage.

Effectuer une sauvegarde de tablespace sur la base de données source : Etapes et exemple

La liste suivante récapitule le processus de transport d'un tablespace. Les détails de chaque tâche sont fournis dans l'exemple suivant.

  • Sélectionnez un ensemble autonome de tablespaces.

  • Placez les tablespaces en mode READ-ONLY pour une opération non incrémentielle ou pour une sauvegarde finale dans une opération incrémentielle.

    Un ensemble de tablespaces transportables (ou ensemble transportable) se compose de fichiers de données pour l'ensemble de tablespaces transportés et d'un fichier d'export contenant des informations structurelles (métadonnées) pour l'ensemble de tablespaces.

Exemple

Les procédures de transport d'un tablespace sont illustrées dans l'exemple suivant. Cet exemple suppose l'existence des fichiers de données et des tablespaces suivants :

Tablespace Fichier de données

SALES_1

/u01/app/oracle/oradata/salesdb/sales_101.dbf

SALES_2

/u01/app/oracle/oradata/salesdb/sales_201.dbf

Tâche 1 : vérifier que les tablespaces sont autonomes

Il peut y avoir des dépendances logiques ou physiques entre les objets de l'ensemble transportable et ceux en dehors de l'ensemble. Vous pouvez uniquement transporter des tablespaces autonomes. Voici quelques exemples de violations de tablespace autonome :
  • Un index dans l'ensemble de tablespaces concerne une table en dehors de l'ensemble de tablespaces.

  • Une table partitionnée est partiellement contenue dans l'ensemble de tablespaces. Le jeu de tablespaces à copier doit contenir toutes les partitions d'une table partitionnée ou aucune des partitions d'une table partitionnée.

  • Une table de l'ensemble de tablespaces contient une colonne LOB qui pointe vers des objets LOB en dehors de l'ensemble de tablespaces.

Pour déterminer si un ensemble de tablespaces est autonome, exécutez la procédure TRANSPORT_SET_CHECK dans le package DBMS_TTS fourni par Oracle. Par exemple :

EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('sales_1,sales_2', TRUE);

Le package vérifie que tous les objets dépendants (tels que les index, les contraintes ou les partitions) existent entièrement dans l'ensemble des tablespaces transportés. Il n'existe aucune dépendance inter-tablespace qui empêcherait le transport.

Après avoir exécuté la procédure, interrogez la vue TRANSPORT_SET_VIOLATIONS pour afficher les violations. Par exemple :
SELECT * FROM TRANSPORT_SET_VIOLATIONS;
Cet exemple répertorie les violations détectées lors d'une vérification de jeu de transport.

Tâche 2 : création de la sauvegarde

Cette tâche suppose que tous les prérequis requis pour cette étape ont déjà été remplis. Pour plus d'informations, reportez-vous à Préparation de l'environnement hôte de la base de données source.

  • Accédez au répertoire Project et ouvrez le fichier de paramètres tts-backup-env.txt. Indiquez l'entrée nécessaire dans le fichier de paramètres. Par exemple :

    [DEFAULT]
    ...
    
    PROJECT_NAME=tts_project
    DATABASE_NAME=orclpdb1
    TABLESPACES=sales_1,sales_2
    SCHEMAS=SALES
    ...
    
    HOSTNAME=<host>
    LSNR_PORT=1521
    DB_SVC_NAME=tts_db
    ORAHOME=/opt/oracle/product/19c/dbhome_1
    DBUSER=USER
    DB_VERSION=19c
    
    ...
    
    TTS_BACKUP_URL=https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_data_bucket
    TTS_BUNDLE_URL=https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket
    OCI_INSTALLER_PATH=/home/oracle/opc_installer/oci_installer/oci_install.jar
    CONFIG_FILE=/home/oracle/OCI_CONFIG/config
    COMPARTMENT_OCID=ocid1.compartment.oc1..xxxxx
    OCI_PROXY_HOST=proxy.company.com
    OCI_PROXY_PORT=80
    
    ...
  • Une fois que vous avez configuré le fichier de paramètres, vous pouvez éventuellement exécuter à sec le script tts-backup.py. L'exécution d'une simulation permet de vérifier que l'hôte de la base de données source est correctement configuré et prêt pour l'opération de tablespace transportable. Ce processus vérifie les prérequis manquants, vérifie la connectivité à la destination de stockage désignée et s'assure que tous les paramètres requis sont définis correctement. L'exécution d'une simulation avant le démarrage de la sauvegarde réelle permet d'identifier et de résoudre les problèmes potentiels à l'avance, ce qui réduit le risque d'erreurs pendant l'opération de tablespace transportable.

    Exécutez la commande suivante pour effectuer le test de la sauvegarde. Indiquez le mot de passe de l'utilisateur de base de données qui effectue la sauvegarde. Le mot de passe de la banque de portefeuille TDE n'est requis que si des tablespaces sont cryptés :
    $ python3 /u01/tts_project/tts-backup.py --DRY_RUN=TRUE

    Vous serez invité à saisir le mot de passe de la base de données et, si nécessaire, le mot de passe TDE.

  • Une fois l'exécution sèche terminée et les erreurs rencontrées, exécutez le script tts-backup.py pour lancer la sauvegarde de la base de données source.

    $ python3 /u01/tts_project/tts-backup.py

    Vous serez invité à saisir le mot de passe de la base de données et, si nécessaire, le mot de passe TDE.

    Cet exemple exécute le script Python de l'utilitaire de sauvegarde de tablespaces transportables pour sauvegarder la base de données source. En fonction de la valeur du paramètre FINAL_BACKUP, la sauvegarde peut être incrémentielle ou non incrémentielle.

    Le paramètre Project_Directory indique le chemin d'accès complet au répertoire dans lequel sont stockés l'utilitaire de sauvegarde de tablespaces transportables (tts-backup.py) et le fichier de paramètres (tts-backup-env.txt).

    Remarque

    Assurez-vous que le fichier tts-backup-env.txt est configuré avec les entrées correctes (telles que les détails OCI Object Storage, les URL de bucket et les paramètres de base de données) avant d'exécuter la commande. Le script tts-backup.py valide les entrées, effectue des vérifications sur la base de données source, puis lance le processus de sauvegarde. Si FINAL_BACKUP est défini sur TRUE, le script exportera les métadonnées du tablespace et du schéma à l'aide de l'utilitaire d'export Data Pump.
  • Une fois le script terminé, il télécharge les sauvegardes de données de tablespace de la base de données source vers le bucket OCI Object Storage. La sauvegarde peut être incrémentielle ou non, selon le type de sauvegarde sélectionné. Une sauvegarde non incrémentielle se compose de toutes les données du tablespace à un moment donné, ce qui fournit une sauvegarde complète pour l'opération de restauration. Une sauvegarde incrémentielle consiste en une sauvegarde de niveau 0, qui sert de ligne de base, et une ou plusieurs sauvegardes incrémentielles ultérieures (niveau 1), chacune incluant les modifications apportées depuis la sauvegarde précédente. Toutefois, lors de la restauration à partir de sauvegardes incrémentielles, vous devez appliquer la sauvegarde de niveau 0 et toutes les sauvegardes incrémentielles ultérieures dans l'ordre afin de garantir la cohérence des données.

    Le script crée également un groupe de métadonnées de tablespaces transportables compressé contenant les métadonnées nécessaires et, le cas échéant, les fichiers de portefeuille, et le télécharge vers le bucket de métadonnées OCI Object Storage.

    Exemples d'URL pour la sauvegarde non incrémentielle :
    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_bkp.tgz

    Exemples d'URL pour la sauvegarde incrémentielle :

    Notez que chaque URL inclut le niveau de sauvegarde incrémentielle dans son nom de groupe de métadonnées, par exemple, ⁇ level_0, ⁇ level_1 ou ⁇ final_bkp. Vous pouvez ainsi identifier et référencer rapidement chaque jeu de sauvegarde au cours du processus de restauration. Veillez à appliquer chaque sauvegarde incrémentielle dans l'ordre, en commençant par la sauvegarde level 0 et en passant par chaque sauvegarde suivante jusqu'à la sauvegarde finale.
    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_level_0.tgz
    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_level_1.tgz

    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_level_n.tgz
    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_final_bkp.tgz

Transport de tablespaces vers une base de données d'IA autonome

Explique comment migrer des données vers une base de données d'IA autonome à l'aide de tablespaces transportables.

Le processus de migration des tablespaces transportables sur la base de données Autonomous AI cible varie selon que la sauvegarde de tablespace à partir de la base de données source est incrémentielle ou non incrémentielle.

Remarque

Le transport de tablespaces vers une base de données Autonomous AI n'est pris en charge que lors du provisionnement d'une nouvelle instance de base de données Autonomous AI.

Etant donné que l'URL du groupe de métadonnées de tablespace transportable doit être téléchargée à partir d'OCI Object Storage, vous devez configurer des groupes et des stratégies dynamiques qui autorisent l'accès à OCI Object Storage à l'aide d'un principal de ressource. La configuration d'un principal de ressource est requise pour télécharger en toute sécurité le groupe de métadonnées Tablespaces transportables sur la base de données Autonomous AI cible. Pour plus d'informations, reportez-vous à Prérequis.

Transport utilisant une sauvegarde de tablespace non incrémentielle de la base de données source

Avec une sauvegarde de tablespace source non incrémentielle (complète), le groupe de métadonnées inclut l'export Data Pump du tablespace et des métadonnées de schéma. Pendant le provisionnement de la base de données Autonomous AI, vous fournissez l'URL du groupe de métadonnées (dans la zone de texte URI de bucket Object Storage du fichier ZIP de tablespace de la section Migration sous Options avancées) pour importer les tablespaces à partir de la sauvegarde du tablespace source. Le processus de provisionnement restaure la sauvegarde du tablespace et importe les métadonnées du tablespace et du schéma dans la base de données.

Par exemple :


Description de l'image adbs_transportable_tablespace_provisioning.png
Description de l'image adbs_transportable_tablespace_provisioning.png

Pour obtenir des étapes détaillées afin de provisionner une base de données d'IA autonome, reportez-vous à Provisionnement d'une instance de base de données d'IA autonome.

Transport via une sauvegarde incrémentielle de tablespace de la base de données source

Avant de transférer une base de données Autonomous AI, notez les points suivants :
  • Une sauvegarde incrémentielle de tablespace de niveau 0 de la base de données source ne peut être appliquée que lorsque vous provisionnez une base de données Autonomous AI ; elle ne peut pas être appliquée à une base de données Autonomous AI existante.

  • Lors du provisionnement, l'application de la sauvegarde de niveau 0 restaure uniquement les données de sauvegarde RMAN de la base de données source vers la base de données cible. Aucun tablespace, schéma ou objet de base de données n'est créé à ce stade.

  • Après le provisionnement, vous pouvez appliquer les sauvegardes incrémentielles de tablespace de niveau 1 suivantes de la base de données source. Les sauvegardes incrémentielles de niveau 1 et suivantes ne peuvent être appliquées que si la sauvegarde de tablespace de sauvegarde de niveau 0 à partir de la base de données source a été appliquée lors du provisionnement. Vous devez appliquer ces sauvegardes incrémentielles dans l'ordre dans lequel elles ont été créées. Chaque sauvegarde incrémentielle met à jour la sauvegarde RMAN sur la base de données cible. Toutefois, les tablespaces et les objets de schéma ne sont pas encore créés.

  • Terminez l'opération de tablespace transportable en appliquant la sauvegarde incrémentielle finale. Cette dernière étape restaure tous les tablespaces et les objets de base de données associés sur la base de données cible.

  • Convertissez les tablespaces en mode READ WRITE selon vos besoins.

Provisionnez la base de données Autonomous AI à l'aide de la sauvegarde de niveau 0 :

Commencez par provisionner votre base de données Autonomous AI avec la sauvegarde de tablespace de niveau 0 de la base de données source. Cette opération provisionne la base de données et restaure la sauvegarde initiale de niveau 0 sur la base de données. Pour plus d'informations, reportez-vous à Provisionnement d'une instance de base de données Autonomous AI.

Appliquez les sauvegardes incrémentielles suivantes (niveau 1) :

Une fois la base de données provisionnée et la sauvegarde de niveau 0 des tablespaces source restaurée, appliquez les sauvegardes incrémentielles (de niveau 1) dans l'ordre.

Etapes de mise à jour de la base de données Autonomous AI cible avec des sauvegardes incrémentielles :

  • Effectuez les étapes prérequises suivantes, le cas échéant :

    • Ouvrez la console d'Oracle Cloud Infrastructure en cliquant sur icône de navigation en regard du nom cloud.

    • Dans le menu de navigation de gauche d'Oracle Cloud Infrastructure, cliquez sur Oracle Database, puis sur Base de données AI autonome.

    • Sur la page Base de données d'IA autonome, sélectionnez votre base de données d'IA autonome dans les liens sous la colonne Nom d'affichage.

      Pour appliquer une sauvegarde de tablespace incrémentielle ultérieure à partir de la base de données source sur la base de données Autonomous AI cible, procédez comme suit :

      • Dans la liste déroulante Actions supplémentaires, sélectionnez Migrer les données.

        La page Migrer les données apparaît.

        Remarque

        L'option Migrer les données n'est disponible que pour les bases de données qui ont effectué un import de niveau 0 lors du provisionnement et qui nécessitent des imports de sauvegarde incrémentiels supplémentaires pour terminer l'opération de tablespace transportable après le provisionnement.
      • Sur la page Migrer les données, activez l'option Importer le tablespace transportable. Lorsque vous activez la bascule, un champ de fichier URI de bucket Object Storage du fichier ZIP de tablespace apparaît. Entrez l'URL du groupe de métadonnées de tablespace transportable dans ce champ.

        Par exemple, pour appliquer la sauvegarde de tablespace de niveau 1 à partir de la base de données source, indiquez l'URL appropriée pour la sauvegarde de tablespace de niveau 1 à partir de la base de données source :


        Description de l'image adbs_transportable_tablespace_incremental.png
        Description de l'image adbs_transportable_tablespace_incremental.png

        ...

        De même, lorsque vous appliquez la sauvegarde finale du tablespace à partir de la base de données source, indiquez l'URL appropriée. Par exemple :


        Description de l'image adbs_transportable_tablespace_incremental_final.png
        Description de l'image adbs_transportable_tablespace_incremental_final.png

      • Cliquez sur Migrer.

        L'état de cycle de vie de la base de données passe à Mise à jour. Une fois la restauration terminée, l'état de cycle de vie passe à Disponible.

Limites relatives aux tablespaces transportables

Répertorie les limites relatives aux tablespaces transportables.

Notez les remarques et limitations suivantes concernant les tablespaces transportables :

  • Le tablespace transportable est pris en charge uniquement lorsque la base de données source est Oracle Database 11g ou une version supérieure et utilise le modèle de calcul ECPU.

  • Le transport de tablespaces vers une base de données Autonomous AI n'est pris en charge que lors du provisionnement d'une nouvelle instance de base de données Autonomous AI.

  • Lorsque vous transportez un tablespace contenant des tables contenant des données TIMESTAMP WITH LOCAL TIME ZONE (TSLTZ) entre des bases de données ayant des fuseaux horaires différents, les tables contenant des données TSLTZ ne sont pas transportées. Toutefois, les tables du tablespace qui ne contiennent pas de données TSLTZ sont transportées.

    Vous pouvez déterminer le fuseau horaire d'une base de données à l'aide de la requête suivante :
    SELECT DBTIMEZONE FROM DUAL;

    Vous pouvez modifier le fuseau horaire d'une base de données à l'aide d'une instruction SQL ALTER DATABASE.

  • La version de l'heure d'été de la base de données source doit être identique ou inférieure à la version de l'heure d'été de la base de données Autonomous AI.

  • Les objets avec des objets sous-jacents (tels que des vues matérialisées) ou contenus (tels que des tables partitionnées) ne sont pas transportables, sauf si tous les objets sous-jacents ou contenus figurent dans le jeu de tablespaces.

  • Vous ne pouvez pas transporter les tablespaces contenant XMLType car Oracle XML DB n'est pas pris en charge dans la base de données Autonomous AI.

    L'interrogation suivante renvoie la liste des tablespaces contenant XMLTypes :
    SELECT distinct p.tablespace_name 
        FROM dba_tablespaces p, dba_xml_tables x, dba_users u, all_all_tables t 
        WHERE t.table_name=x.table_name AND t.tablespace_name=p.tablespace_name 
              AND x.owner=u.username;
  • Vous ne pouvez pas transporter le tablespace ou les objets SYSTEM ou SYSAUX appartenant à l'utilisateur SYS.

  • Les bases de données source et de destination doivent utiliser des jeux de caractères de base de données compatibles. Autrement dit, l'une des conditions suivantes doit être remplie :
    • Les jeux de caractères de la base de données source et cible sont identiques.

    • Le jeu de caractères de base de données source est un sous-ensemble strict (binaire) du jeu de caractères de base de données cible.

    • Les bases de données source et cible doivent utiliser des jeux de caractères nationaux compatibles.

  • Les types dont l'interprétation est propre à l'application et opaque dans la base de données (tels que RAW, BFILE et AnyTypes) peuvent être transportés, mais ils ne sont pas convertis dans le cadre de l'opération de transport interplate-forme. Leur structure réelle n'est connue que de l'application, de sorte que l'application doit résoudre tous les problèmes d'endianess une fois que ces types sont déplacés vers la nouvelle plate-forme. Les types et objets qui utilisent ces types opaques, directement ou indirectement, sont également soumis à cette limitation.

  • Le numéro SCN de la base de données source doit être inférieur ou égal au numéro SCN de la base de données Autonomous AI cible vers laquelle le tablespace est transporté.

  • Une instance de base de données Autonomous AI prend en charge un maximum de vingt-quatre (24) tablespaces, y compris les tablespaces utilisateur et système. Une fois les tablespaces système par défaut pris en compte, tels que SYSTEM, SYSAUX, UNDO, TEMP et REDO, dix-neuf (19) tablespaces utilisateur au maximum peuvent être transférés vers une instance de base de données Autonomous AI.

  • La taille cumulée des tablespaces transportés ne doit pas dépasser la taille de base de données maximale prise en charge pour la base de données Autonomous AI.