正常情况下,pgsql 停止可以执行一下命令:

bin/pg_ctl stop -s -D pg_data/ -m fast

此命令和 kill -15 PID 效果相同

但是有时候 pgsql 也会抽风,无法通过正常的方式停止,这个时候我们就需要暴力拆解了

kill -9 PID 大法,没有什么进程是可以抵抗的(除了用户权限不对外,基本是遇神杀神,遇佛杀佛哦)

但是kill -9 这个方式太暴力,导致pgsql 在下次启动时,会爆出乱七八糟的错误

例如 PID 已存在的问题

FATAL:  pre-existing shared memory block (key , ID ) is still in use
HINT: If you're sure there are no old server processes still running, remove the shared memory block or just delete the file "post
master.pid".

解决方式是将 pg_data/postmaster.opts 和 pg_data/postmaster.pid 两个文件删除
因为pgsql 在启动时,会去检测是否存在这两个文件

另外在kill -9 强杀进程时,有时候也会误伤数据库的日志文件,这个时候,就会出现以下的问题

LOG:  database system was interrupted; last known up at -- :: CST
LOG: invalid record length at /1A97600
LOG: invalid primary checkpoint record
LOG: invalid record length at /1A97598
LOG: invalid secondary checkpoint record
PANIC: could not locate a valid checkpoint record
LOG: startup process (PID ) was terminated by signal : Aborted
LOG: aborting startup due to startup process failure

解决方式如下
bin/pg_resetxlog -f pg_data/
这个命令应该是恢复pgsql 的日志,有可能会造成pgsql 里面的数据丢失或者损坏,但是你在kill -9 时就应该了解这个风险。

否则呢,你就自己想明白为啥不能 kill -15 吧!!!

pgsql如何重启的更多相关文章

  1. Php7安装pdo_pgsql,pgsql扩展

    通过地址http://pecl.php.net/package/PDO_PGSQL下载PDO扩展包 找到php自带的ext目录里的pgsql库 第二步: 切换目录到pgsql 第三步: 找到phpiz ...

  2. Linux上安装postgres 10.5

    由于接触了华为的elk大数据平台,里面封装的是postgres ,就想着安装一下,熟悉一下postgres数据. 安装包下载:https://www.postgresql.org/ftp/source ...

  3. 问题解决:psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

    错误提示: psql: could not connect to server: No such file or directory Is the server running locally and ...

  4. centos7 安装pgsql

    1.添加prm安装源(或者从官网下载) PostgreSQL官网地址:https://yum.postgresql.org/ yum install https://download.postgres ...

  5. php5.5.7添加pgsql,pdo_pgsql,swoole

    一:下载php源码sudo wget cn2.php.net/distributions/php-X.X.X.tar.gz 二:解压 tar xzf /php-X.X.X.tar.gz 三:进入源码e ...

  6. 【PgSQL安装(含配置)】PostgreSQL简称PgSQL,是1980以加利福尼亚大学开发的DBMS,严格遵守标准SQL。

    [下载地址]http://www.enterprisedb.com/products-services-training/pgdownload#windows …………………………………………………… ...

  7. pg_ctl -- 启动、停止、重启 PostgreSQL

    pg_ctl 名称 pg_ctl -- 启动.停止.重启 PostgreSQL 语法 pg_ctl start [-w] [-s] [-D datadir] [-l filename] [-o opt ...

  8. pgadmin-linux-centos7.3-连接pgsql

    每次远程连接linux-centos上面的pgsql的时候,需要修改ip,命令如下: -->cd /var/lib/pgsql/data -->vi pg_hba.conf 添加ip如下, ...

  9. 【干货总结】:可能是史上最全的MySQL和PGSQL对比材料

    [干货总结]:可能是史上最全的MySQL和PGSQL的对比材料 运维了MySQL和PGSQL已经有一段时间了,最近接到一个数据库选型需求,于是便开始收集资料整理了一下,然后就有了下面的对比表 关键词: ...

随机推荐

  1. Carriage-Return Line-Feed

    Git 提交时报错warning: LF will be replaced by CRLF in - CSDN博客 https://blog.csdn.net/yan_less/article/det ...

  2. 剑指Offer:合并两个排序的链表【25】

    剑指Offer:合并两个排序的链表[25] 题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. 题目分析 每次都是比较箭头节点,把小节点连接到已经合 ...

  3. P1604&P1601

    [usaco2010]冲浪_slide 受到秘鲁的马丘比丘的新式水上乐园的启发,Farmer John决定也为奶牛们建一个水上乐园.当然,它最大的亮点就是新奇巨大的水上冲浪. 超级轨道包含 E (1 ...

  4. 并不对劲的bzoj1095:p2056:[ZJOI2007]捉迷藏

    题目大意 给一\(n\)(\(n\leq10^5\))个点的一棵树,每个点有可能是黑色或白色,一开始所有点都是黑色,支持以下两种操作: 1.改变一个点的颜色 2.询问最远的黑色点对的距离 题解 据说是 ...

  5. P1014 Cantor表

    洛谷 p1014 题目描述 现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的.他是用下面这一张表来证明这一命题的: 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2 ...

  6. bzoj 5072 [Lydsy1710月赛]小A的树——树形dp

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=5072 发现对于每个子树,黑点个数确定时,连通块的大小取值范围一定是一段区间:所以考虑只最小化 ...

  7. JAVA 内部类 (三)实例

    为什么要用内部类:控制框架 一个“应用程序框架”是指一个或一系列类,它们专门设计用来解决特定类型的问题.为应用应用程序框架,我们可从一个或多个类继承,并覆盖其中的部分方法.我们在覆盖方法中编写的代码用 ...

  8. 【Boost】boost库asio详解3——io_service作为work pool

    无论如何使用,都能感觉到使用boost.asio实现服务器,不仅是一件非常轻松的事,而且代码很漂亮,逻辑也相当清晰,这点上很不同于ACE.使用io_service作为处理工作的work pool,可以 ...

  9. Windows 下有什么软件能够极大地提高工作效率

    Windows 下有什么软件能够极大地提高工作效率?修改 可以推荐一些好的应用或者有趣的程序,能提升工作效率或者能让人眼前一亮的.修改 举报1 条评论 分享 • 邀请回答   按票数排序按时间排序 2 ...

  10. 页面跳转问题,多次 push 到新的页面的问题的解决方法

    今日在做一个扫一扫的功能,突然发现多次点击了扫一扫的图片后,造成多次触发轻拍手势,就多次push到新的页面,本想在轻拍手势内对push的进行拦截,但是又觉得如果有好多的地方都要实现对该问题的解决岂不是 ...