升级后删除旧的 postgresql?

升级后删除旧的 postgresql?

我按照找到的说明将我的 postgresql 升级到 9.3这里

当我跑步时 sudo service postgresql start

表明

 * Starting PostgreSQL 9.1 database server
   ...done.
 * Starting PostgreSQL 9.3 database server
   ...done.

我现在只想使用 9.3,(甚至不需要启动 9.1)我该怎么做?

答案1

首先检查状态,它看起来应该是这样的:

$ sudo pg_lsclusters
Ver  Cluster Port Status Owner     Data directory                Log file
9.1  main    5432 online postgres  /var/lib/postgresql/9.1/main  /var/log/postgresql/postgresql-9.1-main.log
9.3  main    5433 online postgres  /var/lib/postgresql/9.3/main  /var/log/postgresql/postgresql-9.3-main.log

停止旧版本:

sudo systemctl stop [email protected]

然后确保测试您可以达到新版本,并且您的数据确实存在(即使 pg_upgrade 没有报告错误,也请检查!)。

要删除旧版本(包括旧数据目录),请运行:

sudo apt purge postgresql-9.1

现在你应该只剩下新版本了:

$ sudo pg_lsclusters
Ver  Cluster Port Status Owner     Data directory                Log file
9.3  main    5433 online postgres  /var/lib/postgresql/9.3/main  /var/log/postgresql/postgresql-9.3-main.log

答案2

特定 PostgreSQL 集群的自动启动由其start.conf文件指定。
对于 postgresql 9.1 主集群,它是/etc/postgresql/9.1/main/start.conf

请参阅文件开头的注释:

# 自动启动配置
# auto:在初始化脚本中自动启动/停止集群
# manual:不在初始化脚本中启动/停止,但允许使用以下方式手动启动
# pg_ctlcluster
# disabled: 不允许使用 pg_ctlcluster 手动启动(这很容易
# 规避,仅用于提供小范围的保护
# 事故)。

相关内容