机房断电了,Postgresql 起不起来了。
[root@scoder19 9.3]# service postgresql-9.3 start
Starting postgresql-9.3 service:[Failed]
日志文件(/var/lib/pgsql/9.3/pgstartup.log):报错如下:
< 2016-07-11 18:12:54.861 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 18:12:54.861 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 18:42:30.144 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 18:42:30.144 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 18:48:57.110 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 18:48:57.110 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 18:50:03.962 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 18:50:03.962 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 18:50:53.958 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 18:50:53.958 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 18:53:52.351 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 18:53:52.351 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 18:56:00.421 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 18:56:00.421 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 19:07:15.219 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 19:07:15.219 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 19:09:04.421 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 19:09:04.421 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 19:27:05.271 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 19:27:05.271 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 20:03:10.555 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
< 2016-07-11 20:03:10.555 CST >DETAIL: Permissions should be u=rwx (0700).
< 2016-07-11 20:11:01.442 CST >FATAL: data directory "/var/lib/pgsql/9.3/data" has group or world access
原因是应该是 文件夹 “/var/lib/pgsql/9.3/data”权限错误, 权限应该是rwx (0700)。
解决方法:
切换到 具有root权限的用户,
(1)先把文件夹“/var/lib/pgsql/9.3/data” 的用户所属组,给postgres 用户:
进入/var/lib/pgsql/9.3目录
cd /var/lib/pgsql/9.3
chown -R postgres:postgresdata
(2)把data目前的所有文件及子目录文件权限改成:rwx (0700)
chmod -R 0700 data