centos pg 重启失败_[知识讲解篇-30]PostgreSQL工具-pg_ctl参数

7f88e3b7baa9a283b1f4190ec05bcc62.png

概要:

初始化、启动、停止或控制PostgreSQL服务器

pg_ctl init[db] [-s] [-D datadir] [-o initdb-options]
pg_ctl start [-w] [-t seconds] [-s] [-D datadir] [-l filename] [-o options] [-p path] [-c]
pg_ctl stop [-W] [-t seconds] [-s] [-D datadir] [-m s[mart] | f[ast] | i[mmediate] ]
pg_ctl restart [-w] [-t seconds] [-s] [-D datadir] [-c] [-m s[mart] | f[ast] | i[mmediate] ] [-o options]
pg_ctl reload [-s] [-D datadir]
pg_ctl status [-D datadir]
pg_ctl promote [-s] [-D datadir]
pg_ctl kill signal_name process_id
pg_ctl register [-N servicename] [-U username] [-P password] [-D datadir] [-S a[uto] | d[emand] ] [-w] [-t seconds] [-s] [-o options]
pg_ctl unregister [-N servicename]

参数选项:

  • -c –core-file 通过解除对核心文件的任何软资源限制,尝试允许服务器崩溃在可能的平台上生成核心文件。通过允许从发生故障的服务器进程获取堆栈跟踪,这在调试或诊断问题时非常有用。 (提高服务器的软限制[ulimit -c],尝试允许数据库实例在有异常时产生一个coredump文件,以便于问题定位和故障分析)
  • -D datadir –pgdata datadir 指定数据库配置文件的文件系统位置。如果省略,则使用环境变量PGD​​ATA。
  • -l filename –log filename 将服务器日志输出附加到filename。如果该文件不存在,则创建该文件。该的umask设置为077,那么访问日志文件默认情况下,不允许给其他用户。
  • -m mode –mode mode 指定关闭模式。mode可以是智能,快速或立即,或这三者中的一个的第一个字母。如果省略,则使用fast。
  • -o options 指定要直接传递给postgres命令的选项; 附加多个选项调用。 选项通常应该用单引号或双引号括起来,以确保它们作为一组传递。
  • -o initdb-options 指定要直接传递给initdb命令的选项。 选项通常应该用单引号或双引号括起来,以确保它们作为一组传递。
  • -p path 指定postgres可执行文件的位置。默认情况下,postgres可执行文件来自与pg_ctl相同的目录,或者失败,即硬连线安装目录。没有必要使用此选项,除非您正在做一些不寻常的事情并获得找不到postgres可执行文件的错误。 在init模式下,此选项类似地指定initdb可执行文件的位置。
  • -s –silent 仅打印错误,不打印任何信息性消息。
  • -t –timeout 等待启动或关闭完成时等待的最大秒数。默认为PGCTLTIMEOUT环境变量的值,如果未设置,则默认为60秒。
  • -V –version 打印pg_ctl版本并退出。
  • -w 等待启动或关闭完成。等待是关闭的默认选项,但不是启动。等待启动时​​,pg_ctl会反复尝试连接到服务器。等待关闭时,pg_ctl等待服务器删除其PID文件。此选项允许在启动时输入SSL密码。pg_ctl根据启动或关闭成功返回退出代码。
  • -W 不要等待启动或关闭才能完成。这是启动和重启模式的默认设置。

例子1

启动服务器

  • 启动服务器:
    pg_ctl start
  • 等待服务器接受连接然后启动服务器
    pg_ctl -w start
  • 使用5433端口启动服务器,并在不运行的情况下运行fsync
    pg_ctl -o "-F -p 5433" start

停止服务器

  • 停止服务器
    pg_ctl stop
  • -m选项指定如何关闭数据库
    pg_ctl stop -m fast

重新启动服务器

  • 重新启动服务器
    pg_ctl restart
  • 等待数据库关闭再重新启动
    pg_ctl -w restart
  • 使用5433端口并禁用fsync进行重启
    pg_ctl -o "-F -p 5433" restart

显示服务器状态 pg_ctl status

例子2

#1.查看postgres的状态信息(是否运行,PID等)
./pg_ctl status -D /usr/local/postgres/data
​
#2.关闭postgres服务器
./pg_ctl stop -D /usr/local/postgres/data
​
#3.启动postgres服务器    
./pg_ctl start -D /usr/local/postgres/data
​
#4.重启postgres服务器
./pg_ctl restart -D /usr/local/postgres/data
​
#5.初始化postgres数据
./pg_ctl initdb -D /usr/local/postgres/data
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值