![](/img/trans.png)
[英]How to restore postgres 12 generated sql file into postgres 9.6 database
[英]Database dump and restore from AWS postgres-9.6.6 database to Google Cloud SQL (also postgres-9.6)
我已經按照從外部管理的數據庫服務器導出數據中的說明轉儲了數據庫:
pg_dump -U [USERNAME] --format=plain --no-owner \
--no-acl [DATABASE_NAME] \
| sed -E 's/(DROP|CREATE|COMMENT ON) EXTENSION/-- \1 EXTENSION/g' > [SQL_FILE].sql
我從中轉儲的數據庫正在運行PostgreSQL 9.6.6。 Google Cloud SQL也使用9.6。
然后,我已將db-dump復制到存儲桶中,並嘗試按此處所述還原它。
這會從cloud.google.com的網絡界面產生以下錯誤消息:
知道我該如何解決嗎?
您缺少pgcrypto擴展名。 sed的后處理會注釋掉SQL轉儲文件中的所有擴展語句。 您需要取消注釋必要的和cloud sql支持的擴展,例如pgcrypto,並僅保留不支持的注釋。 您可以在https://cloud.google.com/sql/docs/postgres/extensions中找到有關supporee擴展的信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.