为什么将postgres数据库移动到另一台服务器会更改数据库大小?

时间:2018-09-04 20:28:02

标签: linux postgresql

我要将Postgres数据库移至另一台服务器。我使用以下命令进行转储和加载。

pg_dump database_name_name > backup.sql // Dump

psql db_name < backup.sql // Load

我发现移动时,新数据库的大小为28MiB,而旧数据库的大小为36MiB。为什么会这样,我应该担心搬迁没有完成吗?

1 个答案:

答案 0 :(得分:1)

预计还原后的数据库小于原始数据库。

活动数据库始终具有由更新和删除引起的一定数量的膨胀(空白空间)。该空间将被重用,通常不会出现问题。

还原的数据库密密麻麻,没有膨胀。

但是,超过25%的膨胀却偏高。
您可以使用pgstattuple来确定您的表中是否有过多的膨胀。

大量膨胀或自动真空无法保持的高变化率引起的高膨胀。 可以使用VACUUM (VERBOSE)重组此类表,如果原因是更改率很高,则应调整自动清理以更积极地使用这些表。