Esta página oferece informações sobre como pode criar cópias de segurança de bases de dados do Spanner.
Para mais informações sobre cópias de segurança, consulte o artigo Vista geral das cópias de segurança. Pode criar cópias de segurança de bases de dados das seguintes formas:
- Usar a Google Cloud consola.
- Usando a Google Cloud CLI.
- Usando as bibliotecas cliente.
- Usando as APIs REST ou RPC.
Antes de começar
-
Para receber as autorizações de que precisa para criar cópias de segurança, peça ao seu administrador que lhe conceda as seguintes funções do IAM na instância:
-
Criar, ver, atualizar e eliminar cópias de segurança:
Administrador de cópias de segurança do Cloud Spanner (
roles/spanner.backupAdmin
) -
Criar e ver cópias de segurança:
Gravador de cópias de segurança do Cloud Spanner (
roles/spanner.backupWriter
)
-
Criar, ver, atualizar e eliminar cópias de segurança:
Administrador de cópias de segurança do Cloud Spanner (
Os exemplos da CLI gcloud nesta página baseiam-se nos seguintes pressupostos:
- Já configurou a CLI gcloud para utilização com o Spanner. Se não conhece a CLI gcloud com o Spanner, consulte o artigo Crie e consulte uma base de dados com a CLI gcloud.
Configurou a CLI gcloud com o seu projeto. Por exemplo:
gcloud config set core/project PROJECT_ID
Criar uma cópia de segurança
Quando cria uma cópia de segurança, o Spanner cria um recurso de cópia de segurança e uma operação de cópia de segurança de execução prolongada para acompanhar o progresso da cópia de segurança. A cópia de segurança recém-criada reside na mesma instância, região e projeto que a respetiva base de dados de origem.
Tem de especificar as seguintes informações quando cria uma cópia de segurança:
- Um ID da base de dados de origem.
- Um nome para o recurso de cópia de segurança.
- Uma data de validade (até 1 ano a partir da hora de criação da cópia de segurança).
Opcionalmente, pode especificar um
versionTime
para a base de dados de origem,
o que lhe permite fazer uma cópia de segurança da base de dados para um ponto anterior no tempo.
O campo versionTime
é normalmente usado para sincronizar as cópias de segurança de várias bases de dados ou para recuperar dados através da recuperação num determinado momento (PITR).
Se versionTime
não for especificado, é definido como o createTime
da cópia de segurança.
Também pode criar cópias de segurança com uma frequência especificada através de um horário de cópia de segurança. Para mais informações, consulte o artigo Crie e faça a gestão de agendamentos de cópias de segurança.
Consola
Na Google Cloud consola, aceda à página Instances do Spanner.
Clique na instância que contém a base de dados da qual quer fazer uma cópia de segurança.
Clique na base de dados.
No painel de navegação, clique em Cópia de segurança/restauro.
No separador Cópias de segurança, clique em Criar cópia de segurança.
Preencha o formulário e clique em Criar.
Para verificar o progresso de uma operação de cópia de segurança, consulte a secção Verifique o progresso da operação.
gcloud
Antes de usar qualquer um dos dados de comandos abaixo, faça as seguintes substituições:
- INSTANCE_ID: o ID da instância do Spanner.
- DATABASE_ID: o ID da base de dados do Spanner.
- BACKUP_NAME: o nome da cópia de segurança do Spanner.
-
RETENTION_PERIOD: o período de retenção da cópia de segurança criada. Por exemplo, se quiser que a duração da retenção seja de um dia, pode usar
86400s
. -
ENCRYPTION_TYPE:
o tipo de encriptação da cópia de segurança criada.
Os valores válidos são
USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION
,GOOGLE_DEFAULT_ENCRYPTION
ouCUSTOMER_MANAGED_ENCRYPTION
. Se usarCUSTOMER_MANAGED_ENCRYPTION
, tem de especificar umkmsKeyName
.
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud spanner backups create BACKUP_NAME \ --instance=INSTANCE_ID \ --database=DATABASE_ID \ --retention-period=RETENTION_PERIOD \ --encryption-type=ENCRYPTION_TYPE \ --async
Windows (PowerShell)
gcloud spanner backups create BACKUP_NAME ` --instance=INSTANCE_ID ` --database=DATABASE_ID ` --retention-period=RETENTION_PERIOD ` --encryption-type=ENCRYPTION_TYPE ` --async
Windows (cmd.exe)
gcloud spanner backups create BACKUP_NAME ^ --instance=INSTANCE_ID ^ --database=DATABASE_ID ^ --retention-period=RETENTION_PERIOD ^ --encryption-type=ENCRYPTION_TYPE ^ --async
Deve receber uma resposta semelhante à seguinte:
Create request issued for: BACKUP_NAME Check operation [projects/PROJECT_ID/instances/INSTANCE_ID/backups/BACKUP_NAME/operations/_auto_op_234567] for status.
Seguem-se algumas notas de utilização:
- Para definir a data de validade da cópia de segurança, especifique o parâmetro
--retention-period
ou--expiration-date
. Para obter informações sobre a sintaxe de datas, consultegcloud topic datetimes
. - O nome da cópia de segurança tem de ser exclusivo na instância.
- O comando é devolvido imediatamente devido à flag
--async
. Sem a flag, o comando aguarda a conclusão da operação de cópia de segurança. - Especifique a flag
--help
para receber ajuda com qualquer comando.
Para verificar o progresso de uma operação de cópia de segurança, consulte a secção Verifique o progresso da operação.
Bibliotecas cliente
O exemplo de código seguinte cria uma cópia de segurança num momento específico version_time
e, em seguida, aguarda a conclusão. Quando estiver concluída, verifica se a cópia de segurança está pronta e obtém algumas informações sobre a mesma, como o nome, o tamanho e a hora de criação.
C++
C#
Go
Java
Node.js
PHP
Python
Ruby
O que se segue?
Para saber mais sobre as cópias de segurança, consulte o artigo Vista geral das cópias de segurança.
Para gerir cópias de segurança, consulte o artigo Gerir cópias de segurança.