Migre para o Autonomous AI Database

  • O Oracle Zero Downtime Migration (ZDM) pode ser usado para facilitar migrações complexas de banco de dados com disponibilidade máxima e interrupção mínima. Ele usa as melhores práticas da Arquitetura de Disponibilidade Máxima (MAA) da Oracle durante o processo de migração. Este tópico descreve o uso do Oracle Zero Downtime Migration para migrações para o Autonomous AI Database. Esse recurso suporta a movimentação de bancos de dados em diferentes plataformas e versões, permitindo a implementação em ambientes multicloud.

    Ambiente de Destino: Autonomous AI Database

    O Autonomous AI Database é um serviço de banco de dados que gerencia automaticamente tarefas como provisionamento, segurança, aplicação de patches e ajuste. Essa automação reduz os custos operacionais e ajuda a evitar erros humanos. Quando você implanta o Autonomous AI Database no Oracle AI Database@Google Cloud, ele usa uma conexão nativa com baixa latência para aplicativos do Google Cloud. Essa configuração ajuda a manter o alto desempenho e facilita a integração com outros serviços do Google Cloud.

    Principais Benefícios do Uso do Oracle Zero Downtime Migration para Migrações de Autonomous AI Database

    Tabela 1-1

    Recurso Descrição
    Simplicidade Operacional O Oracle Zero Downtime Migration fornece um processo de orquestração completo, automatizado e simplificado, geralmente descrito como uma experiência de botão único, para reduzir a complexidade das migrações em toda a frota.
    Risco mínimo A ferramenta se alinha às melhores práticas da MAA e inclui verificações inteligentes de pré-validação para reduzir o risco de falhas de migração.
    Alta Flexibilidade Os caminhos de migração lógica do Oracle Zero Downtime Migration suportam a movimentação de bancos de dados entre versões e plataformas de banco de dados idênticas e diferentes, permitindo a modernização durante a migração.
    Desempenho Integrado Você pode se beneficiar do gerenciamento superior e automatizado do Autonomous AI Database combinado com o desempenho de rede de baixa latência fornecido pela infraestrutura do Oracle AI Database@Google Cloud.
    Custo-benefício O Oracle Zero Downtime Migration está disponível sem custo, permitindo que as organizações aproveitem sua automação avançada sem uma despesa adicional de licenciamento.

    Workflows de Migração Suportados

    O Oracle Zero Downtime Migration oferece suporte a dois workflows projetados para ajudar a mover bancos de dados entre diferentes ambientes de origem e destino.
    1. Migração On-line Lógica
      • Perfil de tempo de inatividade: mínimo (quase zero).
      • Compatibilidade: Suporta migrações entre as mesmas versões e plataformas de banco de dados ou diferentes.
      • Processo: usa a exportação e a importação do Oracle Data Pump para criar o banco de dados de destino. O Servidor NFS Gerenciado do Google Cloud fornece um compartilhamento de arquivos NFS para armazenar os arquivos de dump do Oracle Data Pump. O Oracle GoldenGate mantém os bancos de dados de origem e destino em sincronia para obter uma migração com tempo de inatividade mínimo.
    2. Migração Off-line Lógica
      • Perfil de Tempo de Inatividade: Off-line (Requer uma janela de manutenção de aplicativo planejada).
      • Compatibilidade: Suporta migrações entre as mesmas versões e plataformas de banco de dados ou diferentes.
      • Processo: usa a exportação e a importação do Oracle Data Pump para criar o banco de dados de destino. O Servidor NFS Gerenciado do Google Cloud fornece um compartilhamento de arquivos NFS para armazenar os arquivos de dump do Oracle Data Pump.
    Observação

    Os métodos de migração lógica são recomendados para migrar para o Autonomous AI Database porque suportam a movimentação de dados em diferentes plataformas e versões de banco de dados, o que geralmente é necessário ao usar um serviço de nuvem gerenciado.

  • Em configurações multicloud, você precisa transferir dados entre diferentes provedores de nuvem ou mantê-los em um ambiente ao consultá-los ou acessá-los de outro. O pacote PL/SQL DBMS_CLOUD do Oracle Database simplifica isso permitindo o acesso direto a serviços de armazenamento de objetos, como o Oracle Cloud Infrastructure (OCI) Object Storage e o Google Cloud Storage, e permitindo que os dados sejam consultados por meio de tabelas externas ou carregados diretamente em tabelas de banco de dados.

    Este documento fornece um guia passo a passo sobre como acessar e importar dados do Google Cloud Storage para um Oracle Database.

    Visão Geral da Solução

    Esta solução demonstra como um Google Cloud Storage (GCS) pode ser usado como uma zona de destino para backups e arquivos.

    O pacote Oracle DBMS_CLOUD permite consultar dados diretamente dos buckets do Google Cloud Storage (Parquet, CSV, JSON etc.) como tabelas externas sem movê-los, uni-los em tempo real com tabelas Oracle para análise unificada, em massa importe arquivos para o Oracle Database com eficiência com carregamento paralelo, minimize a duplicação de dados e os custos em configurações multicloud e ofereça suporte a cenários híbridos como a combinação de dados de ERP com logs armazenados em GCS, fluxos IoT ou recursos de ML para obter insights e relatórios mais rápidos. A arquitetura ilustra um workflow no qual a origem é um Oracle Database em execução no Linux ou no Oracle Autonomous AI Database, e o destino é um ambiente do Oracle Database em execução na infraestrutura do Google Cloud. O Google Cloud Storage é usado pelos sistemas de banco de dados de origem e de destino, permitindo que backups ou dumps de exportação do RMAN sejam gravados uma vez e restaurados diretamente, sem etapas adicionais de transferência de arquivos.

    Ao aproveitar o Google Cloud Storage como armazenamento compartilhado, os fluxos de trabalho de migração se beneficiam de um serviço gerenciado que oferece suporte à movimentação de dados com facilidade.

    Esta captura de tela mostra a visão geral da solução.

    Pré-requisitos

    1. Ambiente do Oracle Database

      Origem: plataforma Oracle Database, como Oracle Autonomous AI Database, Oracle RAC ou uma instância standalone do Oracle Database no Linux.

      Destino: Oracle Autonomous AI Database em execução no Oracle AI Database@Google Cloud.

    2. Bucket de Armazenamento do Google Cloud
      • Um bucket que contém o(s) arquivo(s) de dados desse arquivo de dump do Oracle Data Pump
    3. Conectividade de Rede
      • Para o Oracle Database, há suporte para conectividade com a internet ou PrivateLink usando o Oracle Interconnect for Google Cloud.
      • Para o Oracle AI Database@Google Cloud, a conectividade interna na mesma região de nuvem é suportada por padrão.
    4. Credenciais
      • Uma Chave e um Segredo de Acesso do Google Cloud (chave HMAC) com permissões de acesso a bucket.
    1. Configuração
      1. Criar Credenciais de Acesso ao Armazenamento do Google Cloud
        1. No Google Cloud Console, navegue até o Cloud Storage.
        2. Selecione Definições no menu esquerdo e, em seguida, selecione a guia Interoperabilidade.Esta captura de tela mostra como criar uma tecla.
        3. Role para baixo até a seção Chaves de acesso da sua conta de usuário e selecione o botão Criar uma chave para gerar uma Chave de acesso e um Secreto. Anote a Chave de acesso e o Secret, pois eles são necessários para autenticar o acesso ao Oracle Database.Esta captura de tela mostra como criar uma chave.
      2. Determinar URL do Objeto
        1. No Google Cloud Console, navegue até o Cloud Storage.
        2. No menu esquerdo, selecione Buckets e, em seguida, selecione o bucket de destino que você está usando.Esta captura de tela mostra a lista de buckets.
        3. Na página Detalhes do bucket, localize o objeto. Por exemplo, arquivo de exportação do Oracle Data Pump que você deseja importar.
        4. Construa o URL do objeto público no formulário.
          https://<bucket_name>.storage.googleapis.com/<object_name>

          Por exemplo:

          A captura de tela mostra como construir o URL do objeto público.
    2. Configuração do Oracle Database
      1. Criar Credencial da Oracle
        1. Usando o procedimento PL/SQL DBMS_CLOUD.CREATE_CREDENTIAL, crie uma credencial no banco de dados que armazene sua chave e segredo de acesso do GCS:
          BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => '<Credential_Name>', username => '<GCS_Access_Key>', password => '<GCS_Secret>' ); END; /

          Por exemplo:

          BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'GCP_CRED', username => 'GOOGXXXXXXXXXXXX', password => 'xs9njBZ+hykXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' ); END; /
        2. Depois de executar o procedimento PL/SQL, a credencial é armazenada e pronta para uso pelo DBMS_CLOUD. Para obter mais informações sobre os parâmetros, consulte CREATE_CREDENTIAL Procedure.
      2. Verificar Acesso ao Google Cloud Storage
        1. Para garantir que o banco de dados possa acessar seu bucket do Google Cloud Storage, execute o seguinte:
          SELECT object_name FROM dbms_cloud.list_objects( credential_name => 'GCP_CRED', uri => 'https://exadbtest.storage.googleapis.com' );
        2. A saída deve listar o(s) objeto(s), confirmando o acesso bem-sucedido. Por exemplo:
          OBJECT_NAME
          --------------------------------------------------------------------------------
          emp.dmp
          employee.csv
    3. Carregando Dados

      Depois de criar a credencial necessária para o Google Cloud Storage, você pode carregar ou acessar dados no Oracle Database usando qualquer um dos seguintes métodos: procedimento DBMS_CLOUD.COPY_DATA, Oracle Data Pump Import (impdp), DBMS_CLOUD.CREATE_EXTERNAL_TABLE, DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE, a ferramenta de Carregamento do Data Studio (UI no Autonomous AI Database) ou DBMS_CLOUD.CREATE_HYBRID_PART_TABLE para tabelas particionadas híbridas.

      Esta etapa demonstra o DBMS_CLOUD.COPY_DATA, bem como o Oracle Data Pump Import (impdp).

      1. Usando o Procedimento DBMS_CLOUD.COPY_DATA
        1. Crie uma tabela no banco de dados na qual você deseja carregar os dados.
          CREATE TABLE emp (id NUMBER, name VARCHAR2(64));
        2. Importe dados do bucket do Google Cloud Storage para seu Autonomous AI Database.
        3. Especifique o nome da tabela e o nome da credencial do GCP seguido pelo URL do objeto do Google Cloud Storage.
        4. Use o procedimento DBMS_CLOUD.COPY_DATA para carregar dados do bucket do Google Cloud Storage em uma tabela. O parâmetro file_uri_list especifica o caminho para seus arquivos no Google Cloud Storage.
          BEGIN
          
            DBMS_CLOUD.COPY_DATA(
          
              table_name    => 'YOUR_TARGET_TABLE',
          
              credential_name => 'GCP_CRED',
          
              file_uri_list => 'https://exadbtest.storage.googleapis.com/employee.csv', -- Or a list of files
          
              format        => json_object('type' value 'CSV', 'skipheaders' value '1') -- Specify file format options
          
            );
          
          END;
          
          /

          Para obter mais informações sobre os parâmetros, consulte COPY_DATA Procedure.

        5. Depois de importar dados com sucesso do Google Cloud Storage para o Autonomous AI Database, você poderá executar esta instrução e verificar os dados na sua tabela.
          SELECT * FROM emp;
      2. Importar Dados Usando o Data Pump

        O comando de importação pode ser executado no cluster de VMs ou em uma máquina virtual externa com acesso autorizado ao SQL*Plus para o banco de dados de destino.

        1. Crie um arquivo de parâmetros imp_gcp.par com o seguinte conteúdo:
          directory=DATA_PUMP_DIR
          credential=GCP_CRED
          schemas=emp
          remap_tablespace=USERS:DATA
          dumpfile=https://exadbtest.storage.googleapis.com/emp.dmp
        2. Execute a importação do Cluster de VMs ou do Cliente. Certifique-se de que o cliente Oracle esteja instalado e você possa se conectar ao Autonomous AI Database:
          impdp userid=ADMIN@demo_db parfile=imp_gcp.par
        3. Uma execução bem-sucedida carrega os dados no Oracle Database. Exemplo de uma mensagem de conclusão bem-sucedida:
          Job "SYSTEM"."SYS_IMPORT_SCHEMA_01" successfully completed.
  • Em ambientes multicloud, ao usar recursos de vários fornecedores de nuvem, você geralmente lida com a migração de dados entre os ambientes ou mantê-los em um ambiente de nuvem enquanto os acessa de outro. O pacote PL/SQL do Oracle Database DBMS_CLOUD permite anexar e acessar dados em compartilhamentos de arquivos do Google Cloud Filestore (ou importá-los para um Oracle Database). Este documento fornece um guia passo a passo sobre como acessar e importar dados dos compartilhamentos de arquivos do Google Cloud Filestore para um Oracle Database.

    Principais Vantagens para Casos de Uso de Migração e Sistema de Arquivos Compartilhado

    • Escalabilidade e Serviço Gerenciado Camadas de desempenho e dimensionamento de capacidade predefinidos (até 100 TiB) eliminam a necessidade de implantar e gerenciar servidores NFS personalizados.
    • Integração do Oracle Database Suporta NFSv3 e NFSv4.1, permitindo acesso direto de leitura/gravação para o Oracle Data Pump, backups RMAN e preparação de arquivos de banco de dados.
    • Eficiência de Custo O modelo de capacidade somente para pagamento provisionado é adequado para cargas de trabalho de migração temporárias e evita a sobrecarga de infraestrutura autogerenciada.
    • Alta Disponibilidade e Confiabilidade Totalmente gerenciada com redundância zonal ou regional (até 99,99% de SLA regional em Filestore Regional), descarregando patches, failover e manutenção.
    • Segurança Criptografia em repouso e em trânsito, controles de acesso baseados em VPC, regras de firewall e políticas de exportação protegem os dados durante a migração.

    Visão Geral da Solução

    Esta solução demonstra como um compartilhamento de arquivos do Google Cloud Filestore pode ser usado como uma zona de destino para backups do RMAN, simplificando e padronizando o processo de migração do Oracle Database.

    A arquitetura ilustra um workflow no qual a origem é um Oracle Database em execução no Linux ou no Oracle Autonomous AI Database, e o destino é um ambiente do Oracle Database em execução na infraestrutura do Google Cloud. O compartilhamento de arquivos NFS do Filestore é montado e usado pelos sistemas de banco de dados de origem e de destino, permitindo que o RMANbackups seja gravado uma vez e restaurado diretamente, sem etapas adicionais de transferência de arquivos. Ao aproveitar o Google Filestore como armazenamento compartilhado, os fluxos de trabalho de migração se beneficiam de um serviço NFS gerenciado que oferece suporte a operações de backup, restauração e recuperação de RMAN em todos os ambientes.

    Esta captura de tela mostra a visão geral da solução.

    Pré-requisitos

    Os seguintes pré-requisitos são necessários para concluir esta solução:
    • Banco de dados de origem em execução em uma plataforma Oracle Database suportada, como Oracle Autonomous AI Database, Oracle Real Application Clusters ou uma instância do Oracle Database standalone no Linux.
    • Direcionar o Oracle Autonomous AI Database em execução no Oracle AI Database@Google Cloud
    • Compartilhamento de arquivos do Google Cloud Filestore criado e disponível, com uma exportação NFS montada nos hosts de banco de dados de origem e de destino.
    • Conectividade de rede estabelecida entre o ambiente de origem e o Google Cloud, com regras de roteamento e firewall apropriadas para permitir o tráfego NFS e do banco de dados.

    Configurando o Google Cloud Filestore

    1. No console do Google Cloud, navegue até Filestore.
    2. No menu esquerdo, selecione Instâncias.
    3. Selecione o botão Criar Instância e conclua as seguintes subetapas:
      1. Informe um nome exclusivo no campo ID da Instância da instância do Google Cloud Filestore. O ID deve conter letras minúsculas, números e hifens. Deve começar com uma letra.
      2. O campo Descrição é opcional.
      3. Na seção Configurar camada de serviço, selecione uma camada de serviço apropriada com base em seus requisitos de carga de trabalho de migração. Na seção Tipo de instância, escolha seu tipo de instância. O tipo de instância afeta a capacidade, o desempenho, a escalabilidade, a durabilidade e o custo.
      4. Escolha seu Tipo de armazenamento com base em seus requisitos.Esta captura de tela mostra como criar uma instância.
      5. Depois de escolher seu tipo de armazenamento, informe o valor da capacidade no campo Capacidade.
        Para obter melhor desempenho e menor custo de rede, coloque sua instância na mesma região que as VMs que se conectarão a ela. A escolha é permanente.
        1. Selecione o intervalo de Capacidade adequado ao seu sistema de arquivos.
        2. Configure seu desempenho com base em sua carga de trabalho e escala.
      6. Selecione as Região e a Zona em que a instância do Google Cloud Filestore será criada. Isso deve se alinhar à localização da rede dos hosts do banco de dados que acessarão o compartilhamento de arquivos.
      7. Na seção Configurar conexões, selecione a rede e a faixa de endereços que os clientes usarão para acessar sua instância.
        • Na lista drop-down rede VPC, selecione sua VPC.
        • Na seção Intervalo de IP alocado, escolha a opção Usar um intervalo de IP alocado automaticamente (recomendado). Este intervalo de IP será usado para criar sub-redes.
      8. Na seção Configurar seu compartilhamento de arquivos, informe o nome do compartilhamento de arquivos no campo. A escolha é permanente. Você pode usar letras minúsculas, números e sublinhados. O nome do compartilhamento de arquivo deve começar com uma letra. Escolha seu Controle de acesso.Esta captura de tela mostra como criar uma instância.
      9. As seções Criar labels e Tags são opcionais.
      10. Revise suas informações e selecione o botão Criar.Esta captura de tela mostra como criar uma instância.
    4. Depois que a criação estiver concluída, você poderá revisá-la na lista Instâncias.Esta captura de tela mostra como criar uma instância.
    5. Após a criação da instância do Google Cloud Filestore, o compartilhamento de arquivos NFS pode ser montado nos hosts do Oracle Database de origem e destino e usado como uma zona de destino compartilhada para artefatos de migração, como backups de RMAN, exportações do Oracle Data Pump e arquivos de tablespace transportáveis.
    6. Na console do Google Cloud, navegue até Armazenamento de Arquivos e selecione a instância criada anteriormente.
    7. Selecione a guia Visão Geral e role para baixo até a seção Ponto de montagem NFS. Isso fornece o comando de montagem necessário para montar o Google Cloud Filestore na VM do Cliente Linux.Esta captura de tela mostra como obter informações do ponto de montagem NFS.

    Configuração de DNS no OCI

    Para resolver o nome do servidor NFS, crie um registro A no DNS do OCI:

    1. Na página de detalhes do Autonomous Database no Google Cloud Console, clique em Gerenciar no OCI.
    2. Navegue até a rede virtual na nuvem na seção Rede.
    3. Na página de detalhes da rede, clique em Resolvedor de DNS.
    4. Na página de detalhes do resolvedor privado, clique na view privada padrão.
    5. Crie uma nova zona (por exemplo, nfsmount.gcp).
    6. Adicione um registro (por exemplo, nfs.nfsmount.gcp) apontando para o endereço IP real do servidor NFS do Google Cloud Filestore.
    7. Publique as alterações.
    8. Atualize o NSG (Network Security Group) no OCI para permitir o tráfego da VPC em que o servidor NFS reside.
    9. Uma vez concluído, o FQDN do Oracle Database será resolvido para o ponto final NFS do Google Filestore.

    Conceder ACLs de Rede no Autonomous AI Database

    1. Defina a propriedade do banco de dados ROUTE_OUTBOUND_CONNECTIONS como PRIVATE_ENDPOINT para impor que todas as conexões de saída com um host de destino usem as regras de saída do ponto final privado.
      ALTER DATABASE PROPERTY SET ROUTE_OUTBOUND_CONNECTIONS = 'PRIVATE_ENDPOINT';
    2. Use o pacote DBMS_NETWORK_ACL_ADMIN para conceder os privilégios connect e resolve necessários ao usuário do banco de dados ou ao usuário ADMIN para o FQDN da instância do Google Cloud Filestore.
      BEGIN
        DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
          host => 'nfs.nfsmount.gcp', -- Your Filestore FQDN
          ace  => xs$ace_type(
            privilege_list  => xs$name_list('connect', 'resolve'),
            principal_name  => 'YOUR_DB_USER', -- Or 'ADMIN'
            principal_type  => xs_acl.ptype_db
          )
        );
      END;
      /
    3. Assim que as ACLs forem definidas, crie um objeto de diretório na instância do Autonomous AI Database que aponte para a montagem NFS.
      CREATE OR REPLACE DIRECTORY NFS_DIR AS 'nfs_mount';
    4. Anexe o sistema de arquivos NFS usando o seguinte bloco PL/SQL:
      BEGIN
        DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM(
          file_system_name     => 'GCP_NFS',
          file_system_location => 'nfs.nfsmount.gcp:/nfsshare',
          directory_name       => 'NFS_MOUNT',
          description          => 'Attach GCP NFS',
          params               => JSON_OBJECT('nfs_version' VALUE 3)
        );
      END;
      /
    5. Este procedimento cria ou vincula um objeto de diretório de banco de dados. Por exemplo, GCP_NFS para o caminho NFS especificado.

    Acessar os Arquivos

    1. Execute a instrução SQL para verificar se você pode acessar os arquivos no diretório.
      SELECT object_name FROM DBMS_CLOUD.LIST_FILES('NFS_MOUNT');
    2. Depois que o objeto de diretório for criado e associado à montagem NFS do Google Cloud Filestore, você poderá usá-lo em PL/SQL (por exemplo, UTL_FILE), Oracle SQL*Loader, Data Pump ou para criar tabelas externas para leitura ou gravação em arquivos no compartilhamento do Google Cloud Filestore, sujeito aos privilégios de usuário do banco de dados no objeto de diretório.
    Para obter mais informações, consulte os recursos a seguir: