我按照找到的说明将我的 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 手动启动(这很容易 # 规避,仅用于提供小范围的保护 # 事故)。