Google云sql:如何导入postgres数据库?
Google cloud sql: How to import postgres database?
我有一个位于 运行 的 Postgresql 数据库,我想将其导入 Google 云 SQL。我的数据库名为 test
,归用户 test
所有
我采取的步骤:
- 创建云 SQL 实例
在云端创建数据库SQL实例:
curl --header "Authorization: Bearer XXXXX" \
--header 'Content-Type: application/json' \
--data '{"project": "YYYYYY", "instance": "dev", "name": "test"}' \
https://www.googleapis.com/sql/v1beta4/projects/YYYYYY/instances/dev/databases-XPOST
已创建 test
用户:
gcloud beta sql users create test host --instance=dev --password=test
- 使用
pg_dump
从源数据库转储数据库
- 尝试恢复...遇到此错误:
ERROR: must be member of role test
那么如何在 test
用户下执行导入?
回答我自己的问题...
只需使用 --no-acl --no-owner
和 pg_dump
来删除所有所有权变更,它就会起作用。
我有一个位于 运行 的 Postgresql 数据库,我想将其导入 Google 云 SQL。我的数据库名为 test
,归用户 test
我采取的步骤:
- 创建云 SQL 实例
在云端创建数据库SQL实例:
curl --header "Authorization: Bearer XXXXX" \ --header 'Content-Type: application/json' \ --data '{"project": "YYYYYY", "instance": "dev", "name": "test"}' \
https://www.googleapis.com/sql/v1beta4/projects/YYYYYY/instances/dev/databases-XPOST
已创建
test
用户:gcloud beta sql users create test host --instance=dev --password=test
- 使用
pg_dump
从源数据库转储数据库
- 尝试恢复...遇到此错误:
ERROR: must be member of role test
那么如何在 test
用户下执行导入?
回答我自己的问题...
只需使用 --no-acl --no-owner
和 pg_dump
来删除所有所有权变更,它就会起作用。