Rob*_*ark 8 postgresql maintenance
我用谷歌搜索并找到了这个旧网页,上面写着只是要更改目录的名称。我试过了,但没有用:
$ pg_lsclusters
Version Cluster Port Status Owner Data directory Log file
8.4 main 5432 down postgres /var/lib/postgresql/8.4/main /var/log/postgresql/postgresql-8.4-main.log
9.1 main 50420 online postgres /var/lib/postgresql/9.1/main /var/log/postgresql/postgresql-9.1-main.log$ pg_ctlcluster 9.1 main stop
$ pwd
/var/lib/postgresql/9.1
$ ls
main
$ mv main oldmain
$ pg_ctlcluster 9.1 oldmain start
Error: specified cluster does not exist
Run Code Online (Sandbox Code Playgroud)
PostgreSQL 9.1.4,Ubuntu 11.10
Erw*_*ter 10
更新:postgresl-common
包的版本 166添加了pg_renamecluster
. 请参阅Ilya对此的新回答。
在旧版本(包括 Ubuntu 11.10 上的 Postgres 9.1.4)中,集群名称绑定到 Martin Pitt 引入的“多版本/多集群 PostgreSQL 架构”中的数据目录名称。这是随 Debian 软件包(Debian、Ubuntu 和相关发行版)一起提供的。有关架构的详细说明,请参阅:
/usr/share/doc/postgresql-common/README.Debian.gz
Run Code Online (Sandbox Code Playgroud)
其他安装不具备所有这些功能,因此当您谈论集群名称时,有些人可能会感到困惑。
仅重命名数据目录不起作用,因为您必须相应地更改目录/etc/postgresql/<version>/<cluster>
。
并且您的 中有几个设置postgresql.conf
也必须进行调整。在目录中运行 grep 以查看:
postgres@db:/etc/postgresql/9.1/main$ grep 'main' ./*
Run Code Online (Sandbox Code Playgroud)
Debian/Ubuntu 有一个pg_renamecluster
命令(在“postgresql-common”包中可用),它可以满足您的需求:
postgresql.conf
.手册页。
Systemd 用户注意:生成器用于为每个 PostgreSQL 集群创建单元文件(即服务)。所以在pg_renamecluster
你应该重新加载 Systemd 配置之后,启用并启动新服务:
sudo systemctl daemon-reload
sudo systemctl enable postgresql@<version>-<new cluster name>.service
sudo systemctl start postgresql
归档时间: |
|
查看次数: |
8371 次 |
最近记录: |