En esta página, se describe cómo programar y desactivar las copias de seguridad automáticas, crear y administrar copias de seguridad a pedido y ver copias de seguridad para tu instancia de Cloud SQL.
Para obtener más información sobre el funcionamiento de las copias de seguridad, consulta Descripción general de las copias de seguridad.
Crea una copia de seguridad a pedido
Para crear una copia de seguridad bajo demanda:
Console
-
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
- Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
- Selecciona Copias de seguridad en el menú de navegación de SQL.
- Haz clic en Crear copia de seguridad.
- En la página Crear copia de seguridad, agrega una descripción, si es necesario, y haz clic en Crear.
gcloud
Crea la copia de seguridad:
gcloud sql backups create \ --async \ --instance=INSTANCE_NAME
Puedes brindar una descripción de la copia de seguridad mediante el parámetro --description
.
Para crear una copia de seguridad en una ubicación personalizada, sigue estos pasos:
gcloud sql backups create \ --async \ --instance=INSTANCE_NAME \ --location=BACKUP_LOCATION
REST v1
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
REST v1beta4
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Programa copias de seguridad automáticas
Para programar copias de seguridad automáticas de una instancia:
Console
-
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
- Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
- Selecciona Copias de seguridad en el menú de navegación de SQL.
- Haz clic en Editar junto a Configuración.
- Elige un período para que se cree una copia de seguridad de tus datos automáticamente.
- Haz clic en Guardar.
gcloud
-
Edita la instancia para especificar la hora de inicio de la copia de seguridad:
El parámetrogcloud sql instances patch INSTANCE_NAME --backup-start-time=HH:MM
backup-start-time
se establece en el formato de 24 horas, en la zona horaria UTC±00, y especifica el inicio de un período de copia de seguridad de 4 horas. Las copias de seguridad pueden iniciarse en cualquier momento durante el período de copia de seguridad. -
Confirma tus cambios:
En la seccióngcloud sql instances describe INSTANCE_NAME
backupConfiguration
, confirma que aparecenenabled: true
y la hora que especificaste.
Terraform
Si deseas crear una copia de seguridad de una base de datos, usa un recurso de Terraform.
Aplica los cambios
Para aplicar tu configuración de Terraform en un proyecto de Google Cloud, completa los pasos de las siguientes secciones.
Prepara Cloud Shell
- Inicia Cloud Shell
-
Establece el proyecto de Google Cloud predeterminado en el que deseas aplicar tus configuraciones de Terraform.
Solo necesitas ejecutar este comando una vez por proyecto y puedes ejecutarlo en cualquier directorio.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Las variables de entorno se anulan si configuras valores explícitos en el archivo de configuración de Terraform.
Prepara el directorio
Cada archivo de configuración de Terraform debe tener su propio directorio (también llamado módulo raíz).
-
En Cloud Shell, crea un directorio y un archivo nuevo dentro de ese directorio. El nombre del archivo debe tener la extensión
.tf
, por ejemplo,main.tf
. En este instructivo, el archivo se denominamain.tf
.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Si sigues un instructivo, puedes copiar el código de muestra en cada sección o paso.
Copia el código de muestra en el
main.tf
recién creado.De manera opcional, copia el código de GitHub. Esto se recomienda cuando el fragmento de Terraform es parte de una solución de extremo a extremo.
- Revisa y modifica los parámetros de muestra que se aplicarán a tu entorno.
- Guarda los cambios.
-
Inicializa Terraform. Solo debes hacerlo una vez por directorio.
terraform init
De manera opcional, incluye la opción
-upgrade
para usar la última versión del proveedor de Google:terraform init -upgrade
Aplica los cambios
-
Revisa la configuración y verifica que los recursos que creará o actualizará Terraform coincidan con tus expectativas:
terraform plan
Corrige la configuración según sea necesario.
-
Para aplicar la configuración de Terraform, ejecuta el siguiente comando y, luego, escribe
yes
cuando se te solicite:terraform apply
Espera hasta que Terraform muestre el mensaje “¡Aplicación completa!”.
- Abre tu proyecto de Google Cloud para ver los resultados. En la consola de Google Cloud, navega a tus recursos en la IU para asegurarte de que Terraform los haya creado o actualizado.
Borra los cambios
Para borrar tus cambios, haz lo siguiente:
- Para inhabilitar la protección contra la eliminación, en tu archivo de configuración de Terraform, establece el argumento
deletion_protection
enfalse
.deletion_protection = "false"
- Para aplicar la configuración actualizada de Terraform, ejecuta el siguiente comando y, luego, ingresa
yes
cuando se te solicite:terraform apply
-
Quita los recursos que se aplicaron antes con tu configuración de Terraform a través de la ejecución del siguiente comando y, luego, ingresa
yes
cuando se te solicite:terraform destroy
REST v1
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: el ID o el número del proyecto de Google Cloud que contiene la instancia
- INSTANCE_NAME: el nombre de la instancia principal o de réplica de lectura que configuras para obtener alta disponibilidad
- START_TIME: el tiempo (en horas y minutos)
Método HTTP y URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME
Cuerpo JSON de la solicitud:
{ "settings": { "backupConfiguration": { "startTime": "START_TIME", "enabled": true, "binaryLogEnabled": true } } }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
REST v1beta4
Configura una ubicación personalizada para las copias de seguridad
Solo debes usar una ubicación personalizada para la copia de seguridad si así lo exige la regulación. Si no es necesario, usa la ubicación de copia de seguridad multirregional predeterminada.
Puedes usar una ubicación personalizada para copias de seguridad automáticas y a pedido. Para obtener una lista completa de los valores de ubicación válidos, consulta Ubicaciones de las instancias.
Para actualizar una instancia con una ubicación personalizada, sigue las instrucciones a continuación:
Console
-
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
- Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
- En el menú de navegación de SQL, selecciona Copias de seguridad.
- Junto a Configuración, haz clic en Editar .
- En la sección Automatizar copias de seguridad, expande Opciones avanzadas.
- Haz clic en Multirregión (predeterminado) o Región.
- Selecciona la ubicación en el menú desplegable Ubicación.
- Haz clic en Guardar.
gcloud
Para obtener información de referencia, consulta gcloud sql instances patch.
gcloud sql instances patch INSTANCE_NAME \ --backup-location=BACKUP_LOCATION
Terraform
A fin de especificar una ubicación personalizada para una copia de seguridad de una instancia de base de datos, usa un recurso de Terraform.
REST v1
Usa el parámetro
settings.backupConfiguration.location
de la instancia para la
ubicación de la copia de seguridad.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- region: La región del proyecto
- backup-region: La región de la copia de seguridad
- project-id: El ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id
Cuerpo JSON de la solicitud:
{ "region": "region" "settings": { "backupConfiguration": { "location": "backup-region", "enabled": true, } } }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
REST v1beta4
Usa el parámetro
settings.backupConfiguration.location
de la instancia para la
ubicación de la copia de seguridad.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- region: La región del proyecto
- backup-region: La región de la copia de seguridad
- project-id: El ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
Cuerpo JSON de la solicitud:
{ "region": "region" "settings": { "backupConfiguration": { "location": "backup-region", "enabled": true, } } }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Visualiza una lista de las copias de seguridad
Para ver una lista de las copias de seguridad y los detalles correspondientes, usa las siguientes opciones.
En el historial de copias de seguridad de la consola de Google Cloud, no se muestran las copias de seguridad omitidas o con errores. Usa gcloud
o la API para ver las copias de seguridad omitidas.
Console
-
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
- Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
- Selecciona Copias de seguridad en el menú de navegación de SQL para ver las copias de seguridad recientes, junto con la hora de creación y el tipo de copia de seguridad.
gcloud
-
Enumera las copias de seguridad de la instancia:
gcloud sql backups list \ --instance INSTANCE_NAME
Puedes filtrar y controlar los resultados con los parámetros de lista estándar. Para ver una lista completa, consulta la página de referencia del comando gcloud sql backups list.
-
Para ver los detalles de una copia de seguridad, especifica la copia de seguridad
ID
del resultado del comandobackups list
.gcloud sql backups describe BACKUP_ID \ --instance INSTANCE_NAME
REST v1
También puedes usar el Explorador de API en la página BackupRuns:list para enviar la solicitud a la API de REST.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
REST v1beta4
También puedes usar el Explorador de API en la página BackupRuns:list para enviar la solicitud a la API de REST.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Visualiza una lista de las copias de seguridad durante una interrupción
Cuando una instancia se encuentra en una región que sufre una interrupción, solo puedes ver las copias de seguridad de esa instancia mediante un comodín (-
) con la API de backupRuns.list
.
El comodín muestra todas las copias de seguridad del proyecto. Consulta Restablece a una instancia diferente.
Cuando hay una interrupción en una región en la que una instancia tiene habilitadas las claves de encriptación administradas por el cliente (CMEK), no puedes restablecer las copias de seguridad de esa instancia en una región diferente. El motivo es que Cloud SQL usa claves regionales de Cloud KMS para la encriptación cuando las CMEK están habilitadas en la instancia. Para restablecer las copias de seguridad de una instancia de CMEK, Cloud SQL debe tener acceso a la clave CMEK. En una interrupción regional, no hay acceso a las claves de Cloud KMS en esa región.
gcloud
-
Muestra las copias de seguridad para cada instancia de un proyecto:
gcloud sql backups list --instance -
El comando muestra información similar a la siguiente:
{ "kind": "sql#backupRun", "status": "SUCCESSFUL", "enqueuedTime": "2020-01-21T11:25:33.818Z", "id": "backup-id", "startTime": "2020-01-21T11:25:33.858Z", "endTime": "2020-01-21T11:26:18.663Z", "type": "AUTOMATED", "windowStartTime": "2020-01-21T10:00:00.479Z", "instance": "instance-id", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns/backup-id", "location": "us" "backupKind": "SNAPSHOT" }
- Busca la copia de seguridad de la instancia que necesitas. Para restablecer esta copia de seguridad, consulta Restablece a una instancia diferente.
REST v1
- Muestra todas las copias de seguridad de un proyecto:
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: El ID del proyecto
- instance-id: El ID de la instancia o
-
para una lista de todas las copias de seguridad en el proyecto
HTTP method and URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/-/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
- Busca la copia de seguridad de la instancia que necesitas. Para restablecer esta copia de seguridad, consulta Restablece a una instancia diferente.
REST v1beta4
- Muestra todas las copias de seguridad de un proyecto:
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: El ID del proyecto
- instance-id: El ID de la instancia o
-
para una lista de todas las copias de seguridad en el proyecto
HTTP method and URL:
GET https://sqladmin.googleapis.com/v1beta4/projects/project-id/instances/-/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
- Busca la copia de seguridad de la instancia que necesitas. Para restablecer esta copia de seguridad, consulta Restablece a una instancia diferente.
Visualiza las ubicaciones de las copias de seguridad
Si deseas ver las ubicaciones de las copias de seguridad realizadas para una instancia, usa backupRuns
:
Console
-
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
- Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
- Selecciona Copias de seguridad en el menú de navegación de SQL.
- En la lista de copias de seguridad, la columna Ubicación enumera el tipo de ubicación (multirregión o región) y la multirregión o región específica para cada copia de seguridad.
gcloud
Para obtener información de referencia, consulta gcloud sql instances describe.
-
Enumera las copias de seguridad de la instancia:
gcloud sql backups list \ --instance INSTANCE_NAME
Puedes filtrar y controlar los resultados con los parámetros de lista estándar. Para ver una lista completa, consulta la página de referencia del comando gcloud sql backups list.
- Para enumerar los detalles de una copia de seguridad, usa el
ID
del resultado del comandobackups list
.gcloud sql backups describe BACKUP_ID \ --instance INSTANCE_NAME
REST v1
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
En los ejemplos anteriores:REGION
es la región de la instancia original.BACKUP_LOCATION
es la ubicación en la que quieres que Cloud SQL almacene la copia de seguridad.
REST v1beta4
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
En los ejemplos anteriores:REGION
es la región de la instancia original.BACKUP_LOCATION
es la ubicación en la que quieres que Cloud SQL almacene la copia de seguridad.
Configura la retención automática de las copias de seguridad
Para configurar la cantidad de copias de seguridad automáticas que se retendrán, haz lo siguiente:
Console
-
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
- Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
- Selecciona Copias de seguridad en el menú de navegación de SQL.
- Haz clic en Editar.
- En la sección Automatizar copias de seguridad, expande Opciones avanzadas.
-
Ingresa la cantidad de copias de seguridad para almacenar a la vez.
El número no puede ser inferior al predeterminado (siete).
- Haz clic en Guardar.
gcloud
Edita la instancia para establecer la cantidad de copias de seguridad automáticas que se retendrán. El número no puede ser inferior al predeterminado (siete).
gcloud sql instances patch INSTANCE_NAME \ --retained-backups-count=NUM_TO_RETAIN
Terraform
Si deseas especificar la cantidad de copias de seguridad automáticas que se conservarán en una instancia de base de datos, usa un recurso de Terraform.
REST v1beta4
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- unit: La unidad de retención puede ser un número entero o una string (opcional). Los valores admitidos (y predeterminados) son 1 o “COUNT”.
- num-to-retain: Es la cantidad de copias de seguridad automáticas que se retendrán. El número no puede ser inferior al predeterminado (7).
- project-id: El ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
Cuerpo JSON de la solicitud:
{ "settings": { "backupConfiguration": { "backupRetentionSettings": { "retentionUnit": unit, "retainedBackups": "num-to-retain" } } } }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Borrar una copia de seguridad
Puedes borrar copias de seguridad automáticas y a pedido.
Puede que borrar una copia de seguridad no libere un espacio del tamaño de esa copia. Esto se debe a que las copias de seguridad son incrementales, así que borrar una copia de seguridad anterior puede transferir alguno de sus contenidos a una copia más reciente para conservar la integridad de esta.Console
-
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
- Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
- Selecciona Copias de seguridad en el menú de navegación de SQL.
- Haz clic en más acciones
de la copia de seguridad que deseas borrar.
- Selecciona Borrar.
- En la ventana Borrar copia de seguridad, escribe
Delete
en el campo y haz clic en Borrar.
gcloud
Borra la copia de seguridad de una instancia de Cloud SQL:
gcloud beta sql backups delete BACKUP_ID \ --instance INSTANCE_NAME
Para obtener una lista completa de parámetros, consulta la página de referencia del comando gcloud beta sql backups delete.
REST v1
- Enumera las copias de seguridad para obtener el ID de la copia que deseas borrar:
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
-
Borra la copia de seguridad:
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: El ID de la instancia
- backup-id: El ID de la copia de seguridad
Método HTTP y URL:
DELETE https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns/backup-id
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
REST v1beta4
- Enumera las copias de seguridad para obtener el ID de la copia que deseas borrar:
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: Es el ID de la instancia.
Método HTTP y URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
-
Borra la copia de seguridad:
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- project-id: el ID del proyecto
- instance-id: El ID de la instancia
- backup-id: El ID de la copia de seguridad
Método HTTP y URL:
DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns/backup-id
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Inhabilita las copias de seguridad automáticas
Para inhabilitar las copias de seguridad automáticas de una instancia:
Console
-
En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.
- Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
- Selecciona Copias de seguridad en el menú de navegación de SQL.
- Haz clic en Administrar copias de seguridad automáticas.
- Desmarca Automatizar copias de seguridad.
- Haz clic en Guardar.
gcloud
Edita la instancia para inhabilitar las copias de seguridad:
gcloud sql instances patch INSTANCE_NAME \ --no-backup
REST v1
REST v1beta4
Próximos pasos
- Obtén más información sobre cómo realizar una copia de seguridad de tus datos.
- Obtén más información sobre cómo restablecer tus datos.
- Ve cómo restablecer tus datos desde una copia de seguridad.