必须假定数据库故障(或其可能性)正在潜伏,随时准备在未来某个时刻发动袭击。一个谨慎的数据库管理员会为各种可能故障的必然性做好规划,并在故障发生之前就准备好适当的计划和规程。
在发生硬件或软件故障时,数据库恢复是必要的。故障有多种类别;其中一些只需要对数据库做相对较小的调整,而另一些则可能依赖于事先准备好的数据库转储和其他恢复数据集。需要强调的是,如果你的数据很重要和/或难以重新生成,那么你应当已经考虑并为各种故障场景做好了准备。
数据盘被填满可能导致数据库索引随后损坏,但不会损坏基本的数据表。如果 WAL 文件与数据在同一个磁盘上(默认配置就是这样),那么数据库初始化期间磁盘被填满可能导致 WAL 文件损坏或不完整。这种故障条件会被检测到,数据库将拒绝启动。你必须释放磁盘上的额外空间(或者把 WAL 区域移到另一个磁盘;参见第 11.3 节),然后重启
postmaster来从此状态中恢复。