Migrar Dados Usando Tablespaces Transportáveis

Tablespaces transportáveis permitem a migração eficiente de grandes volumes de dados, movendo tablespaces, incluindo seus dados e metadados, de um banco de dados de origem para um banco de dados de destino sem exigir exportação e importação de dados completas.

Sobre Tablespaces Transportáveis

Tablespaces Transportáveis é um recurso do Oracle Database que permite mover grandes volumes de dados entre bancos de dados com rapidez e eficiência.

Você pode usar Tablespaces Transportáveis com o Autonomous AI Database para mover com eficiência grandes conjuntos de dados, transportando tablespaces inteiros gerenciados pelo usuário de um AI Database não autônomo, como um Oracle Database on-premises ou uma instância do Oracle Database Cloud Service (DBCS), mesmo entre plataformas. A migração de tablespaces completos, em vez de objetos individuais, reduz o tempo de migração e minimiza o tempo de inatividade em comparação com a exportação e importação no nível do objeto. Esse recurso é especialmente útil para migrações de data warehouse, arquivamento de dados históricos e atualizações de banco de dados.

Tablespaces Transportáveis suportam tablespaces criptografados e não criptografados, incluindo o gerenciamento de wallets de TDE (Transparent Data Encryption) quando aplicável. Como o Autonomous AI Database suporta apenas tablespaces bigfile, todos os tablespaces smallfile da origem são convertidos automaticamente em tablespaces bigfile durante a operação de transporte.

Estes são os principais benefícios dos Tablespaces Transportáveis:
  • Portabilidade entre plataformas para movimentação flexível de dados.

  • Migrações mais rápidas do que as exportações e importações convencionais, com tempo de inatividade reduzido.

  • Suporte para arquivamento de dados para manter os ambientes de produção simplificados.

  • Segurança e integridade por meio de validação integrada, tratamento correto de metadados e processamento seguro de wallet de TDE.

Pré-requisitos

Lista os pré-requisitos para o transporte de tablespaces entre bancos de dados.

  • Antes de migrar de um AI Database não autônomo para o Autonomous AI Database, revise as informações em Observações para Usuários que Migram de Outros Oracle Databases. Essas informações descrevem importantes limitações e diferenças comportamentais que podem afetar suas operações de migração e banco de dados pós-migração.

  • Crie um diretório de preparação no host no qual o banco de dados de origem está sendo executado. Use este diretório para fazer download do Utilitário de Backup de Tablespaces Transportáveis e dos arquivos relacionados e do Módulo Oracle Database Cloud Backup para OCI.

  • Faça download do Utilitário de Backup de Tablespaces Transportáveis e de seus arquivos associados no diretório do projeto. Para obter instruções de download e acesso aos arquivos necessários, consulte o repositório Transportable-Tablespaces-Backup-Utility no GitHub.

  • Criar dois buckets do OCI Object Storage: um para armazenar os backups e outro para armazenar metadados, como metadados de esquema e metadados de tablespace. Consulte Criando um Bucket do Serviço Object Storage para obter mais informações.

  • Gerar uma Chave de Assinatura de API; essa chave permite que o Utilitário de Backup de Tablespaces Transportáveis seja autenticado com o OCI Object Storage e confirme se ele tem permissão para gravar backups de tablespaces no banco de dados de origem. Sem ele, as solicitações de backup serão rejeitadas. Consulte Como Gerar uma Chave de Assinatura de API para obter mais informações.

  • Faça download do Oracle Database Cloud Backup Module for OCI e instale-o. Para criar backup de tablespace do banco de dados de origem para o Oracle Cloud Infrastructure, primeiro instale o Oracle Database Cloud Backup Module for OCI. Você faz download do módulo da Oracle Technology Network (OTN) e o instala no seu servidor de banco de dados. Consulte Instalando o Módulo Oracle Database Cloud Backup para OCI para obter mais informações.

  • Defina grupos dinâmicos e políticas para acessar o Oracle Cloud Infrastructure OCI Object Storage com um controlador de recursos. Você precisa do controlador de recursos para fazer download com segurança do pacote de metadados Transport Tablespaces no Autonomous AI Database de destino. Consulte Usar o Controlador de Recursos para Acessar Recursos da Oracle Cloud Infrastructure para obter mais informações.

  • Os tablespaces devem ser independentes. Todos os objetos dependentes devem residir inteiramente dentro do conjunto de tablespaces que estão sendo transportados. Execute a seguinte consulta para verificar a autocontenção:
    EXEC DBMS_TTS.TRANSPORT_SET_CHECK('HR,PROD', TRUE);
    SELECT * FROM TRANSPORT_SET_VIOLATIONS;
    Se nenhuma linha for retornada, os tablespaces serão independentes e poderão ser transportados.
  • Os tablespaces devem ser definidos como o modo READ ONLY ao executar o backup final para transporte, enquanto eles podem permanecer no modo READ WRITE para backups incrementais. Consulte Conceitos de Backup do RMAN para obter mais informações.

  • Os bancos de dados de origem e de destino devem ter os mesmos conjuntos de caracteres ou conjuntos de caracteres compatíveis, e o endianness (ordem de bytes) deve corresponder entre plataformas. Consulte Convertendo Dados no Formato Endian do Sistema Operacional de Destino para obter mais informações.

  • Provisione o banco de dados de destino com espaço de armazenamento suficiente para os arquivos de dados transportados.

Consulte Limitações de Tablespaces Transportáveis para obter uma lista de restrições adicionais.

Workflow de Migração Usando Tablespaces Transportáveis

Esta seção descreve as etapas para executar uma migração de Tablespaces Transportáveis de um AI Database não autônomo para o Autonomous AI Database.

Você não pode transportar diretamente tablespaces de um AI Database não autônomo para um Autonomous AI Database. Para transportar tablespaces, primeiro faça backup dos tablespaces do banco de dados de origem para o local de armazenamento intermediário, o OCI Object Storage. O armazenamento intermediário armazena o backup de dados e metadados e os arquivos da wallet de TDE (Transparent Data Encryption) se a criptografia estiver ativada nos tablespaces transportados. Após o backup, restaure os dados do armazenamento intermediário para o Autonomous AI Database de destino.

O workflow para tablespaces transportáveis inclui as seguintes etapas:

  1. Preparar o host do banco de dados de origem para tablespaces transportáveis
    Antes de executar uma operação de tablespace transportável, conclua várias tarefas de configuração para garantir que o ambiente do banco de dados de origem esteja configurado corretamente:

    Essas etapas preparatórias garantem as configurações necessárias de conectividade, autenticação e armazenamento para uma operação segura de tablespace transportável.

    Consulte Preparar o Ambiente do Host do Banco de Dados de Origem para obter mais informações.

  2. Execute o utilitário de backup na origem

    Use o Utilitário de Backup de Tablespace Transportável fornecido pela Oracle, um script baseado em Python, para criar e fazer upload do backup do tablespace a partir do banco de dados de origem. Este utilitário:

    • Valida a prontidão do ambiente de origem.

    • Usa a exportação do Oracle Data Pump para exportar os metadados.

    • Usa o Oracle Recovery Manager (RMAN) para fazer backup dos dados do tablespace.

    • Saídas de pacotes, partes de backup do RMAN, metadados, arquivos da wallet de TDE, se aplicável, e certificados em um arquivo compactado tar (o pacote de metadados Tablespaces Transportáveis).

    • Faz upload seguro do pacote para o bucket do Object Storage designado.

    • Retorna um URL para o pacote carregado, a ser usado durante o processo de restauração.

    • O utilitário também chama o Oracle Database Cloud Backup Module for OCI para criar uma wallet para chaves de assinatura de API e certificados necessários, garantindo acesso seguro ao OCI Object Storage.

    • Há suporte para backups incrementais e não incrementais. O backup não incremental é um backup completo e único com tablespaces no modo somente leitura. Os backups incrementais começam com um backup de nível 0, seguido por um ou mais backups incrementais (nível 1) e um backup incremental final com tablspaces no modo somente leitura. O workflow de restauração no Autonomous AI Database de destino depende do tipo de backup escolhido.

    Consulte Executar Backup de Tablespace no Banco de Dados de Origem: Etapas e Exemplo para obter mais informações.

  3. Importar tablespaces para o Autonomous AI Database
    O processo para restaurar tablespaces transportáveis no Autonomous AI Database de destino depende do tipo de backup do tablespace no banco de dados de origem:
    • Backups não incrementais

      Aplique o backup não incremental durante o provisionamento do Autonomous AI Database. Isso restaura dados e importa metadados em uma etapa.

    • Backups incrementais

      Comece criando um backup incremental level 0 no banco de dados de origem. Restaure o backup do tablespace level 0 do banco de dados de origem ao provisionar o Autonomous AI Database de destino. Após a criação do banco de dados, aplique os backups incrementais subsequentes de nível 1 em sequência. Durante esse processo, somente as partes de backup do RMAN são copiadas para o banco de dados de destino. Os metadados associados são importados após a aplicação do backup incremental final no Autonomous AI Database de destino.

    Consulte Transportar Tablespaces para o Autonomous AI Database para obter mais informações.

Preparar o Ambiente Host do Banco de Dados de Origem

Descreve as etapas necessárias para configurar o ambiente antes de executar operações de Tablespace Transportável.

Tópicos

Criar um Diretório na Base de Dados de Origem

Mostra as etapas para criar um diretório de projeto no host que está executando o banco de dados de origem. Este diretório serve como uma área de preparação para os arquivos relacionados aos tablespaces transportáveis.

Veja a seguir as etapas para criar um diretório de projeto:

  1. Faça log-in no host do banco de dados de origem no qual o banco de dados Oracle de origem está sendo executado.

  2. Identifique um local apropriado com espaço suficiente para armazenar os arquivos necessários.

  3. Crie o Diretório. Execute o seguinte comando para criar um novo diretório de projeto:
    mkdir -p /u01/tts_project
    
  4. Conceda permissões apropriadas no diretório. Por exemplo:

    chmod 755 /u01/tts_project
    
  5. Navegue até o Diretório. Por exemplo:

    cd /u01/tts_project

Fazer Download e Configurar Utilitário de Backup de Tablespaces Transportáveis

Descreve o Utilitário de Backup de Tablespaces Transportáveis fornecido pela Oracle e os arquivos relacionados e como fazer download deles no repositório GitHub.

A Oracle fornece cinco arquivos individuais; não há um instalador em bundles. Faça download dos cinco arquivos separadamente no mesmo diretório, por exemplo, no diretório tts_project criado anteriormente no host do banco de dados de origem. Os seguintes arquivos são fornecidos, cada um servindo uma finalidade específica:

  • README.md: Visão Geral, instruções de configuração, exemplos de uso e considerações conhecidas. Revise este arquivo primeiro.

  • tts-backup-env.txt: Arquivo de parâmetros usado para especificar os valores de entrada necessários para a operação de backup. Você usa o arquivo tts-backup-env.txt para fornecer todos os parâmetros de entrada necessários para o processo de backup, incluindo detalhes como informações de conexão do banco de dados, locais do Object Store, tablespace e nomes de esquema. tts-backup.py é um script Python que executa o backup de tablespaces transportáveis usando os parâmetros fornecidos no arquivo de parâmetros tts-backup-env.txt.

  • tts-backup-env-sample.txt: Arquivo de parâmetros de amostra. Copie e edite para seu ambiente.

  • ttsTemplate.txt: Modelo para parâmetros do utilitário (por exemplo, detalhes do banco de dados de origem, destinos do OCI Object Storage e autenticação).

  • tts-backup.py: Utilitário de Backup de Tablespaces Transportáveis baseados em Python. Ele valida a origem, cria o backup, empacota os metadados necessários e faz upload do backup para o OCI Object Storage. Execute este utilitário para fazer backup do banco de dados de origem; ele usa os parâmetros especificados no arquivo tts-backup-env.txt para executar o backup.

Você pode obter o Utilitário de Backup de Tablespaces Transportáveis mais recente e os arquivos relacionados dos pacotes GitHub. Consulte o repositório do Transportable-Tablespaces-Backup-Utility para obter instruções de download e acesso aos arquivos.

Antes de executar o tts-backup.py, configure o arquivo tts-backup-env.txt. O Utilitário de Backup de Tablespaces Transportáveis lê este arquivo para executar o backup; valores de parâmetro ausentes ou incorretos farão com que o backup falhe.

As tabelas a seguir listam cada parâmetro com sua descrição e um valor de exemplo:

Nome do Parâmetro Descrição Exemplo

PROJECT_NAME

Nome do projeto de tablespace de transporte.

tts_project

DATABASE_NAME

Nome da base de dados de origem.

tts_db

TABLESPACES

Uma lista separada por vírgulas de nomes de tablespace.

Este parâmetro é opcional e assume como padrão todos os tablespaces definidos pelo usuário.

emp_tablespace, dept_tablespace, cust_tablespace

SCHEMAS

Uma lista de nomes de esquema separados por vírgulas.

Esse parâmetro é opcional e assume como padrão todos os esquemas não-SYS.

SALES, HR

Parâmetros de conexão do banco de dados:

Nome do Parâmetro Descrição Exemplo

HOSTNAME

Nome do host do banco dos dados de origem.

db1

LSNR_PORT

Porta do listener do banco de dados de origem.

1521

DB_SVC_NAME

Nome do serviço de banco e dados para estabelecer conexão com o banco e dados de origem.

tts_db

ORAHOME

O valor do Oracle Home no servidor que contém o banco de dados de origem.

/opt/oracle/product/19c/dbhome_1

DBUSER

Nome de usuário para estabelecer conexão com o banco da origem. O nome de usuário fornecido deve ter os privilégios SYSDBA.

bkp_user

DBPASSWORD

Senha para estabelecer conexão com o banco da origem.

A senha fornecida será ignorada; você será solicitado a inserir a senha manualmente ao executar o script do utilitário de backup.

NA

DB_VERSION

A versão da base de dados de fonte. As versões suportadas são o Oracle Database 19c ou mais recente.

19c

Parâmetros do OCI Object Storage Service (OSS): esses parâmetros só são necessários ao usar o OCI Object Storage Service (OSS) para armazenar o backup e os metadados.

Nome do Parâmetro Descrição Exemplo

TTS_BACKUP_URL

URI do bucket do OCI Object Storage: destino para armazenar o backup de dados.

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

TTS_BUNDLE_URL

URI do bucket do OCI Object Storage: destino para armazenar o backup de metadados.

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

OCI_INSTALLER_PATH

O local do oci_install.jar para fazer download da wallet e importar todos os certificados.

Esse parâmetro é opcional e assume como padrão o diretório atual.

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

CONFIG_FILE

Caminho para o snippet do arquivo de configuração que inclui as informações básicas de autenticação.

/home/oracle/OCI_CONFIG/config

COMPARTMENT_OCID

OCID do Compartimento dos buckets do OCI Object Storage.

ocid1.compartment.oc1..xxxxx

OCI_PROXY_HOST

Servidor proxy HTTP

Esse parâmetro é opcional.

proxy.company.com

OCI_PROXY_PORT

Porta de conexão do servidor proxy HTTP

Esse parâmetro é opcional.

80

Parâmetros de chaves de TDE (Transparent Data Encryption): Essa entrada só será necessária se um ou mais tablespaces forem criptografados usando TDE (Transparent Data Encryption).

Nome do Parâmetro Descrição

TDE_WALLET_STORE_PASSWD

Senha de armazenamento da wallet de TDE (Transparent Data Encryption)

A senha fornecida será ignorada; você será solicitado a inserir a senha manualmente ao executar o script do utilitário de backup.

Parâmetros de backup finais:

Nome do Parâmetro Descrição Exemplo

FINAL_BACKUP

Especifica uma operação não incremental ou indicar que o último backup é uma operação incremental.

Especifique TRUE para executar um backup completo (não incremental).

Especifique FALSE para executar um backup incremental.

A última operação de backup na sequência incremental deve ser executada com FINAL_BACKUP=TRUE para garantir que os metadados sejam exportados.

TRUE

(Opcional) Parâmetros de desempenho:

Nome do Parâmetro Descrição

PARALLELISM

Número de canais a serem usados para backup.

CPU_COUNT

Especifica o número de CPUs a serem usadas na instância quando o parâmetro PARALLELISM não for fornecido.

Instalar o Oracle Database Cloud Backup Module for OCI

Descreve como fazer download e instalar o Oracle Database Cloud Backup Module for OCI no seu servidor de banco de dados.

O Oracle Database Cloud Backup Module for OCI permite executar backup e restauração com o OCI Object Storage usando o Oracle Recovery Manager (RMAN). A instalação e o uso do módulo exigem suas credenciais do Oracle Cloud. O módulo instalado é usado pelo Utilitário de Backup de Tablespaces Transportáveis para armazenar com segurança certificados e chaves de autenticação em uma wallet Oracle. A wallet é usada para executar backup e restauração do RMAN com o OCI Object Storage.

Faça download do módulo da Oracle Technology Network (OTN) e, em seguida, consulte Instalando o Oracle Database Cloud Backup Module for OCI para obter etapas de instalação.

Configurar Armazenamento para Transporte

Mostra as etapas para configurar o armazenamento e o acesso para operações de Tablespace Transportável.

Para executar um backup de Tablespace Transportável, configure o armazenamento para armazenar os arquivos de backup e os metadados associados. O local de armazenamento serve como um repositório intermediário para o transporte. Você precisa criar dois buckets do Object Storage <tts_data_bucket> e <tts_metadata_bucket>.

Configurar o bucket do OCI Object Storage
  1. Acessar a Console do OCI

    Faça login na Console do Oracle Cloud.

    Consulte Acessando a Console do OCI para obter mais informações.

  2. Criando Buckets do Serviço Object Storage

    Consulte Criando um Bucket do Serviço Object Storage para obter etapas detalhadas para criar buckets do serviço Object Storage.

Executar Backup de Tablespace no Banco de Dados de Origem: Etapas e Exemplo

A lista de tarefas a seguir resume o processo de transporte de um tablespace. Os detalhes de cada tarefa são fornecidos no exemplo subsequente.

  • Escolha um conjunto independente de tablespaces.

  • Coloque tablespaces no modo READ-ONLY para operação não incremental ou para backup final em uma operação incremental.

    Um conjunto de tablespaces transportáveis (ou conjunto transportável) consiste em arquivos de dados para o conjunto de tablespaces que estão sendo transportados e um arquivo de exportação contendo informações estruturais (metadados) para o conjunto de tablespaces.

Exemplo

Os procedimentos para transportar um tablespace são demonstrados no exemplo a seguir. Este exemplo pressupõe a existência dos arquivos de dados e tablespaces mostrados abaixo:

Tablespace Arquivo de Dados

SALES_1

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

SALES_2

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

Tarefa 1: Verificar se os tablespaces estão contidos automaticamente

Pode haver dependências lógicas ou físicas entre objetos no conjunto transportável e aqueles fora do conjunto. Você só pode transportar tablespaces que sejam independentes. Alguns exemplos de violações de tablespace independentes são:
  • Um índice dentro do conjunto de tablespaces é para uma tabela fora do conjunto de tablespaces.

  • Uma tabela particionada está parcialmente contida no conjunto de tablespaces. O conjunto de tablespaces que você deseja copiar deve conter todas as partições de uma tabela particionada ou nenhuma das partições de uma tabela particionada.

  • Uma tabela dentro do conjunto de tablespaces contém uma coluna LOB que aponta para LOBs fora do conjunto de tablespaces.

Para determinar se um conjunto de tablespaces é independente, execute o procedimento TRANSPORT_SET_CHECK no pacote fornecido pela Oracle DBMS_TTS. Por exemplo:

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

O pacote verifica se todos os objetos dependentes (como índices, restrições ou partições) existem inteiramente dentro do conjunto de tablespaces que estão sendo transportados. Não existem dependências entre tablespaces que impeçam o transporte bem-sucedido.

Depois de executar o procedimento, consulte a exibição TRANSPORT_SET_VIOLATIONS para exibir quaisquer violações. Por exemplo:
SELECT * FROM TRANSPORT_SET_VIOLATIONS;
Este exemplo lista violações encontradas durante uma verificação do conjunto de transporte.

Tarefa 2: Criar o backup

Esta tarefa pressupõe que todos os pré-requisitos necessários para esta etapa já tenham sido concluídos. Consulte Preparar o Ambiente do Host do Banco de Dados de Origem para obter mais informações.

  • Navegue até o diretório Projeto e abra o arquivo de parâmetros tts-backup-env.txt. Forneça a entrada conforme necessário no arquivo de parâmetros. Por exemplo:

    [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
    
    ...
  • Depois de configurar o arquivo de parâmetros, você poderá executar opcionalmente um dry run do script tts-backup.py. A execução de um dryrun permite validar se o host do banco de dados de origem está configurado corretamente e pronto para a operação de tablespace transportável. Este processo verifica se há pré-requisitos ausentes, verifica a conectividade com o destino de armazenamento designado e garante que todos os parâmetros necessários estejam definidos corretamente. Executar um dryrun antes de iniciar o backup real ajuda a identificar e resolver possíveis problemas com antecedência, reduzindo o risco de erros durante a operação de tablespace transportável.

    Execute o comando a seguir para executar o dryrun do backup. Forneça a senha para o usuário do banco de dados que executa o backup. A senha do armazenamento da wallet de TDE só será obrigatória se quaisquer tablespaces forem criptografados:
    $ python3 /u01/tts_project/tts-backup.py --DRY_RUN=TRUE

    Você será solicitado a informar a senha do banco de dados e, se necessário, a senha de TDE também.

  • Depois de concluir o dry run e resolver quaisquer erros encontrados, execute o script tts-backup.py para iniciar o backup do banco de dados de origem.

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

    Você será solicitado a informar a senha do banco de dados e, se necessário, a senha de TDE também.

    Este exemplo executa o script Python do Utilitário de Backup de Tablespaces Transportáveis para fazer backup do banco de dados de origem. Dependendo do valor do parâmetro FINAL_BACKUP, o backup pode ser incremental ou não incremental.

    O parâmetro Project_Directory especifica o caminho completo para o diretório onde o Utilitário de Backup de Tablespaces Transportáveis (tts-backup.py) e o arquivo de parâmetros (tts-backup-env.txt) são armazenados.

    Observação

    Certifique-se de que o arquivo tts-backup-env.txt esteja configurado com as entradas corretas (como detalhes do OCI Object Storage, URLs do bucket e parâmetros do banco de dados) antes de executar o comando. O script tts-backup.py valida entradas, executa verificações no banco de dados de origem e, em seguida, inicia o processo de backup. Se FINAL_BACKUP estiver definido como TRUE, o script exportará metadados de tablespace e esquema usando o utilitário de exportação do Data Pump.
  • Após a conclusão bem-sucedida do script, ele faz upload dos backups de dados do tablespace do banco de dados de origem para o bucket do OCI Object Storage. O backup pode ser incremental ou não incremental, dependendo do tipo de backup selecionado. Um backup não incremental consiste em todos os dados do tablespace em um ponto específico do tempo, fornecendo um backup completo para a operação de restauração. Um backup incremental consiste em um backup de nível 0, que serve como linha de base, e um ou mais backups incrementais subsequentes (nível 1), cada um incluindo alterações desde o backup anterior. No entanto, ao restaurar de backups incrementais, você deve aplicar o backup de nível 0 e todos os backups incrementais subsequentes em sequência para garantir a consistência dos dados.

    O script também cria um pacote de metadados de Tablespaces Transportáveis compactados que contém os metadados necessários e, se aplicável, os arquivos da wallet e o faz upload para o bucket de metadados do OCI Object Storage.

    Exemplos de URLs para backup não incremental:
    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_bkp.tgz

    Exemplos de URLs para backup incremental:

    Observe que cada URL inclui o nível de backup incremental no nome do pacote de metadados, por exemplo, ⁇ level_0, ⁇ level_1 ou ⁇ final_bkp. Isso ajuda a identificar e fazer referência rapidamente a cada conjunto de backup durante o processo de restauração. Certifique-se de aplicar cada backup incremental na ordem, começando pelo backup level 0 e passando por cada backup subsequente até o backup final.
    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

Transportar Tablespaces para o Autonomous AI Database

Descreve como migrar dados para o Autonomous AI Database usando Tablespaces Transportáveis.

O processo de migração de Tablespaces Transportáveis no Autonomous AI Database de destino depende de o backup do tablespace do banco de dados de origem ser incremental ou não incremental.

Observação

O transporte de tablespaces para o Autonomous AI Database só é suportado ao provisionar uma nova instância do Autonomous AI Database.

Como o URL do pacote de metadados Tablespace Transportável deve ser baixado do OCI Object Storage, você precisa configurar grupos dinâmicos e políticas que permitam o acesso ao OCI Object Storage usando um controlador de recursos. É necessário configurar um controlador de recursos para fazer download seguro do pacote de metadados Tablespaces Transportáveis no Autonomous AI Database de destino. Consulte Pré-requisitos para obter mais informações.

Transporte usando um backup de tablespace não incremental do banco de dados de origem

Com um backup de tablespace de origem não incremental (completo), o pacote de metadados inclui a exportação do Data Pump do tablespace e dos metadados do esquema. Durante o provisionamento do Autonomous AI Database, você fornece o URL do pacote de metadados (na caixa de texto URI do bucket do Object Storage do arquivo zip do tablespace na seção Migração em Opções Avançadas) para importar os tablespaces do backup do tablespace de origem. O processo de provisionamento restaura o backup do tablespace e importa os metadados do tablespace e do esquema para o seu banco de dados.

Por exemplo:


Veja a seguir a descrição da ilustração adbs_transportable_tablespace_provisioning.png
Descrição da ilustração adbs_transportable_tablespace_provisioning.png

Para obter etapas detalhadas para provisionar um Autonomous AI Database, consulte Provisionar uma Instância do Autonomous AI Database.

Transporte usando um backup de tablespace incremental do banco de dados de origem

Antes de transportar a restauração de um Autonomous AI Database, observe o seguinte:
  • Um backup incremental de tablespace de nível 0 do banco de dados de origem só pode ser aplicado quando você está provisionando um Autonomous AI Database; ele não pode ser aplicado a um Autonomous AI Database existente.

  • A aplicação do backup de nível 0 durante o provisionamento só restaura os dados de backup do RMAN do banco de dados de origem para o seu banco de dados de destino; nenhum tablespaces, esquema ou objeto de banco de dados é criado nesse estágio.

  • Após o provisionamento, você pode aplicar backups incrementais de tablespace de nível 1 subsequentes do banco de dados de origem. Os backups incrementais de nível 1 e subsequentes só poderão ser aplicados se o backup do tablespace de backup de nível 0 do banco de dados de origem tiver sido aplicado durante o provisionamento. Você deve aplicar esses backups incrementais na mesma ordem em que foram criados. Cada backup incremental atualiza o backup do RMAN no banco de dados de destino; no entanto, tablespaces e objetos de esquema ainda não foram criados.

  • Conclua a operação de tablespace transportável aplicando o backup incremental final. Esta etapa final restaura todos os tablespaces e objetos de banco de dados associados no seu banco de dados de destino.

  • Converta os tablespaces para o modo READ WRITE conforme necessário.

Provisione o Autonomous AI Database usando o backup de nível 0:

Comece provisionando o Autonomous AI Database com o backup do tablespace de nível 0 do banco de dados de origem. Esta operação provisiona o banco de dados e restaura o backup inicial de nível 0 no banco de dados. Consulte Provisionar uma Instância do Autonomous AI Database para obter mais informações.

Aplique backups incrementais subsequentes (nível 1):

Depois que o banco de dados for provisionado e o backup de nível 0 dos tablespaces de origem for restaurado, aplique todos os backups incrementais (nível 1) em sequência.

Etapas para atualizar seu Autonomous AI Database de destino com backups incrementais:

  • Execute as seguintes etapas de pré-requisito conforme necessário:

    • Abra a Console do Oracle Cloud Infrastructure clicando no ícone de navegação ao lado da Nuvem.

    • No menu de navegação esquerdo do Oracle Cloud Infrastructure, clique em Oracle Database e depois clique em Autonomous AI Database.

    • Na páginas do Autonomous AI Database, selecione seu Autonomous AI Database nos links na coluna Nome para exibição.

      Para aplicar o backup incremental subsequente do tablespace do banco de dados de origem no Autonomous AI Database de destino, siga estas etapas:

      • Na lista drop-down Mais ações, selecione Migrar Dados.

        Isso mostra a página Migrar Dados.

        Observação

        A opção Migrar dados só está disponível para bancos de dados que concluíram uma importação de nível 0 durante o provisionamento e exigem importações adicionais de backup de tablespace incremental para concluir a operação de tablespace transportável após o provisionamento.
      • Na página Migrar Dados, ative a alternância Importar tablespace transportável. Quando você ativa a alternância, um campo de arquivo URI do Bucket do Object Storage do zip do tablespace é exibido. Insira o URL do pacote de metdata do Tablespace Transportável neste campo.

        Por exemplo, para aplicar o backup do tablespace de nível 1 do banco de dados de origem, especifique o URL apropriado para o backup do tablespace de nível 1 do banco de dados de origem:


        Veja a seguir a descrição da ilustração adbs_transportable_tablespace_incremental.png
        Descrição da ilustração adbs_transportable_tablespace_incremental.png

        ...

        Da mesma forma, ao aplicar o backup do tablespace final do banco de dados de origem, forneça o URL apropriado. Por exemplo:


        Veja a seguir a descrição da ilustração adbs_transportable_tablespace_incremental_final.png
        Descrição da ilustração adbs_transportable_tablespace_incremental_final.png

      • Clique em Migrar.

        O estado do Ciclo de Vida do banco de Dados muda para Atualizando. Após a conclusão da restauração, o estado do Ciclo de Vida muda para Disponível.

Limitações em Tablespaces Transportáveis

Lista as limitações do tablespace transportável.

Observe as seguintes observações e limitações para tablespaces transportáveis:

  • O tablespace transportável só é suportado quando o banco de dados de origem é o Oracle Database 11g ou superior e usa o modelo de computação ECPU.

  • O transporte de tablespaces para o Autonomous AI Database só é suportado ao provisionar uma nova instância do Autonomous AI Database.

  • Quando você transporta um tablespace contendo tabelas com dados TIMESTAMP WITH LOCAL TIME ZONE (TSLTZ) entre bancos de dados com fusos horários diferentes, as tabelas com os dados TSLTZ não são transportadas. No entanto, as tabelas do tablespace que não contêm dados TSLTZ são transportadas.

    Você pode determinar o fuso horário de um banco de dados com a seguinte consulta:
    SELECT DBTIMEZONE FROM DUAL;

    Você pode alterar o fuso horário de um banco de dados com uma instrução SQL ALTER DATABASE.

  • A versão do Horário de Verão (DST) do banco de dados de origem deve ser igual ou inferior à versão do DST do Autonomous AI Database.

  • Objetos com objetos subjacentes (como views materializadas) ou objetos contidos (como tabelas particionadas) não são transportáveis, a menos que todos os objetos subjacentes ou contidos estejam no conjunto de tablespaces.

  • Não é possível transportar tablespaces que contenham XMLType porque o Oracle XML DB não é suportado no Autonomous AI Database.

    A consulta a seguir retorna uma lista de tablespaces que contêm 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;
  • Não é possível transportar o tablespace SYSTEM ou SYSAUX ou objetos pertencentes ao usuário SYS.

  • Os bancos de dados de origem e de destino devem usar conjuntos de caracteres de banco de dados compatíveis. Ou seja, uma das seguintes afirmações deve ser verdadeira:
    • Os conjuntos de caracteres do banco de dados do banco de dados de origem e de destino são iguais.

    • O conjunto de caracteres do banco de dados de origem é um subconjunto estrito (binário) do conjunto de caracteres do banco de dados de destino.

    • Os bancos de dados de origem e de destino devem usar conjuntos de caracteres nacionais compatíveis.

  • Tipos cuja interpretação é específica do aplicativo e opaca para o banco de dados (como RAW, BFILE e AnyTypes) podem ser transportados, mas não são convertidos como parte da operação de transporte entre plataformas. Sua estrutura real é conhecida apenas pelo aplicativo, portanto, o aplicativo deve resolver quaisquer problemas de endianidade após esses tipos serem movidos para a nova plataforma. Tipos e objetos que usam esses tipos opacos, direta ou indiretamente, também estão sujeitos a essa limitação.

  • O SCN do banco de dados de origem deve ser menor ou igual ao SCN do Autonomous AI Database de destino para o qual o tablespace está sendo transportado.

  • Uma instância do Autonomous AI Database suporta no máximo 24 (vinte e quatro) tablespaces, incluindo tablespaces de usuário e sistema. Após a contabilização dos tablespaces padrão do sistema, como SYSTEM, SYSAUX, UNDO, TEMP e REDO; no máximo dezenove (19) tablespaces de usuário podem ser transportados para uma instância do Autonomous AI Database.

  • O tamanho cumulativo dos tablespaces transportados não deve exceder o tamanho máximo do banco de dados suportado para o Autonomous AI Database.