首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Postgres升级后数据库从11升级到12

Postgres升级后数据库从11升级到12
EN

Database Administration用户
提问于 2020-07-10 13:08:32
回答 1查看 749关注 0票数 0

这不是我的第一次升级。在过去,我从9级升级到10级,10级升级到11级,我以为上次我把所有的东西都写下来了,但显然没有。在verion 11中,我的数据库是nl_BE.utf-8的:

代码语言:javascript
运行
复制
                              List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |
-----------+----------+----------+-------------+-------------+
 glewlwyd  | glewlwyd | UTF8     | nl_BE.utf-8 | nl_BE.utf-8 |
 postgres  | postgres | UTF8     | nl_BE.utf-8 | nl_BE.utf-8 | 
 prda      | postgres | UTF8     | nl_BE.utf-8 | nl_BE.utf-8 |
 template0 | postgres | UTF8     | nl_BE.UTF-8 | nl_BE.UTF-8 |
 template1 | postgres | UTF8     | nl_BE.utf-8 | nl_BE.utf-8 |

(5 rows)

安装(apt-get install postgresql-12)之后,我修改/etc/postgresql/12/main/postgresql.conf并将en_US.UTF-8更改为nl_BE.UTF-8。在以前的升级中,我将这个文件复制到我的数据目录中,但是12似乎不喜欢这个文件。11和12版本的端口号不同。

当我使用/usr/lib/postgresql/12/bin/initdb --locale=nl_BE.UTF-8 --pgdata=/srv/postgres/data/12创建数据库时,将创建新实例,但数据库位于en_US.UTF-8中。/usr/lib/postgresql/12/bin/pg_upgrade -b /usr/lib/postgresql/11/bin -B /usr/lib/postgresql/12/bin -d /srv/postgres/data/11 -D /srv/postgres/data/12结束时没有出现错误。

当我连接到实例时,我自己的数据库就不存在了。必须是因为区域设置不正确。我还更改了shell的区域设置(export LANG=nl_BE.UTF-8),但这没有帮助。我能做错什么呢?

EN

回答 1

Database Administration用户

回答已采纳

发布于 2020-07-10 14:47:42

我跟随@Colin的评论,解决了问题。用pg_upgradecluster -v 12 11 main /srv/postgres/data/12进行了升级。我将端口更改为5432并重新启动它。现在我的应用程序正在使用版本12的数据库。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/270732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档