我知道如果服务器崩溃,数据库索引可能会损坏。如果我这样做:
sudo service postgresql restart
会导致与服务器崩溃相同的损坏吗?
答案 0 :(得分:1)
这取决于我所相信的系统。您应该查看脚本以检查发出的实际命令。例如。我们看到here restart
等于stop
& start
。然后检查stop
我们看到它killproc postmaster
并移除了pid。如果其他未指定,则来自该人killproc
发送SIGTERM
。通过documentation
SIGTERM
这是智能关机模式。收到SIGTERM之后, 服务器不允许新连接,但让现有会话结束 正常工作。它仅在所有会话终止后关闭。 如果服务器处于联机备份模式,它还会等待直到 在线备份模式不再有效。备份模式处于活动状态时 仍然允许新的连接,但仅限于超级用户(这个 例外允许超级用户连接以终止在线备份 模式)。如果智能关机时服务器处于恢复状态 请求,恢复和流复制将仅停止 在所有常规会议结束后。
因此,在所提出的案例中,索引应该存活下来。但是你应该明确地注意你的/etc/init.d/
脚本。