Какой лучший способ сделать резервную копию PostgresSQL отдельной базы данных (не экземпляра) в Google CloudSQL - PullRequest
0 голосов
/ 21 января 2020

У меня есть PostgresSQL Экземпляр в облаке Google SQL с несколькими базами данных, Требуется создать резервную копию отдельной базы данных в облачном хранилище Google. Каков будет лучший способ добиться этого?

Ответы [ 2 ]

1 голос
/ 23 января 2020

В итоге я создал облачную функцию, которая может экспортировать данные sql в облачное хранилище. Эта функция может быть запущена облачным Pub / Sub с помощью облачного планировщика

1 голос
/ 21 января 2020

Вы можете экспортировать файл дампа из своего экземпляра вместе с базой данных в корзину Cloud Storage:

Экспорт данных с использованием Cloud SQL

  1. Создание сегмента:

      gsutil mb -p [PROJECT_NAME] -l [LOCATION_NAME] gs://[BUCKET_NAME]
    
  2. Опишите экземпляр, из которого вы экспортируете:

      gcloud sql instances describe [INSTANCE_NAME]
    
  3. Скопируйте поле serviceAccountEmailAddress

  4. Добавить учетную запись службы в ACL-корзину как писатель:

      gsutil acl ch -u [SERVICE_ACCOUNT_ADDRESS]:W gs://[BUCKET_NAME]
    
  5. Экспорт базы данных:

      gcloud sql export sql [INSTANCE_NAME] gs://[BUCKET_NAME]/sqldumpfile.gz \
                          --database=[DATABASE_NAME]
    
  6. Если вам не нужно сохранять разрешения, предоставленные ACL, который вы установили ранее, удалите ACL:

      gsutil acl ch -d [SERVICE_ACCOUNT_ADDRESS] gs://[BUCKET_NAME]
    
...