Armazenar arquivos de backup em um bucket do Cloud Storage

O Database Migration Service replica dados de arquivos de backup e de registro de transações do SQL Server que você envia para um bucket do Cloud Storage. Esta página descreve como preparar o bucket para procedimentos de migração e qual estrutura de pastas é necessária para que o Database Migration Service reconheça seus arquivos de backup.

Para preparar um bucket de armazenamento para migração, siga estas etapas:

  1. Crie seu bucket. Use a mesma região em que você pretende criar a instância de destino do Cloud SQL para SQL Server.

    O Database Migration Service é um produto totalmente regional, o que significa que todas as entidades relacionadas à migração (perfis de conexão de origem e destino, jobs de migração, bancos de dados de destino, buckets de armazenamento para arquivos de backup) precisam ser salvas em uma única região.

  2. Crie a estrutura de pastas para armazenar seus arquivos de backup.

    • O Database Migration Service espera uma estrutura de pastas em que cada pasta presente no nível raiz do bucket represente um banco de dados a ser migrado.

    • A pasta de banco de dados precisa ter pelo menos duas pastas: full para o arquivo de backup completo e log para arquivos de backup do registro da transação que você baixa posteriormente, na etapa de carga incremental.

    • A pasta de banco de dados também pode conter uma pasta diff para o arquivo de backup diferencial.

    • Se você usar arquivos de backup completos ou diferenciais divididos, as pastas full ou diff precisam conter outra pasta cujo nome seja um timestamp Unix em segundos.

    Por exemplo, se você usar um único arquivo de backup completo, coloque-o diretamente na pasta full. A mesma regra se aplica ao arquivo de backup diferencial:

    Cloud Storage bucket root/
    |- my-business-database/
    |  |- full/
    |  |  |- full_backup_file
    |  |- diff/
    |  |  |- diff_backup_file
    |  |- log/
    |  |  |- transaction_log_file
    |- my-other-database/
    |  |- full/
    |  |  |- full_backup_file
    |  |- diff/
    |  |  |- diff_backup_file
    |  |- log/
    |  |  |- transaction_log_file
    

    Se você usar arquivos de backup completos divididos, use outra pasta na pasta full. A mesma regra se aplica ao arquivo de backup diferencial:

    Cloud Storage bucket root/
    |- my-business-database/
    |  |- full/
    |  |  |- 1712649600/
    |  |  |  |- my_full_backup_file_stripe1
    |  |  |  |- my_full_backup_file_stripe2
    |  |- diff/
    |  |  |- 1706967833/
    |  |  |  |- firstDiffStripe.bak
    |  |  |  |- other_diff_stripe.diff
    |  |- log/
    |  |  |- transaction_log_file
    |- my-other-database/
    |  |- full/
    |  |  |- 1715250742/
    |  |  |  |- my_full_backup_file_stripe1
    |  |  |  |- my_full_backup_file_stripe2
    |  |- diff/
    |  |  |- 1706967833/
    |  |  |  |- firstDiffStripe.bak
    |  |  |  |- other_diff_stripe.diff
    |  |- log/
    |  |  |- transaction_log_file
    

    Nesses exemplos, o Database Migration Service cria dois bancos de dados na instância de destino do Cloud SQL: my-business-database e my-other-database. Cada banco de dados é preenchido com dados extraídos das pastas full, diff e log individuais.

    É possível misturar as convenções de arquivo único ou dividido para arquivos de backup completos e diferenciais. Os arquivos de backup diferenciais são opcionais. Portanto, também é possível deixar a pasta diff vazia:

    Cloud Storage bucket root/
    |- my-business-database/
    |  |- full/
    |  |  |- full_backup_file
    |  |- diff/
    |  |  |- 1706967833/
    |  |  |  |- firstDiffStripe.bak
    |  |  |  |- other_diff_stripe.diff
    |  |- log/
    |  |  |- transaction_log_file
    |- my-other-database/
    |  |- full/
    |  |  |- 1712649600/
    |  |  |  |- my_full_backup_file_stripe1
    |  |  |  |- my_full_backup_file_stripe2
    |  |- diff/
    |  |  |- diff_backup_file
    |  |- log/
    |  |  |- transaction_log_file
    |- third-database/
    |  |- full/
    |  |  |- full_backup_file
    |  |- log/
    |  |  |- transaction_log_file
    

    Neste exemplo, o third-database não usa um arquivo de backup diferencial para migração. Portanto, ele não tem a pasta diff.

  3. Faça upload dos arquivos de backup para as respectivas pastas:

    • Coloque o arquivo de backup completo na pasta full.
    • Coloque o arquivo de backup diferencial na pasta diff.
    • Coloque os arquivos de registro de transações na pasta log.

    Confira se os arquivos de backup completos, diferenciais e de registro de transações seguem as convenções de nomenclatura exigidas pelo Database Migration Service. Consulte Requisitos de nomenclatura de arquivos de backup.

A seguir