postgres启动失败问题分析与处理

     很多企业使用开源的操作系统例如centos,也是用开源的数据库例如mysql或者postgres,在安装使用过程中经常出现一些不可预知的错误,导致安装失败或者启动失败等。

例如需要安装gcc 或者最新lib等,也有因为安全控件问题阻挡软件正常安装使用,或者有时平常运行好好的,突然重新启动竟然报错,让人捉摸不清问题原因。

这两天客户一个系统使用postgres数据库,做了主从,但是因为断电问题导致主从数据同步出现问题,该项目经理让我帮忙分析处理,出于个人懒,

就找了17年帮他们项目组搭建的postgre现有设置好的主从测试开发环境,该环境持续运行一年半,一直没出现问题,我想模拟下,客户生产

故障,一个原因是模拟直接kill 主库进程,一个模拟强制断电关机看是否能正常启动,并自动主从数据同步,结果世事难料,在模拟直接kill掉进程后,竟然启动不了,具体错误如下:

看了半天错误信息,看到了ERROR: Unable to open policy //etc/selinux/targeted/policy/policy.30.

[root@DB1 postgresql_data]# journalctl -xe

9 27 12:43:59 DB1 dbus[784]: [system] Activating service name='org.fedoraproject.Setroubleshootd' (using servicehelper)

9 27 12:43:59 DB1 dbus-daemon[784]: dbus[784]: [system] Activating service name='org.fedoraproject.Setroubleshootd' (using servicehelper)

9 27 12:43:59 DB1 dbus-