我安装了最新版本的 PostgreSQL。我尝试用这个命令启动,
bin/pg_ctl start -D testDB
我收到以下错误消息。
日志:无法绑定 IPv4 套接字:地址已在使用中 提示:是否有另一个 postmaster 已在端口 5432 上运行?如果没有,请等待几秒钟后重试。 警告:无法为“localhost”创建侦听套接字 严重错误:无法创建任何 TCP/IP 套接字
看起来 ubuntu 中已经安装的 postgreSQL 占用了这个端口。我是 Linux 新手。那么我该如何终止占用此端口的进程并启动我自己的 postgreSQL 帖子主控?以及如何确保在 ubuntu 重新启动时默认的 postgreSQL 服务器不会启动?
答案1
检查 postgres 集群是否正在运行
$ pg_lsclusters
如果实例正在运行,输出将如下所示:
版本 集群 端口状态 所有者 数据目录 日志文件 9.1 main 5432 在线 postgres /var/lib/postgresql/9.1/main /var/log/postgresql/postgresql-9.1-main.log
9.1
是主版本和main
集群名称。下面的命令中请根据自己的情况进行更改。
停止实例
$ sudo pg_ctlcluster 9.1 主停止
如果它没有因为正在运行的交易而停止:
$ sudo pg_ctlcluster --force 9.1 主停止
避免下次启动时自动启动(无需卸载)
$ sudo echo manual > /etc/postgresql/9.1/main/start.conf