首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装Postgresql 9.6而不是Postgresql 12

安装Postgresql 9.6而不是Postgresql 12
EN

Ask Ubuntu用户
提问于 2020-04-21 10:40:41
回答 2查看 1.8K关注 0票数 2

我在运行Ubuntu 18.04。当我想安装PostgreSQL数据库服务器包时,我会得到默认版本12。

我没有成功地尝试遵循关于如何安装所需版本9.6的多个说明。

代码语言:javascript
复制
# cat /etc/apt/sources.list.d/pgdg.list  
deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main  
代码语言:javascript
复制
# sudo apt-get install postgresql-9.6
Reading package lists... Done      
Building dependency tree    
Reading state information... Done    
The following additional packages will be installed:    
  postgresql-contrib-9.6  
Suggested packages:  
  libdbd-pg-perl  
The following NEW packages will be installed:  
  postgresql-9.6 postgresql-contrib-9.6  
0 upgraded, 2 newly installed, 0 to remove and 3 not upgraded.  
Need to get 0 B/4,827 kB of archives.  
After this operation, 23.9 MB of additional disk space will be used.  
Do you want to continue? [Y/n] y  
Preconfiguring packages ...  
Selecting previously unselected package postgresql-9.6.  
(Reading database ... 70763 files and directories currently installed.)  
Preparing to unpack .../postgresql-9.6_9.6.17-2.pgdg18.04+1_amd64.deb ...  
Unpacking postgresql-9.6 (9.6.17-2.pgdg18.04+1) ...  
Selecting previously unselected package postgresql-contrib-9.6.  
Preparing to unpack .../postgresql-contrib-9.6_9.6.17-2.pgdg18.04+1_amd64.deb ...  
Unpacking postgresql-contrib-9.6 (9.6.17-2.pgdg18.04+1) ...  
Setting up postgresql-9.6 (9.6.17-2.pgdg18.04+1) ...  
Setting up postgresql-contrib-9.6 (9.6.17-2.pgdg18.04+1) ...  
Processing triggers for postgresql-common (213.pgdg18.04+1) ...  
Building PostgreSQL dictionaries from installed myspell/hunspell packages...  
Removing obsolete dictionary files:  
代码语言:javascript
复制
# service postgresql start
代码语言:javascript
复制
# su postgres 
postgres@ubuntu-vm-template:~$ psql
psql (12.2 (Ubuntu 12.2-2.pgdg18.04+1))  
Type "help" for help.  

postgres=# SELECT version();
                                                              version  
-----------------------------------------------------------------------------------------------------------------------------------  
 PostgreSQL 12.2 (Ubuntu 12.2-2.pgdg18.04+1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0, 64-bit  
(1 row)  
代码语言:javascript
复制
root@ubuntu-vm-template:~# dpkg -l|grep -i postgres
ii  libpq-dev                             12.2-2.pgdg18.04+1                              amd64        header files for libpq5 (PostgreSQL library)
ii  libpq5:amd64                          12.2-2.pgdg18.04+1                              amd64        PostgreSQL C client library
ii  pgdg-keyring                          2018.2                                          all          keyring for apt.postgresql.org
ii  postgresql-12                         12.2-2.pgdg18.04+1                              amd64        object-relational SQL database, version 12 server
ii  postgresql-9.6                        9.6.17-2.pgdg18.04+1                            amd64        object-relational SQL database, version 9.6 server
ii  postgresql-client-12                  12.2-2.pgdg18.04+1                              amd64        front-end programs for PostgreSQL 12
ii  postgresql-client-9.6                 9.6.17-2.pgdg18.04+1                            amd64        front-end programs for PostgreSQL 9.6
ii  postgresql-client-common              213.pgdg18.04+1                                 all          manager for multiple PostgreSQL client versions
ii  postgresql-common                     213.pgdg18.04+1                                 all          PostgreSQL database-cluster manager
ii  postgresql-contrib                    12+213.pgdg18.04+1                              all          additional facilities for PostgreSQL (supported version)
ii  postgresql-contrib-9.6                9.6.17-2.pgdg18.04+1                            amd64        additional facilities for PostgreSQL

我的问题

apt安装的输出为"9.6“。为什么SELECT version();的输出不这样做呢?

EN

回答 2

Ask Ubuntu用户

发布于 2020-04-21 16:17:26

Ubuntu确实支持同时运行的多个PostgreSQL实例,可能有不同的版本,但它需要一些手动管理。

一旦完成了apt-get install postgresql-9.6,就安装了PostgreSQL 9.6二进制文件,但是要有一个实际运行的实例/服务,需要这样的命令:

代码语言:javascript
复制
$ sudo pg_createcluster 9.6 main

有关更多信息,请参见pg_肌酸酯pg_星团pg_包装器手册。

如果不需要,还可以手动删除PostgreSQL 12。

票数 1
EN

Ask Ubuntu用户

发布于 2020-04-22 08:18:03

我终于在丹尼尔·韦里特的回答基础上解决了这个问题。9.6集群已经存在,postgres 12集群也已经存在。

代码语言:javascript
复制
sudo apt-get remove postgresql-12
pg_dropcluster 12 main
sudo systemctl daemon-reload

非常感谢!

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

https://askubuntu.com/questions/1229091

复制
相关文章

相似问题

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