Spanner – это мощное решение Google для работы с облачными базами данных. Она легко масштабируется и распространяется по всему миру как база данных NoSQL, но при этом предоставляет реляционную семантику, аналогичную вашей известной базе данных SQL. Spanner даже предоставляет интерфейс, совместимый с PostgreSQL.

В этой статье мы создадим резервную копию и переместим ее в другой проект gcloud. Это удобно, если вы хотите синхронизировать базу данных разработки с вашей активной базой данных, например, чтобы воспроизвести ошибку, возникающую в рабочей среде.

Как создавать резервные копии Spanner

Существует несколько способов создания резервных копий базы данных Spanner.
К ним относятся веб-интерфейс, gcloud CLI, несколько клиентских библиотек, а также REST API. Мы рассмотрим первые два варианта.

Консоль Google Cloud — это простой способ создания резервных копий. Я часто использую его для создания резервной копии прямо перед большим изменением. Однако для ежедневных резервных копий я рекомендую использовать другой, автоматический способ.

Чтобы создать резервную копию в консоли, перейдите к своему экземпляру Spanner и откройте тот, для которого хотите создать резервную копию. В меню выберите Резервное копирование/восстановление и нажмите Создать резервную копию.

Как видите, срок действия резервных копий Spanner истекает. Выберите подходящий период времени для вашего варианта использования. Если вы просто создаете резервную копию, чтобы перенести ее в другой проект, выберите короткие временные рамки. Вам выставляется счет за дисковое пространство, используемое резервной копией.

Вы можете увидеть ход создания резервной копии на вкладке Активность:

Запомните имя резервной копии, так как оно понадобится нам позже для переноса резервной копии в другой проект.

Вы также можете использовать интерфейс командной строки gcloud для создания резервной копии:

gcloud spanner backups create <backup name> --instance=<Spanner instance name> \
--database=<source database name> --retention-period=1d

Скопируйте резервную копию на другой…