Puedes restablecer una copia de seguridad de una base de datos de Spanner en una base de datos nueva. La base de datos restaurada tendrá todos los datos y el esquema de la base de datos original en el momento version_time
de la copia de seguridad, incluidas todas las opciones de la base de datos que se establecen con el comando ALTER DATABASE SET OPTIONS
. Sin embargo, los siguientes elementos no se incluyen en la base de datos restablecida:
- Permisos de IAM (excepto los heredados de la instancia que contiene la base de datos restaurada) Debes aplicar los permisos de IAM adecuados después de que se complete la restauración.
- Son los datos internos de cualquier flujos de cambios.
- Es el tiempo de actividad (TTL) definido por una política de eliminación de filas. Debes volver a configurar estas políticas después de que se complete el restablecimiento. Para obtener más información, consulta Copias de seguridad y TTL.
- Son los puntos de división que creaste cuando dividiste previamente una base de datos. Para obtener más información, consulta la Descripción general de la división previa.
Cuando restableces a partir de una copia de seguridad, la base de datos restablecida reside en la misma instancia, región y proyecto que su copia de seguridad de origen. Si necesitas restablecer la copia de seguridad en una región o proyecto diferente por motivos de cumplimiento o continuidad comercial, puedes copiar la copia de seguridad en una instancia de una región o proyecto independiente y, luego, restablecerla desde la copia de seguridad copiada.
Puedes usar la opción de restablecer desde una copia de seguridad de las siguientes maneras:
- En la consola deGoogle Cloud
- Usa Google Cloud CLI
- Con las bibliotecas cliente
- Usa las APIs de REST o RPC
Cómo funciona el restablecimiento de una base de datos a partir de una copia de seguridad
Cuando restableces una base de datos de Spanner, debes especificar una copia de seguridad de origen y una nueva base de datos de destino. No puedes restablecer una base de datos existente.
La base de datos recién restablecida debe estar en el mismo proyecto que la copia de seguridad y en una instancia con la misma configuración de instancia y la misma (o de nivel superior) edición de Spanner que la copia de seguridad. Por ejemplo, si una copia de seguridad se encuentra en una instancia configurada como us-west3
y usa la edición Enterprise, se puede restablecer en cualquier instancia del proyecto que también esté configurada como us-west3
y use la edición Enterprise. Si restableces una copia de seguridad en una instancia de la edición Enterprise en una instancia de la edición Standard, es posible que el restablecimiento falle si la base de datos usa funciones de la edición Enterprise. No es necesario que la capacidad de procesamiento de las instancias sea la misma.
El proceso de restablecimiento está diseñado para una alta disponibilidad. La base de datos se puede restablecer siempre que esté disponible el quórum mayoritario de las regiones y zonas de la instancia.
Para restablecer una copia de seguridad habilitada para CMEK, tanto la clave como la versión de la clave deben estar disponibles para Spanner. De forma predeterminada, la base de datos restablecida usa la misma configuración de encriptación que la copia de seguridad. Puedes anular este comportamiento si especificas una configuración de encriptación diferente cuando restableces la base de datos. Para obtener más información, consulta cómo restablecer desde una copia de seguridad habilitada para CMEK.
Restablece una copia de seguridad en una región o proyecto diferente
Si necesitas restablecer la copia de seguridad en una región o proyecto diferente, primero cópiala en la región o el proyecto elegidos. Las copias de seguridad copiadas se pueden restablecer en cuanto finalice la copia. Puedes restablecer la copia de seguridad en la instancia de destino (siempre y cuando use la edición como instancia de copia de seguridad de origen) o en cualquier instancia que tenga la misma configuración y la misma edición (o una de nivel superior) que la instancia de destino. Antes de restablecer, asegúrate de que la instancia de destino tenga suficientes nodos o unidades de procesamiento aprovisionados para admitir el tamaño de la base de datos según el límite de almacenamiento de 10 TB por nodo (es decir, necesitas al menos 2 nodos para restablecer una copia de seguridad de 20 TB). Si copiaste la copia de seguridad en otro proyecto y quieres restablecerla allí, asegúrate de que el proyecto de destino tenga las cuotas de nodos suficientes para el restablecimiento. El restablecimiento de una copia de seguridad copiada funciona de la misma manera que un restablecimiento normal.
Estados de restablecimiento
Una base de datos restablecida pasa por tres estados, a los que se les realiza un seguimiento mediante dos operaciones de larga duración.
CREATING
: Spanner comienza el restablecimiento creando una base de datos nueva y activando archivos desde la copia de seguridad. Durante este estadoCREATING
inicial, la base de datos restablecida aún no está lista para usarse. Por lo general, este estado se completa en una hora. Una vez que se complete el estadoCREATING
, tu base de datos estará lista para usarse.Para hacer un seguimiento del progreso de este estado, puedes consultar la operación de restablecimiento de larga duración que Spanner pone a disposición durante este proceso. Devuelve un objeto
RestoreDatabaseMetadata
.Ten en cuenta las siguientes advertencias sobre el estado
CREATING
:- Si restableces a una instancia diferente, la operación de restablecimiento pertenece a la instancia que contiene la base de datos restablecida, no a la que contiene la copia de seguridad.
- Spanner no te permitirá borrar la copia de seguridad mientras se restablece. Puedes borrarlo después de que se complete el restablecimiento y la base de datos entre en el estado
READY
. - Una instancia puede tener, como máximo, diez bases de datos en el estado
CREATING
debido a la restauración a partir de copias de seguridad. No podrás restablecer otra copia de seguridad en la instancia hasta que una de las diez bases de datos restablecidas pase al estadoREADY_OPTIMIZING
oREADY
.
READY_OPTIMIZING
: Después de que Spanner activa la copia de seguridad, comienza a copiar los datos de la copia de seguridad en la base de datos nueva y, al mismo tiempo, optimiza su tamaño almacenado. Tu base de datos estará lista para usarse durante este proceso. Por lo general, esta fase de la restauración tarda unas horas en completarse para las bases de datos de menos de 100 TB.Si bien puedes usar tu base de datos como de costumbre durante
READY_OPTIMIZING
, se aplican las siguientes advertencias:- Es posible que las latencias de lectura sean un poco más altas de lo habitual.
- Las métricas de almacenamiento muestran el tamaño de la base de datos nueva, no el de la copia de seguridad. Por lo tanto, mientras la transferencia de datos esté en curso, es posible que las métricas de almacenamiento de Spanner muestren resultados que no reflejen el tamaño total de todos tus datos.
- Al igual que con el estado
CREATING
, Spanner no te permitirá borrar la copia de seguridad activada.
Durante este estado, Spanner pone a disposición otra operación de restablecimiento de larga duración, que esta vez devuelve un objeto de metadatos
OptimizeRestoredDatabaseMetadata
.READY
: Una vez que se completa la operación de copiar y optimizar, la base de datos pasa al estadoREADY
. La base de datos se restablece por completo y ya no hace referencia a la copia de seguridad ni la requiere.
Control de acceso (IAM)
El rol spanner.restoreAdmin
te otorga permiso para restablecer desde una copia de seguridad.
Para obtener más información, consulta Control de acceso con la IAM.
Los siguientes roles también tienen acceso a las operaciones de restablecimiento de Spanner:
spanner.admin
: Tiene acceso completo para restablecer. Este rol tiene acceso completo a todos los recursos de Spanner.owner
: Tiene acceso completo para restablecer.editor
: Tiene acceso completo para restablecer.viewer
: Tiene acceso para ver las operaciones de restablecimiento y restablecer. Este rol no puede crear, actualizar, borrar ni copiar copias de seguridad.
Precios
No se aplican cargos por restablecer desde una copia de seguridad.
¿Qué sigue?
- Para restablecer una base de datos a partir de una copia de seguridad, consulta Restablece desde una copia de seguridad.