На этой странице описано, как использовать функцию запланированного резервного копирования Cloud Firestore . Используйте резервные копии, чтобы защитить свои данные от повреждения данных на уровне приложения или от случайного удаления данных.
Резервные копии позволяют настроить расписание резервного копирования для ежедневного или еженедельного резервного копирования указанной базы данных. Затем вы можете использовать эти резервные копии для восстановления данных в новую базу данных.
О резервных копиях
Резервная копия — это согласованная копия базы данных в определенный момент времени. Резервная копия содержит все данные и конфигурации индексов на данный момент. Резервная копия не содержит времени базы данных для действующих политик . Резервная копия находится в том же месте, что и исходная база данных.
Резервные копии имеют настраиваемый срок хранения и хранятся до истечения срока хранения или до тех пор, пока вы не удалите резервную копию. Удаление исходной базы данных не приводит к автоматическому удалению связанных резервных копий.
Cloud Firestore хранит метаданные, связанные с резервными копиями, и расписания резервного копирования, связанные с базой данных. Cloud Firestore сохраняет эти метаданные до тех пор, пока не истечет срок действия или не будут удалены все резервные копии базы данных.
Создание или сохранение резервных копий не влияет на производительность чтения или записи в вашей действующей базе данных.
Затраты
При использовании резервных копий с вас взимается плата за следующее:
- Объем хранилища, используемый каждой резервной копией.
- За операцию восстановления взимается плата в зависимости от размера резервной копии.
Более подробную информацию и точные расценки можно найти на странице «Цены» .
Прежде чем начать
Для этой функции требуется тарифный план Blaze .Требуемые роли
Чтобы получить разрешения, необходимые для управления резервным копированием и расписаниями резервного копирования, попросите администратора предоставить вам одну или несколько из следующих ролей управления идентификацией и доступом:
-
roles/datastore.owner
: полный доступ к базе данных Cloud Firestore Следующие роли также доступны, но не отображаются в консоли Google Cloud. Используйте Google Cloud CLI , чтобы назначить следующие роли:
-
roles/datastore.backupsAdmin
: доступ для чтения и записи к резервным копиям. -
roles/datastore.backupsViewer
: доступ для чтения к резервным копиям. -
roles/datastore.backupSchedulesAdmin
: доступ для чтения и записи к расписаниям резервного копирования. -
roles/datastore.backupSchedulesViewer
: доступ для чтения к расписаниям резервного копирования. -
roles/datastore.restoreAdmin
: разрешения на инициирование операций восстановления.
-
Создание расписаний резервного копирования и управление ими
В примерах ниже показано, как настроить расписание резервного копирования. Для каждой базы данных вы можете настроить до одного ежедневного расписания резервного копирования и до одного еженедельного расписания резервного копирования. Вы не можете настроить несколько расписаний еженедельного резервного копирования для разных дней недели.
Вы не можете настроить точное время резервного копирования. Резервные копии создаются в разное время каждый день. Для еженедельных расписаний резервного копирования вы можете настроить день недели для создания резервной копии.
Создайте расписание резервного копирования
Используйте один из следующих инструментов, чтобы создать расписание резервного копирования.
Создайте ежедневное расписание резервного копирования
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Установите флажок «Ежедневно» , установите срок хранения и нажмите «Сохранить» .
gcloud firestore backups schedules create
. Чтобы создать ежедневное расписание резервного копирования, установите для флага --recurrence
значение daily
:gcloud firestore backups schedules create \ --database='DATABASE_ID ' \ --recurrence=daily \ --retention=RETENTION_PERIOD
Замените следующее:
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите значение до 14 недель (
14w
).
firebase firestore:databases:backups:schedules
. Чтобы создать ежедневное расписание резервного копирования, установите для флага --recurrence
значение DAILY
:firebase firestore:backups:schedules:create \ --database 'DATABASE_ID ' \ --recurrence 'DAILY' \ --retentionRETENTION_PERIOD
Замените следующее:
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите значение до 14 недель (
14w
).
google_firestore_backup_schedule
.resource "google_firestore_backup_schedule" "daily-backup" { project =PROJECT_ID database =DATABASE_ID retention =RETENTION_PERIOD_SECONDS daily_recurrence {} }
Замените следующее:
- PROJECT_ID : идентификатор проекта.
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. Вы также можете использовать ссылку на ресурс Terraform типа - RETENTION_PERIOD_SECONDS : установите значение в секундах, за которым следует «s». Максимальное значение —
8467200s
с (14 недель).
google_firestore_database
.Создайте еженедельный график резервного копирования
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Установите флажок «Еженедельно» , выберите день резервного копирования, установите период хранения и нажмите «Сохранить» .
--recurrence
значение weekly
:gcloud firestore backups schedules create \ --database='DATABASE_ID ' \ --recurrence=weekly \ --retention=RETENTION_PERIOD \ --day-of-week=DAY
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите значение до 14 недель (
14w
). - DAY : день недели для резервного копирования. Установите одно из следующих значений:
-
SUN
в воскресенье -
MON
на понедельник -
TUE
на вторник -
WED
на среду -
THU
на четверг -
FRI
на пятницу -
SAT
на субботу
-
--recurrence
значение WEEKLY
:firebase firestore:backups:schedules:create \ --database 'DATABASE_ID ' \ --recurrence 'WEEKLY' \ --retentionRETENTION_PERIOD --day-of-weekDAY
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите значение до 14 недель (
14w
). - DAY : день недели для резервного копирования. Установите одно из следующих значений:
-
SUNDAY
на воскресенье -
MONDAY
на понедельник -
TUESDAY
на вторник -
WEDNESDAY
на среду -
THURSDAY
на четверг -
FRIDAY
на пятницу -
SATURDAY
на субботу
-
google_firestore_backup_schedule
.resource "google_firestore_backup_schedule" "weekly-backup" { project =PROJECT_ID database =DATABASE_ID retention =RETENTION_PERIOD_SECONDS weekly_recurrence { day =DAY } }
Замените следующее:
- PROJECT_ID : идентификатор проекта.
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. Вы также можете использовать ссылку на ресурс Terraform типа - RETENTION_PERIOD_SECONDS : установите значение в секундах, за которым следует «s». Максимальное значение —
8467200s
с (14 недель). - DAY : день недели для резервного копирования. Установите одно из следующих значений:
-
SUNDAY
на воскресенье -
MONDAY
на понедельник -
TUESDAY
на вторник -
WEDNESDAY
на среду -
THURSDAY
на четверг -
FRIDAY
на пятницу -
SATURDAY
на субботу
-
google_firestore_database
.Получение списка расписаний резервного копирования
Чтобы просмотреть все расписания резервного копирования базы данных, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описаны расписания резервного копирования и перечислены доступные резервные копии.
gcloud firestore backups schedules list
.gcloud firestore backups schedules list \ --database='DATABASE_ID '
'(default)'
для базы данных по умолчанию.firebase firestore:backups:schedules:list
.firebase firestore:backups:schedules:list \ --database 'DATABASE_ID '
'(default)'
для базы данных по умолчанию.Опишите график резервного копирования
Чтобы получить информацию о расписании резервного копирования, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описаны расписания резервного копирования и перечислены доступные резервные копии.
gcloud firestore backups schedules describe
:gcloud firestore backups schedules describe \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор расписания резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при составлении списка всех расписаний резервного копирования .
Обновить расписание резервного копирования
Чтобы обновить период хранения графика резервного копирования, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» .
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Измените настройки расписания резервного копирования и нажмите «Сохранить» .
gcloud firestore backups schedules update
:gcloud firestore backups schedules update \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID \ --retention=RETENTION_PERIOD
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор расписания резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при составлении списка всех расписаний резервного копирования .
- RETENTION_PERIOD : установите значение до 14 недель (
14w
).
firebase firestore:backups:schedules:update
:firebase firestore:backups:schedules:update \BACKUP_SCHEDULE \ --retentionRETENTION_PERIOD
- BACKUP_SCHEDULE : полное имя ресурса расписания резервного копирования. Имя каждого расписания резервного копирования можно просмотреть при составлении списка всех расписаний резервного копирования .
- RETENTION_PERIOD : установите значение до 14 недель (
14w
).
Вы можете обновить период хранения расписания резервного копирования, но не можете обновить его периодичность. Если вам нужен график резервного копирования с другой периодичностью, удалите старое расписание резервного копирования, если оно больше не требуется, и создайте новое расписание резервного копирования с нужной периодичностью.
Удаление расписания резервного копирования
Чтобы удалить расписание резервного копирования, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку для базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Отредактируйте настройки расписания резервного копирования, а затем нажмите «Сохранить» .
gcloud firestore backups schedules delete
:gcloud firestore backups schedules delete \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор расписания резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при составлении списка всех расписаний резервного копирования .
firebase firestore:backups:schedules:delete
:firebase firestore:backups:schedules:delete \BACKUP_SCHEDULE
- BACKUP_SCHEDULE : полное имя ресурса расписания резервного копирования. Имя каждого расписания резервного копирования можно просмотреть при составлении списка всех расписаний резервного копирования .
Обратите внимание, что удаление расписания резервного копирования не приведет к удалению резервных копий, уже созданных по этому расписанию. Вы можете дождаться истечения срока их хранения или вручную удалить резервную копию, см. Удаление резервной копии .
Управление резервными копиями
Получение списка резервных копий
Чтобы просмотреть доступные резервные копии, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Измените настройки расписания резервного копирования и нажмите «Сохранить» .
gcloud firestore backups list
:gcloud firestore backups list \ --format="table(name, database, state)"
--format="table(name, database, state)"
форматирует выходные данные в более читаемый формат. Чтобы вывести список только резервных копий из определенного хранилища, используйте флаг --location
:gcloud firestore backups list \ --location=LOCATION \ --format="table(name, database, state)"
LOCATION
на имя местоположения Cloud Firestore .firebase firestore:backups:list
:firebase firestore:backups:list
--location
:firebase firestore:backups:list \ --location=LOCATION
LOCATION
на имя местоположения Cloud Firestore .Описать резервную копию
Чтобы просмотреть сведения о резервной копии, воспользуйтесь одним из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описаны расписания резервного копирования и перечислены доступные резервные копии.
gcloud firestore backups describe
:gcloud firestore backups describe \ --location=LOCATION \ --backup=BACKUP_ID
- LOCATION : Местоположение базы данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждой резервной копии при составлении списка всех резервных копий .
firebase firestore:backups:get
:firebase firestore:backups:getBACKUP
- BACKUP : полное имя ресурса резервной копии. Вы можете просмотреть имя каждой резервной копии при составлении списка всех резервных копий .
Удалить резервную копию
Чтобы удалить резервную копию, используйте один из следующих методов.
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования. Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
- В таблице «Резервные копии» найдите строку для резервной копии и в столбце « Действия» нажмите «Просмотреть больше» ( ). Нажмите Удалить .
- Подтвердите действие с помощью текстового поля и нажмите «Удалить» .
gcloud firestore backups delete
:gcloud firestore backups delete \ --location=LOCATION \ --backup=BACKUP_ID
- LOCATION : Местоположение базы данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждой резервной копии при составлении списка всех резервных копий .
firebase firestore:backups:delete
:firebase firestore:backups:delete \BACKUP
- BACKUP : полное имя ресурса резервной копии. Вы можете просмотреть имя каждой резервной копии при составлении списка всех резервных копий .
Восстановление данных из резервной копии базы данных
Операция восстановления записывает данные из резервной копии в новую базу данных Cloud Firestore .
Чтобы начать операцию восстановления, воспользуйтесь одним из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования. Откроется страница аварийного восстановления . На этой странице описаны расписания резервного копирования и перечислены доступные резервные копии.
- В таблице «Резервные копии» найдите строку для резервной копии и в столбце « Действия» нажмите «Просмотреть больше» ( Cloud Shell . ). Нажмите «Восстановить с помощью
Панель Cloud Shell открывается с помощью команды gcloud CLI для восстановления из выбранной резервной копии. Замените ID_OF_NEW_DATABASE идентификатором базы данных и запустите команду.
Выполнение команды возвращает ответ с дополнительной информацией об операции. База данных вскоре появится в вашем списке баз данных. Операция восстановления займет некоторое время и должна завершиться, прежде чем база данных станет доступной.
gcloud firestore databases restore
:gcloud firestore databases restore \ --source-backup=projects/PROJECT_ID /locations/LOCATION /backups/BACKUP_ID \ --destination-database='DATABASE_ID '
- PROJECT_ID : идентификатор вашего проекта.
- LOCATION : расположение резервной копии базы данных и расположение новой базы данных, созданной для восстановленных данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждой резервной копии при составлении списка всех резервных копий .
- DATABASE_ID : идентификатор базы данных для новой базы данных. Вы не можете использовать идентификатор базы данных, который уже используется.
metadata
, name
и компоненты response
:metadata: '@type': type.googleapis.com/google.firestore.admin.v1.RestoreDatabaseMetadata backup: projects/PROJECT_ID /locations/LOCATION /backups/BACKUP_ID database: projects/PROJECT_ID /databases/DATABASE_ID operationState: PROCESSING progressPercentage: completedWork: '20' estimatedWork: '100' startTime: '2023-12-06T14:20:17.398325Z' name: projects/PROJECT_ID /databases/DATABASE_ID /operations/operation_uuid response: '@type': type.googleapis.com/google.firestore.admin.v1.Database createTime: '2023-12-06T14:20:17.398325Z' name: projects/PROJECT_ID /databases/DATABASE_ID ...
metadata
включает компонент progressPercentage
, подробно описывающий предполагаемый ход восстановления на данный момент, и operationState
определяющий общее состояние восстановления. Чтобы снова получить эту информацию, используйте gcloud firestore operations list
:gcloud firestore operations list --database=DATABASE_ID
name
из выходных данных, описанных выше, с gcloud firestore operations describe
: gcloud firestore operations describeOPERATION_NAME
firebase firestore:databases:restore
:firebase firestore:databases:restore \ --backup 'BACKUP ' \ --database 'DATABASE_ID '
- BACKUP : полное имя ресурса резервной копии. Вы можете просмотреть имя каждой резервной копии при составлении списка всех резервных копий .
- DATABASE_ID : идентификатор базы данных для новой базы данных. Вы не можете использовать идентификатор базы данных, который уже используется.
На этой странице описано, как использовать функцию запланированного резервного копирования Cloud Firestore . Используйте резервные копии, чтобы защитить свои данные от повреждения данных на уровне приложения или от случайного удаления данных.
Резервные копии позволяют настроить расписание резервного копирования для ежедневного или еженедельного резервного копирования указанной базы данных. Затем вы можете использовать эти резервные копии для восстановления данных в новую базу данных.
О резервных копиях
Резервная копия — это согласованная копия базы данных в определенный момент времени. Резервная копия содержит все данные и конфигурации индексов на данный момент. Резервная копия не содержит времени базы данных для действующих политик . Резервная копия находится в том же месте, что и исходная база данных.
Резервные копии имеют настраиваемый срок хранения и хранятся до истечения срока хранения или до тех пор, пока вы не удалите резервную копию. Удаление исходной базы данных не приводит к автоматическому удалению связанных резервных копий.
Cloud Firestore хранит метаданные, связанные с резервными копиями, и расписания резервного копирования, связанные с базой данных. Cloud Firestore сохраняет эти метаданные до тех пор, пока не истечет срок действия или не будут удалены все резервные копии базы данных.
Создание или сохранение резервных копий не влияет на производительность чтения или записи в вашей действующей базе данных.
Затраты
При использовании резервных копий с вас взимается плата за следующее:
- Объем хранилища, используемый каждой резервной копией.
- За операцию восстановления взимается плата в зависимости от размера резервной копии.
Более подробную информацию и точные расценки можно найти на странице «Цены» .
Прежде чем начать
Для этой функции требуется тарифный план Blaze .Требуемые роли
Чтобы получить разрешения, необходимые для управления резервным копированием и расписаниями резервного копирования, попросите администратора предоставить вам одну или несколько из следующих ролей управления идентификацией и доступом:
-
roles/datastore.owner
: полный доступ к базе данных Cloud Firestore Следующие роли также доступны, но не отображаются в консоли Google Cloud. Используйте Google Cloud CLI , чтобы назначить следующие роли:
-
roles/datastore.backupsAdmin
: доступ для чтения и записи к резервным копиям. -
roles/datastore.backupsViewer
: доступ для чтения к резервным копиям. -
roles/datastore.backupSchedulesAdmin
: доступ для чтения и записи к расписаниям резервного копирования. -
roles/datastore.backupSchedulesViewer
: доступ для чтения к расписаниям резервного копирования. -
roles/datastore.restoreAdmin
: разрешения на инициирование операций восстановления.
-
Создание расписаний резервного копирования и управление ими
В примерах ниже показано, как настроить расписание резервного копирования. Для каждой базы данных вы можете настроить до одного ежедневного расписания резервного копирования и до одного еженедельного расписания резервного копирования. Вы не можете настроить несколько расписаний еженедельного резервного копирования для разных дней недели.
Вы не можете настроить точное время резервного копирования. Резервные копии создаются в разное время каждый день. Для еженедельных расписаний резервного копирования вы можете настроить день недели для создания резервной копии.
Создайте расписание резервного копирования
Используйте один из следующих инструментов, чтобы создать расписание резервного копирования.
Создайте ежедневное расписание резервного копирования
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Выберите флажок Daily , установите период хранения, а затем нажмите «Сохранить» .
gcloud firestore backups schedules create
. Чтобы создать ежедневное расписание резервного копирования, установите для флага --recurrence
значение daily
:gcloud firestore backups schedules create \ --database='DATABASE_ID ' \ --recurrence=daily \ --retention=RETENTION_PERIOD
Замените следующее:
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите значение до 14 недель (
14w
).
firebase firestore:databases:backups:schedules
. Чтобы создать ежедневное расписание резервного копирования, установите для флага --recurrence
значение DAILY
:firebase firestore:backups:schedules:create \ --database 'DATABASE_ID ' \ --recurrence 'DAILY' \ --retentionRETENTION_PERIOD
Замените следующее:
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите значение до 14 недель (
14w
).
google_firestore_backup_schedule
.resource "google_firestore_backup_schedule" "daily-backup" { project =PROJECT_ID database =DATABASE_ID retention =RETENTION_PERIOD_SECONDS daily_recurrence {} }
Замените следующее:
- PROJECT_ID : идентификатор проекта.
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. Вы также можете использовать ссылку на ресурс Terraform типа - RETENTION_PERIOD_SECONDS : установите значение в секундах, за которым следует «s». Максимальное значение —
8467200s
(14 недель).
google_firestore_database
.Создайте еженедельный график резервного копирования
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Установите флажок «Еженедельно» , выберите день резервного копирования, установите период хранения и нажмите «Сохранить» .
--recurrence
значение weekly
:gcloud firestore backups schedules create \ --database='DATABASE_ID ' \ --recurrence=weekly \ --retention=RETENTION_PERIOD \ --day-of-week=DAY
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите значение до 14 недель (
14w
). - DAY : день недели для резервного копирования. Установите одно из следующих значений:
-
SUN
в воскресенье -
MON
на понедельник -
TUE
на вторник -
WED
на среду -
THU
на четверг -
FRI
на пятницу -
SAT
на субботу
-
--recurrence
значение WEEKLY
:firebase firestore:backups:schedules:create \ --database 'DATABASE_ID ' \ --recurrence 'WEEKLY' \ --retentionRETENTION_PERIOD --day-of-weekDAY
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите значение до 14 недель (
14w
). - DAY : день недели для резервного копирования. Установите одно из следующих значений:
-
SUNDAY
на воскресенье -
MONDAY
на понедельник -
TUESDAY
на вторник -
WEDNESDAY
на среду -
THURSDAY
на четверг -
FRIDAY
на пятницу -
SATURDAY
на субботу
-
google_firestore_backup_schedule
.resource "google_firestore_backup_schedule" "weekly-backup" { project =PROJECT_ID database =DATABASE_ID retention =RETENTION_PERIOD_SECONDS weekly_recurrence { day =DAY } }
Замените следующее:
- PROJECT_ID : идентификатор проекта.
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. Вы также можете использовать ссылку на ресурс Terraform типа - RETENTION_PERIOD_SECONDS : установите значение в секундах, за которым следует «s». Максимальное значение —
8467200s
с (14 недель). - DAY : день недели для резервного копирования. Установите одно из следующих значений:
-
SUNDAY
на воскресенье -
MONDAY
на понедельник -
TUESDAY
на вторник -
WEDNESDAY
на среду -
THURSDAY
на четверг -
FRIDAY
на пятницу -
SATURDAY
на субботу
-
google_firestore_database
.Получение списка расписаний резервного копирования
Чтобы просмотреть все расписания резервного копирования базы данных, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описаны расписания резервного копирования и перечислены доступные резервные копии.
gcloud firestore backups schedules list
.gcloud firestore backups schedules list \ --database='DATABASE_ID '
'(default)'
для базы данных по умолчанию.firebase firestore:backups:schedules:list
команды.firebase firestore:backups:schedules:list \ --database 'DATABASE_ID '
'(default)'
для базы данных по умолчанию.Опишите график резервного копирования
Чтобы получить информацию о расписании резервного копирования, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описаны расписания резервного копирования и перечислены доступные резервные копии.
gcloud firestore backups schedules describe
:gcloud firestore backups schedules describe \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор расписания резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при составлении списка всех расписаний резервного копирования .
Обновить расписание резервного копирования
Чтобы обновить срок хранения расписания резервного копирования, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» .
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Измените настройки расписания резервного копирования и нажмите «Сохранить» .
gcloud firestore backups schedules update
:gcloud firestore backups schedules update \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID \ --retention=RETENTION_PERIOD
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор расписания резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при составлении списка всех расписаний резервного копирования .
- RETENTION_PERIOD : установите значение до 14 недель (
14w
).
firebase firestore:backups:schedules:update
команда:firebase firestore:backups:schedules:update \BACKUP_SCHEDULE \ --retentionRETENTION_PERIOD
- BACKUP_SCHEDULE : полное имя ресурса расписания резервного копирования. Имя каждого расписания резервного копирования можно просмотреть при составлении списка всех расписаний резервного копирования .
- RETENTION_PERIOD : установите значение до 14 недель (
14w
).
Вы можете обновить период хранения расписания резервного копирования, но не можете обновить его периодичность. Если вам нужен график резервного копирования с другой периодичностью, удалите старое расписание резервного копирования, если оно больше не требуется, и создайте новое расписание резервного копирования с нужной периодичностью.
Удаление расписания резервного копирования
Чтобы удалить расписание резервного копирования, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Отредактируйте настройки расписания резервного копирования, а затем нажмите «Сохранить» .
gcloud firestore backups schedules delete
:gcloud firestore backups schedules delete \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите значение
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор расписания резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при составлении списка всех расписаний резервного копирования .
firebase firestore:backups:schedules:delete
:firebase firestore:backups:schedules:delete \BACKUP_SCHEDULE
- BACKUP_SCHEDULE : полное имя ресурса расписания резервного копирования. Имя каждого расписания резервного копирования можно просмотреть при составлении списка всех расписаний резервного копирования .
Обратите внимание, что удаление расписания резервного копирования не приведет к удалению резервных копий, уже созданных по этому расписанию. Вы можете дождаться истечения срока их хранения или вручную удалить резервную копию, см. Удаление резервной копии .
Управление резервными копиями
Получение списка резервных копий
Чтобы просмотреть доступные резервные копии, используйте один из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Нажмите «Изменить» , чтобы изменить настройки аварийного восстановления.
- Измените настройки расписания резервного копирования и нажмите «Сохранить» .
gcloud firestore backups list
:gcloud firestore backups list \ --format="table(name, database, state)"
--format="table(name, database, state)"
форматирует выходные данные в более читаемый формат. Чтобы вывести список только резервных копий из определенного хранилища, используйте флаг --location
:gcloud firestore backups list \ --location=LOCATION \ --format="table(name, database, state)"
LOCATION
на имя местоположения Cloud Firestore .firebase firestore:backups:list
:firebase firestore:backups:list
--location
:firebase firestore:backups:list \ --location=LOCATION
LOCATION
на имя местоположения Cloud Firestore .Описать резервную копию
Чтобы просмотреть сведения о резервной копии, воспользуйтесь одним из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описаны расписания резервного копирования и перечислены доступные резервные копии.
gcloud firestore backups describe
:gcloud firestore backups describe \ --location=LOCATION \ --backup=BACKUP_ID
- LOCATION : Местоположение базы данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждой резервной копии при составлении списка всех резервных копий .
firebase firestore:backups:get
:firebase firestore:backups:getBACKUP
- BACKUP : полное имя ресурса резервной копии. Вы можете просмотреть имя каждой резервной копии при составлении списка всех резервных копий .
Удалить резервную копию
Чтобы удалить резервную копию, используйте один из следующих методов.
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования. Откроется страница аварийного восстановления . На этой странице описаны расписания резервного копирования и перечислены доступные резервные копии.
- В таблице «Резервные копии» найдите строку для резервной копии и в столбце « Действия» нажмите «Просмотреть больше» ( ). Нажмите Удалить .
- Подтвердите действие с помощью текстового поля и нажмите «Удалить» .
gcloud firestore backups delete
:gcloud firestore backups delete \ --location=LOCATION \ --backup=BACKUP_ID
- LOCATION : Местоположение базы данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждой резервной копии при составлении списка всех резервных копий .
firebase firestore:backups:delete
:firebase firestore:backups:delete \BACKUP
- BACKUP : полное имя ресурса резервной копии. Вы можете просмотреть имя каждой резервной копии при составлении списка всех резервных копий .
Восстановление данных из резервной копии базы данных
Операция восстановления записывает данные из резервной копии в новую базу данных Cloud Firestore .
Чтобы начать операцию восстановления, воспользуйтесь одним из следующих методов:
В консоли Google Cloud перейдите на страницу «Базы данных» .
- В списке баз данных найдите строку базы данных. В столбце «Запланированное резервное копирование» нажмите « Просмотреть резервные копии» или «Изменить настройки» в зависимости от того, существует ли расписание резервного копирования. Откроется страница аварийного восстановления . На этой странице описаны расписания резервного копирования и перечислены доступные резервные копии.
- В таблице «Резервные копии» найдите строку для резервной копии и в столбце « Действия» нажмите «Просмотреть больше» ( Cloud Shell . ). Нажмите «Восстановить с помощью
Панель Cloud Shell открывается с помощью команды gcloud CLI для восстановления из выбранной резервной копии. Замените ID_OF_NEW_DATABASE идентификатором базы данных и запустите команду.
Выполнение команды возвращает ответ с дополнительной информацией об операции. База данных вскоре появится в вашем списке баз данных. Операция восстановления займет некоторое время и должна завершиться, прежде чем база данных станет доступной.
gcloud firestore databases restore
:gcloud firestore databases restore \ --source-backup=projects/PROJECT_ID /locations/LOCATION /backups/BACKUP_ID \ --destination-database='DATABASE_ID '
- PROJECT_ID : идентификатор вашего проекта.
- LOCATION : расположение резервной копии базы данных и расположение новой базы данных, созданной для восстановленных данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждой резервной копии при составлении списка всех резервных копий .
- DATABASE_ID : идентификатор базы данных для новой базы данных. Вы не можете использовать идентификатор базы данных, который уже используется.
metadata
, name
и компоненты response
:metadata: '@type': type.googleapis.com/google.firestore.admin.v1.RestoreDatabaseMetadata backup: projects/PROJECT_ID /locations/LOCATION /backups/BACKUP_ID database: projects/PROJECT_ID /databases/DATABASE_ID operationState: PROCESSING progressPercentage: completedWork: '20' estimatedWork: '100' startTime: '2023-12-06T14:20:17.398325Z' name: projects/PROJECT_ID /databases/DATABASE_ID /operations/operation_uuid response: '@type': type.googleapis.com/google.firestore.admin.v1.Database createTime: '2023-12-06T14:20:17.398325Z' name: projects/PROJECT_ID /databases/DATABASE_ID ...
metadata
включает в себя компонент progressPercentage
, подробно описывающий оценочный прогресс восстановления до настоящего времени, а также operationState
указывающий общее состояние восстановления. Чтобы снова получить эту информацию, используйте gcloud firestore operations list
:gcloud firestore operations list --database=DATABASE_ID
name
из вывода, описанного выше, с gcloud firestore operations describe
: gcloud firestore operations describeOPERATION_NAME
firebase firestore:databases:restore
:firebase firestore:databases:restore \ --backup 'BACKUP ' \ --database 'DATABASE_ID '
- BACKUP : полное название ресурса резервной копии. Вы можете просмотреть имя каждого резервного копирования при перечислении всех резервных копий .
- DATABASE_ID : идентификатор базы данных для новой базы данных. Вы не можете использовать идентификатор базы данных, который уже используется.
На этой странице описывается, как использовать функцию запланированного резервного копирования Cloud Firestore . Используйте резервные копии для защиты ваших данных от повреждения данных на уровне приложения или от случайного удаления данных.
Резервные копии позволяют настроить графики резервного копирования для ежедневного или еженедельного резервного копирования указанной базы данных. Затем вы можете использовать эти резервные копии для восстановления данных в новой базе данных.
О резервных копиях
Резервное копирование является последовательной копией базы данных в определенный момент времени. Резервное копирование содержит все конфигурации данных и индекса на тот момент. Резервное копирование не содержит времени базы данных для жизни политики . Резервное копирование находится в том же месте, что и исходная база данных.
Резервные копии имеют настраиваемый период хранения и хранятся до истечения периода хранения или до тех пор, пока вы не удалите резервную копию. Удаление исходной базы данных не автоматически удаляет соответствующие резервные копии.
Cloud Firestore хранит метаданные, связанные с резервными копиями и графиками резервного копирования, связанных с базой данных. Cloud Firestore сохраняет эти метаданные до тех пор, пока все резервные копии для базы данных не истекают или не будут удалены.
Создание или удержание резервных копий не влияет на производительность чтения или записи в вашей базе данных.
Затраты
Когда вы используете резервные копии, вам платят на следующее:
- Количество хранилища, используемое каждой резервной копией.
- Для операции восстановления вас взимают плату в зависимости от размера резервной копии.
Для получения более подробной информации и точных ставок см. Страницу ценообразования .
Прежде чем начать
Эта функция требует плана ценообразования пламени .Требуемые роли
Чтобы получить разрешения, необходимые для управления резервными копиями и графиками резервного копирования, попросите вашего администратора предоставить вам одну или несколько из следующих ролей личности и управления доступом:
-
roles/datastore.owner
: полный доступ к базе данных Cloud Firestore Следующие роли также доступны, но не видны в облачной консоли Google. Используйте Google Cloud CLI , чтобы назначить эти роли:
-
roles/datastore.backupsAdmin
: прочитать и записать доступ к резервным копиям -
roles/datastore.backupsViewer
: прочитать доступ к резервным копиям -
roles/datastore.backupSchedulesAdmin
: прочитать и записать доступ к расписанию резервного копирования -
roles/datastore.backupSchedulesViewer
: прочитать доступ к графикам резервного копирования -
roles/datastore.restoreAdmin
: разрешения на инициирование операций восстановления
-
Создать и управлять графиками резервного копирования
Примеры ниже демонстрируют, как настроить график резервного копирования. Для каждой базы данных вы можете настроить до одного ежедневного расписания резервного копирования и до одного еженедельного расписания резервного копирования. Вы не можете настроить несколько еженедельных расписаний резервного копирования на разные дни недели.
Вы не можете настроить точное время дня резервной копии. Резервные копии принимаются в разное время каждый день. Для еженедельных графиков резервного копирования вы можете настроить день недели, чтобы сделать резервную копию.
Создать график резервного копирования
Используйте один из следующих инструментов для создания графика резервного копирования.
Создать ежедневный график резервного копирования
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Выберите флажок Daily , установите период хранения, а затем нажмите «Сохранить» .
gcloud firestore backups schedules create
. Чтобы создать ежедневный график резервного копирования, установите флаг --recurrence
daily
:gcloud firestore backups schedules create \ --database='DATABASE_ID ' \ --recurrence=daily \ --retention=RETENTION_PERIOD
Замените следующее:
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите это на значение до 14 недель (
14w
).
firebase firestore:databases:backups:schedules
Command. Чтобы создать ежедневный график резервного копирования, установите флаг --recurrence
DAILY
:firebase firestore:backups:schedules:create \ --database 'DATABASE_ID ' \ --recurrence 'DAILY' \ --retentionRETENTION_PERIOD
Замените следующее:
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите это на значение до 14 недель (
14w
).
google_firestore_backup_schedule
.resource "google_firestore_backup_schedule" "daily-backup" { project =PROJECT_ID database =DATABASE_ID retention =RETENTION_PERIOD_SECONDS daily_recurrence {} }
Замените следующее:
- PROJECT_ID : идентификатор проекта.
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. Вы также можете использовать ссылку на ресурс на ресурс Terraform типа - RETENTION_PERIOD_SECONDS : установить это на значение за секунды, за которым следует «s». Максимальное значение составляет
8467200s
с (14 недель).
google_firestore_database
.Создать еженедельный график резервного копирования
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Выберите еженедельный флажок, выберите День резервного копирования, установите период хранения и нажмите «Сохранить» .
--recurrence
на weekly
:gcloud firestore backups schedules create \ --database='DATABASE_ID ' \ --recurrence=weekly \ --retention=RETENTION_PERIOD \ --day-of-week=DAY
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите это на значение до 14 недель (
14w
). - DAY : День недели, чтобы сделать резервную копию. Установить на одно из следующих:
-
SUN
в воскресенье -
MON
на понедельник -
TUE
на вторник -
WED
в среду -
THU
в четверг -
FRI
на пятницу -
SAT
в субботу
-
--recurrence
на WEEKLY
:firebase firestore:backups:schedules:create \ --database 'DATABASE_ID ' \ --recurrence 'WEEKLY' \ --retentionRETENTION_PERIOD --day-of-weekDAY
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите это на значение до 14 недель (
14w
). - DAY : День недели, чтобы сделать резервную копию. Установить на одно из следующих:
-
SUNDAY
на воскресенье -
MONDAY
на понедельник -
TUESDAY
на вторник -
WEDNESDAY
на среду -
THURSDAY
на четверг -
FRIDAY
на пятницу -
SATURDAY
на субботу
-
google_firestore_backup_schedule
.resource "google_firestore_backup_schedule" "weekly-backup" { project =PROJECT_ID database =DATABASE_ID retention =RETENTION_PERIOD_SECONDS weekly_recurrence { day =DAY } }
Замените следующее:
- PROJECT_ID : идентификатор проекта.
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. Вы также можете использовать ссылку на ресурс на ресурс Terraform типа - RETENTION_PERIOD_SECONDS : установить это на значение за секунды, за которым следует «s». Максимальное значение составляет
8467200s
с (14 недель). - DAY : День недели, чтобы сделать резервную копию. Установить на одно из следующих:
-
SUNDAY
на воскресенье -
MONDAY
на понедельник -
TUESDAY
на вторник -
WEDNESDAY
на среду -
THURSDAY
на четверг -
FRIDAY
на пятницу -
SATURDAY
на субботу
-
google_firestore_database
.Список графиков резервного копирования
Чтобы перечислить все графики резервного копирования для базы данных, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
gcloud firestore backups schedules list
.gcloud firestore backups schedules list \ --database='DATABASE_ID '
'(default)'
для базы данных по умолчанию.firebase firestore:backups:schedules:list
команды.firebase firestore:backups:schedules:list \ --database 'DATABASE_ID '
'(default)'
для базы данных по умолчанию.Опишите график резервного копирования
Чтобы получить информацию о расписании резервного копирования, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
gcloud firestore backups schedules describe
команду:gcloud firestore backups schedules describe \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор графика резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при перечислении всех графиков резервного копирования .
Обновить график резервного копирования
Чтобы обновить период хранения графика резервного копирования, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированного резервного копирования нажмите либо резервное копирование , либо настройки редактирования .
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Отредактируйте настройки расписания резервного копирования, а затем нажмите «Сохранить» .
gcloud firestore backups schedules update
:gcloud firestore backups schedules update \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID \ --retention=RETENTION_PERIOD
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор графика резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при перечислении всех графиков резервного копирования .
- RETENTION_PERIOD : установите это на значение до 14 недель (
14w
).
firebase firestore:backups:schedules:update
команда:firebase firestore:backups:schedules:update \BACKUP_SCHEDULE \ --retentionRETENTION_PERIOD
- BACKUP_SCHEDULE : полное имя ресурса графика резервного копирования. Вы можете просмотреть имя каждого расписания резервного копирования, когда вы перечислите все графики резервного копирования .
- RETENTION_PERIOD : установите это на значение до 14 недель (
14w
).
Вы можете обновить период хранения графика резервного копирования, но вы не можете обновить его повторение. Если вам нужен график резервного копирования с другим рецидивом, удалите старое расписание резервного копирования, если он больше не требуется, и создайте новый график резервного копирования с желаемым рецидивом.
Удалить график резервного копирования
Чтобы удалить график резервного копирования, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Отредактируйте настройки расписания резервного копирования, а затем нажмите «Сохранить» .
gcloud firestore backups schedules delete
:gcloud firestore backups schedules delete \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор графика резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при перечислении всех графиков резервного копирования .
firebase firestore:backups:schedules:delete
команду:firebase firestore:backups:schedules:delete \BACKUP_SCHEDULE
- BACKUP_SCHEDULE : полное имя ресурса графика резервного копирования. Вы можете просмотреть имя каждого расписания резервного копирования, когда вы перечислите все графики резервного копирования .
Обратите внимание, что удаление графика резервного копирования не удалит резервные копии, уже созданные этим расписанием. Вы можете подождать, пока они истекают после периода их сохранения или вручную удалить резервную копию, см. Удалить резервную копию .
Управление резервными копиями
Список резервных копий
Чтобы перечислить доступные резервные копии, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Отредактируйте настройки расписания резервного копирования, а затем нажмите «Сохранить» .
gcloud firestore backups list
:gcloud firestore backups list \ --format="table(name, database, state)"
--format="table(name, database, state)"
форматирует выход в более читаемый формат. Чтобы перечислить только резервные копии из определенного места, используйте флаг --location
:gcloud firestore backups list \ --location=LOCATION \ --format="table(name, database, state)"
LOCATION
с названием Cloud Firestore .firebase firestore:backups:list
Command:firebase firestore:backups:list
--location
:firebase firestore:backups:list \ --location=LOCATION
LOCATION
с названием Cloud Firestore .Опишите резервную копию
Чтобы просмотреть подробности о резервной копии, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
gcloud firestore backups describe
команду:gcloud firestore backups describe \ --location=LOCATION \ --backup=BACKUP_ID
- LOCATION : расположение базы данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждого резервного копирования при перечислении всех резервных копий .
firebase firestore:backups:get
команду:firebase firestore:backups:getBACKUP
- BACKUP : полное название ресурса резервной копии. Вы можете просмотреть имя каждого резервного копирования при перечислении всех резервных копий .
Удалить резервную копию
Чтобы удалить резервную копию, используйте один из следующих методов.
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования. Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
- В таблице резервных копий найдите строку для резервной копии и в столбце Actions , нажмите «Просмотреть больше » ( ). Нажмите Удалить .
- Подтвердите действие, используя текстовое поле и нажмите Delete .
gcloud firestore backups delete
:gcloud firestore backups delete \ --location=LOCATION \ --backup=BACKUP_ID
- LOCATION : расположение базы данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждого резервного копирования при перечислении всех резервных копий .
firebase firestore:backups:delete
команду:firebase firestore:backups:delete \BACKUP
- BACKUP : полное название ресурса резервной копии. Вы можете просмотреть имя каждого резервного копирования при перечислении всех резервных копий .
Восстановить данные из резервной копии базы данных
Операция восстановления записывает данные из резервной копии в новую базу данных Cloud Firestore .
Чтобы начать работу восстановления, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования. Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
- В таблице резервных копий найдите строку для резервной копии и в столбце Actions , нажмите «Просмотреть больше » ( Cloud Shell . ). Нажмите «Восстановить с помощью
Панель Cloud Shell открывается командой gcloud CLI для восстановления из выбранной резервной копии. Замените ID_OF_NEW_DATABASE на идентификатор для базы данных и запустите команду.
Запуск команды возвращает ответ с дополнительной информацией об операции. База данных вскоре появляется в вашем списке баз данных. Операция восстановления займет некоторое время и должна завершить до доступности базы данных.
gcloud firestore databases restore
:gcloud firestore databases restore \ --source-backup=projects/PROJECT_ID /locations/LOCATION /backups/BACKUP_ID \ --destination-database='DATABASE_ID '
- PROJECT_ID : ваш идентификатор проекта.
- LOCATION : расположение резервного копирования базы данных и местоположение новой базы данных, созданной для восстановленных данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждого резервного копирования при перечислении всех резервных копий .
- DATABASE_ID : идентификатор базы данных для новой базы данных. Вы не можете использовать идентификатор базы данных, который уже используется.
metadata
, name
и компоненты response
:metadata: '@type': type.googleapis.com/google.firestore.admin.v1.RestoreDatabaseMetadata backup: projects/PROJECT_ID /locations/LOCATION /backups/BACKUP_ID database: projects/PROJECT_ID /databases/DATABASE_ID operationState: PROCESSING progressPercentage: completedWork: '20' estimatedWork: '100' startTime: '2023-12-06T14:20:17.398325Z' name: projects/PROJECT_ID /databases/DATABASE_ID /operations/operation_uuid response: '@type': type.googleapis.com/google.firestore.admin.v1.Database createTime: '2023-12-06T14:20:17.398325Z' name: projects/PROJECT_ID /databases/DATABASE_ID ...
metadata
включает в себя компонент progressPercentage
, подробно описывающий оценочный прогресс восстановления до настоящего времени, а также operationState
указывающий общее состояние восстановления. Чтобы снова получить эту информацию, используйте gcloud firestore operations list
:gcloud firestore operations list --database=DATABASE_ID
name
из вывода, описанного выше, с gcloud firestore operations describe
: gcloud firestore operations describeOPERATION_NAME
firebase firestore:databases:restore
:firebase firestore:databases:restore \ --backup 'BACKUP ' \ --database 'DATABASE_ID '
- BACKUP : полное название ресурса резервной копии. Вы можете просмотреть имя каждого резервного копирования при перечислении всех резервных копий .
- DATABASE_ID : идентификатор базы данных для новой базы данных. Вы не можете использовать идентификатор базы данных, который уже используется.
На этой странице описывается, как использовать функцию запланированного резервного копирования Cloud Firestore . Используйте резервные копии для защиты ваших данных от повреждения данных на уровне приложения или от случайного удаления данных.
Резервные копии позволяют настроить графики резервного копирования для ежедневного или еженедельного резервного копирования указанной базы данных. Затем вы можете использовать эти резервные копии для восстановления данных в новой базе данных.
О резервных копиях
Резервное копирование является последовательной копией базы данных в определенный момент времени. Резервное копирование содержит все конфигурации данных и индекса на тот момент. Резервное копирование не содержит времени базы данных для жизни политики . Резервное копирование находится в том же месте, что и исходная база данных.
Резервные копии имеют настраиваемый период хранения и хранятся до истечения периода хранения или до тех пор, пока вы не удалите резервную копию. Удаление исходной базы данных не автоматически удаляет соответствующие резервные копии.
Cloud Firestore хранит метаданные, связанные с резервными копиями и графиками резервного копирования, связанных с базой данных. Cloud Firestore сохраняет эти метаданные до тех пор, пока все резервные копии для базы данных не истекают или не будут удалены.
Создание или удержание резервных копий не влияет на производительность чтения или записи в вашей базе данных.
Затраты
Когда вы используете резервные копии, вам платят на следующее:
- Количество хранилища, используемое каждой резервной копией.
- Для операции восстановления вас взимают плату в зависимости от размера резервной копии.
Для получения более подробной информации и точных ставок см. Страницу ценообразования .
Прежде чем начать
Эта функция требует плана ценообразования пламени .Требуемые роли
Чтобы получить разрешения, необходимые для управления резервными копиями и графиками резервного копирования, попросите вашего администратора предоставить вам одну или несколько из следующих ролей личности и управления доступом:
-
roles/datastore.owner
: полный доступ к базе данных Cloud Firestore Следующие роли также доступны, но не видны в облачной консоли Google. Используйте Google Cloud CLI , чтобы назначить эти роли:
-
roles/datastore.backupsAdmin
: прочитать и записать доступ к резервным копиям -
roles/datastore.backupsViewer
: прочитать доступ к резервным копиям -
roles/datastore.backupSchedulesAdmin
: прочитать и записать доступ к расписанию резервного копирования -
roles/datastore.backupSchedulesViewer
: прочитать доступ к графикам резервного копирования -
roles/datastore.restoreAdmin
: разрешения на инициирование операций восстановления
-
Создать и управлять графиками резервного копирования
Примеры ниже демонстрируют, как настроить график резервного копирования. Для каждой базы данных вы можете настроить до одного ежедневного расписания резервного копирования и до одного еженедельного расписания резервного копирования. Вы не можете настроить несколько еженедельных расписаний резервного копирования на разные дни недели.
Вы не можете настроить точное время дня резервной копии. Резервные копии принимаются в разное время каждый день. Для еженедельных графиков резервного копирования вы можете настроить день недели, чтобы сделать резервную копию.
Создать график резервного копирования
Используйте один из следующих инструментов для создания графика резервного копирования.
Создать ежедневный график резервного копирования
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Выберите флажок Daily , установите период хранения, а затем нажмите «Сохранить» .
gcloud firestore backups schedules create
. Чтобы создать ежедневный график резервного копирования, установите флаг --recurrence
daily
:gcloud firestore backups schedules create \ --database='DATABASE_ID ' \ --recurrence=daily \ --retention=RETENTION_PERIOD
Замените следующее:
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите это на значение до 14 недель (
14w
).
firebase firestore:databases:backups:schedules
Command. Чтобы создать ежедневный график резервного копирования, установите флаг --recurrence
DAILY
:firebase firestore:backups:schedules:create \ --database 'DATABASE_ID ' \ --recurrence 'DAILY' \ --retentionRETENTION_PERIOD
Замените следующее:
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите это на значение до 14 недель (
14w
).
google_firestore_backup_schedule
.resource "google_firestore_backup_schedule" "daily-backup" { project =PROJECT_ID database =DATABASE_ID retention =RETENTION_PERIOD_SECONDS daily_recurrence {} }
Замените следующее:
- PROJECT_ID : идентификатор проекта.
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. Вы также можете использовать ссылку на ресурс на ресурс Terraform типа - RETENTION_PERIOD_SECONDS : установить это на значение за секунды, за которым следует «s». Максимальное значение составляет
8467200s
с (14 недель).
google_firestore_database
.Создать еженедельный график резервного копирования
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Выберите еженедельный флажок, выберите День резервного копирования, установите период хранения и нажмите «Сохранить» .
--recurrence
на weekly
:gcloud firestore backups schedules create \ --database='DATABASE_ID ' \ --recurrence=weekly \ --retention=RETENTION_PERIOD \ --day-of-week=DAY
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите это на значение до 14 недель (
14w
). - DAY : День недели, чтобы сделать резервную копию. Установить на одно из следующих:
-
SUN
в воскресенье -
MON
на понедельник -
TUE
на вторник -
WED
в среду -
THU
в четверг -
FRI
на пятницу -
SAT
в субботу
-
--recurrence
на WEEKLY
:firebase firestore:backups:schedules:create \ --database 'DATABASE_ID ' \ --recurrence 'WEEKLY' \ --retentionRETENTION_PERIOD --day-of-weekDAY
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - RETENTION_PERIOD : установите это на значение до 14 недель (
14w
). - DAY : День недели, чтобы сделать резервную копию. Установить на одно из следующих:
-
SUNDAY
на воскресенье -
MONDAY
на понедельник -
TUESDAY
на вторник -
WEDNESDAY
на среду -
THURSDAY
на четверг -
FRIDAY
на пятницу -
SATURDAY
на субботу
-
google_firestore_backup_schedule
.resource "google_firestore_backup_schedule" "weekly-backup" { project =PROJECT_ID database =DATABASE_ID retention =RETENTION_PERIOD_SECONDS weekly_recurrence { day =DAY } }
Замените следующее:
- PROJECT_ID : идентификатор проекта.
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. Вы также можете использовать ссылку на ресурс на ресурс Terraform типа - RETENTION_PERIOD_SECONDS : установить это на значение за секунды, за которым следует «s». Максимальное значение составляет
8467200s
с (14 недель). - DAY : День недели, чтобы сделать резервную копию. Установить на одно из следующих:
-
SUNDAY
на воскресенье -
MONDAY
на понедельник -
TUESDAY
на вторник -
WEDNESDAY
на среду -
THURSDAY
на четверг -
FRIDAY
на пятницу -
SATURDAY
на субботу
-
google_firestore_database
.Список графиков резервного копирования
Чтобы перечислить все графики резервного копирования для базы данных, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
gcloud firestore backups schedules list
.gcloud firestore backups schedules list \ --database='DATABASE_ID '
'(default)'
для базы данных по умолчанию.firebase firestore:backups:schedules:list
команды.firebase firestore:backups:schedules:list \ --database 'DATABASE_ID '
'(default)'
для базы данных по умолчанию.Опишите график резервного копирования
Чтобы получить информацию о расписании резервного копирования, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
gcloud firestore backups schedules describe
команду:gcloud firestore backups schedules describe \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор графика резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при перечислении всех графиков резервного копирования .
Обновить график резервного копирования
Чтобы обновить период хранения графика резервного копирования, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированного резервного копирования нажмите либо резервное копирование , либо настройки редактирования .
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Отредактируйте настройки расписания резервного копирования, а затем нажмите «Сохранить» .
gcloud firestore backups schedules update
:gcloud firestore backups schedules update \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID \ --retention=RETENTION_PERIOD
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор графика резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при перечислении всех графиков резервного копирования .
- RETENTION_PERIOD : установите это на значение до 14 недель (
14w
).
firebase firestore:backups:schedules:update
команда:firebase firestore:backups:schedules:update \BACKUP_SCHEDULE \ --retentionRETENTION_PERIOD
- BACKUP_SCHEDULE : полное имя ресурса графика резервного копирования. Вы можете просмотреть имя каждого расписания резервного копирования, когда вы перечислите все графики резервного копирования .
- RETENTION_PERIOD : установите это на значение до 14 недель (
14w
).
Вы можете обновить период хранения графика резервного копирования, но вы не можете обновить его повторение. Если вам нужен график резервного копирования с другим рецидивом, удалите старое расписание резервного копирования, если он больше не требуется, и создайте новый график резервного копирования с желаемым рецидивом.
Удалить график резервного копирования
Чтобы удалить график резервного копирования, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Отредактируйте настройки расписания резервного копирования, а затем нажмите «Сохранить» .
gcloud firestore backups schedules delete
:gcloud firestore backups schedules delete \ --database='DATABASE_ID ' \ --backup-schedule=BACKUP_SCHEDULE_ID
- DATABASE_ID : идентификатор базы данных для резервного копирования. Установите на
'(default)'
для базы данных по умолчанию. - BACKUP_SCHEDULE_ID : идентификатор графика резервного копирования. Вы можете просмотреть идентификатор каждого расписания резервного копирования при перечислении всех графиков резервного копирования .
firebase firestore:backups:schedules:delete
команду:firebase firestore:backups:schedules:delete \BACKUP_SCHEDULE
- BACKUP_SCHEDULE : полное имя ресурса графика резервного копирования. Вы можете просмотреть имя каждого расписания резервного копирования, когда вы перечислите все графики резервного копирования .
Обратите внимание, что удаление графика резервного копирования не удалит резервные копии, уже созданные этим расписанием. Вы можете подождать, пока они истекают после периода их сохранения или вручную удалить резервную копию, см. Удалить резервную копию .
Управление резервными копиями
Список резервных копий
Чтобы перечислить доступные резервные копии, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Нажмите «Редактировать» , чтобы редактировать настройки аварийного восстановления.
- Отредактируйте настройки расписания резервного копирования, а затем нажмите «Сохранить» .
gcloud firestore backups list
:gcloud firestore backups list \ --format="table(name, database, state)"
--format="table(name, database, state)"
форматирует выход в более читаемый формат. Чтобы перечислить только резервные копии из определенного места, используйте флаг --location
:gcloud firestore backups list \ --location=LOCATION \ --format="table(name, database, state)"
LOCATION
с названием Cloud Firestore .firebase firestore:backups:list
Command:firebase firestore:backups:list
--location
:firebase firestore:backups:list \ --location=LOCATION
LOCATION
с названием Cloud Firestore .Опишите резервную копию
Чтобы просмотреть подробности о резервной копии, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования.
- Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
gcloud firestore backups describe
команду:gcloud firestore backups describe \ --location=LOCATION \ --backup=BACKUP_ID
- LOCATION : расположение базы данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждого резервного копирования при перечислении всех резервных копий .
firebase firestore:backups:get
команду:firebase firestore:backups:getBACKUP
- BACKUP : полное название ресурса резервной копии. Вы можете просмотреть имя каждого резервного копирования при перечислении всех резервных копий .
Удалить резервную копию
Чтобы удалить резервную копию, используйте один из следующих методов.
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. В столбце запланированных резервных копий нажмите либо резервные копии , либо настройки редактирования , в зависимости от того, существует ли график резервного копирования. Откроется страница аварийного восстановления . На этой странице описываются графики резервного копирования и списки доступных резервных копий.
- В таблице резервных копий найдите строку для резервной копии и в столбце Actions , нажмите «Просмотреть больше » ( ). Нажмите Удалить .
- Подтвердите действие, используя текстовое поле и нажмите Delete .
gcloud firestore backups delete
:gcloud firestore backups delete \ --location=LOCATION \ --backup=BACKUP_ID
- LOCATION : расположение базы данных.
- BACKUP_ID : идентификатор резервной копии. Вы можете просмотреть идентификатор каждого резервного копирования при перечислении всех резервных копий .
firebase firestore:backups:delete
команду:firebase firestore:backups:delete \BACKUP
- BACKUP : полное название ресурса резервной копии. Вы можете просмотреть имя каждого резервного копирования при перечислении всех резервных копий .
Восстановить данные из резервной копии базы данных
Операция восстановления записывает данные из резервной копии в новую базу данных Cloud Firestore .
Чтобы начать работу восстановления, используйте один из следующих методов:
В консоли Cloud Google перейдите на страницу баз данных .
- В списке баз данных найдите строку для базы данных. In the Scheduled backups column click either View backups or Edit settings , depending on whether a backup schedule exists. The Disaster recovery page opens. This page describes backup schedules and lists available backups.
- In the Backups table, find the row for a backup and in the Actions column, click View more ( Cloud Shell . ). Click Restore with
The Cloud Shell panel opens with a gcloud CLI command to restore from the selected backup. Replace ID_OF_NEW_DATABASE with an ID for the database and run the command.
Running the command returns a response with more information about the operation. The database soon appears in your list of databases. The restore operation will take some time and must complete before the database is accessible.
gcloud firestore databases restore
command:gcloud firestore databases restore \ --source-backup=projects/PROJECT_ID /locations/LOCATION /backups/BACKUP_ID \ --destination-database='DATABASE_ID '
- PROJECT_ID : Your project ID.
- LOCATION : The location of the database backup and the location of the new database created for the restored data.
- BACKUP_ID : The ID of a backup. You can view the ID of each backup when you list all backups .
- DATABASE_ID : A database ID for the new database. You cannot use a database ID that is already in use.
metadata
, name
, and response
components:metadata: '@type': type.googleapis.com/google.firestore.admin.v1.RestoreDatabaseMetadata backup: projects/PROJECT_ID /locations/LOCATION /backups/BACKUP_ID database: projects/PROJECT_ID /databases/DATABASE_ID operationState: PROCESSING progressPercentage: completedWork: '20' estimatedWork: '100' startTime: '2023-12-06T14:20:17.398325Z' name: projects/PROJECT_ID /databases/DATABASE_ID /operations/operation_uuid response: '@type': type.googleapis.com/google.firestore.admin.v1.Database createTime: '2023-12-06T14:20:17.398325Z' name: projects/PROJECT_ID /databases/DATABASE_ID ...
metadata
field includes a progressPercentage
component, detailing the estimated progress of the restore thus far, and an operationState
specifying the overall state of the restore. To retrieve this information again, use gcloud firestore operations list
:gcloud firestore operations list --database=DATABASE_ID
name
field from the output described above, with gcloud firestore operations describe
: gcloud firestore operations describeOPERATION_NAME
firebase firestore:databases:restore
command:firebase firestore:databases:restore \ --backup 'BACKUP ' \ --database 'DATABASE_ID '
- BACKUP : The full resource name of a backup. You can view the name of each backup when you list all backups .
- DATABASE_ID : A database ID for the new database. You cannot use a database ID that is already in use.