加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

PostgreSQL 数据文件权限不对, 导致数据库启动失败

发布时间:2020-12-13 17:35:59 所属栏目:百科 来源:网络整理
导读:手工启动: [postgres@develop ~]$ pg_start server starting [postgres@develop ~]$ps -ef|grep postgres 发现还是没起来,查看日志,里面有如此报错信息: [postgres@develop ~]$ tail -f pg_log FATAL: data directory "/home/postgres/data" has wrong o
手工启动:
[postgres@develop ~]$ pg_start
server starting
[postgres@develop ~]$ps -ef|grep postgres
发现还是没起来,查看日志,里面有如此报错信息:
[postgres@develop ~]$ tail -f pg_log
FATAL: data directory "/home/postgres/data" has wrong ownership
HINT: The server must be started by the user that owns the data directory.
FATAL: data directory "/home/postgres/data" has group or world access
DETAIL: Permissions should be u=rwx (0700).
信息给得很详细,postgresql的数据文件权限被改了,起码现在不是0700(只有用户权限)。
返回去一看, 现在果然是777权限了。而且用户的所属也被改了,改成其他用户了。
[postgres@develop ~]$ ll /home/postgres
drwxrwxrwx 14 tomcat ddd 4096 10-29 09:41 data
改回去:
[postgres@develop ~]$chown -R postgres:postgres /home/postgres/data
[postgres@develop ~]$chmod 0700 /home/postgres/data
drwx------ 14 postgres postgres 4096 10-29 09:41 data
再启动

正常了。后来了解到是开发的一个误操作,改其他文件的权限的时候把DB文件的用户组权限也改了 。
总结:
默认情况下,PostgreSQL启动时,启动DB用户必须拥有数据文件的所属权限(user权限),且权限不能过大,否则就会报上述错误。其实这是一个安全的保护措施,防止DB文件因为权限开设太大而被其他非允许的用户访问。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读