加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

无法将PostgreSQL10转储导入9.6数据库

发布时间:2020-12-13 16:15:19 所属栏目:百科 来源:网络整理
导读:我需要以某种方式将v10转储文件转换为9.6兼容的文件 Google的Cloud SQL运行PostgreSQL版本9.6,我的数据库自创建以来一直在版本10上运行. 问题:当尝试将数据库导入Cloud SQL时,我发现了一个未知错误.死亡的消息. 我在导入到Cloud SQL时已经尝试过评论我的pos
我需要以某种方式将v10转储文件转换为9.6兼容的文件

Google的Cloud SQL运行PostgreSQL版本9.6,我的数据库自创建以来一直在版本10上运行.

问题:当尝试将数据库导入Cloud SQL时,我发现了一个未知错误.死亡的消息.

我在导入到Cloud SQL时已经尝试过评论我的postgis /其他扩展,但无济于事.

我尝试过使用psql my_96_db< my_10.sql并得到如下的大量错误:

...
CREATE TABLE
ERROR:  syntax error at or near "AS"
LINE 2:     AS integer
            ^
ERROR:  relation "authentication_phonecontact_id_seq" does not exist
CREATE TABLE
...

我已尝试在我的v10 pg_dump -Fc命令中使用postgres 9.6的pg_restore,但它无法成功导入9.6数据库.输出中许多失败之一的一个例子是

pg_restore: [archiver (db)] could not execute query: ERROR:  relation "public.authentication_referral_id_seq" does not exist
LINE 1: SELECT pg_catalog.setval('public.authentication_referral_id_...
                                 ^
    Command was: SELECT pg_catalog.setval('public.authentication_referral_id_seq',1,false);
从您显示的错误消息判断,您必须编辑SQL转储并从所有CREATE SEQUENCE语句中删除所有出现的AS整数.

CREATE SEQUENCE的AS data_type子句是PostgreSQL v10中的新增功能,旧版本的服务器版本无法理解它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读