Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 为什么将postgres数据库移动到另一台服务器会改变数据库大小?_Linux_Postgresql - Fatal编程技术网

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

Linux 为什么将postgres数据库移动到另一台服务器会改变数据库大小?,linux,postgresql,Linux,Postgresql,我正在将postgres数据库移动到另一台服务器。我使用以下命令进行卸载和加载 pg_dump database_name_name > backup.sql // Dump psql db_name < backup.sql // Load pg\u dump database\u name\u name>backup.sql//dump psql db_name

我正在将postgres数据库移动到另一台服务器。我使用以下命令进行卸载和加载

pg_dump database_name_name > backup.sql // Dump

psql db_name < backup.sql // Load
pg\u dump database\u name\u name>backup.sql//dump
psql db_name

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

可以预期,恢复的数据库比原始数据库小

实时数据库总是有一定数量的膨胀(空白空间),这是由更新和删除引起的。该空间将被重新利用,通常不会有问题

恢复的数据库是密集的,没有膨胀

然而,超过25%的通货膨胀率偏高。
您可以使用来确定您的任何表是否有过多的膨胀

高膨胀可能是由于大量删除或autovacuum无法跟上的高变化率造成的。
可以使用
VACUUM(VERBOSE)
重新组织这些表,如果原因是更改率高,则应调整autovacuum使其在这些表上更具攻击性。

驱动器上的块大小在不同的机器上有所不同?驱动器的加密方式不同,或者一个加密,另一个未加密?不同机器之间的文件系统类型不同?可能有很多事情让他们与众不同。