将集群从 PostgreSQL 9.6 升级到 11 后,磁盘空间从 3.8GB 增加到 4.7GB。这消耗的额外空间在哪里?
我的服务器是带有 PostgreSQL 9.6 的 Debian 9 我将它升级到 Debian 10 并且在升级过程中安装了 PostgreSQL 11
显示集群
su - postgres -c 'pg_lsclusters'
9.6 main 5432 online postgres /var/lib/postgresql/9.6/main /var/log/postgresql/postgresql-9.6-main.log
11 main 5433 online postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log
我按照以下过程将 9.6 PostgreSQL 集群升级到 11: https ://blog.samuel.domains/blog/tutorials/from-stretch-to-buster-how-to-upgrade-a-9-6-postgresql-cluster -to-11
在我做的步骤之后,我会告诉你尺寸。
初始数据库大小为 9.6
du -sh /var/lib/postgresql/*
40M /var/lib/postgresql/11
4,0G /var/lib/postgresql/9.6
# du -s
4105492 /var/lib/postgresql/9.6
postgres=# \l+
bkp | UTF8 | 36 MB |
cur | UTF8 | 9919 kB |
env_pm | UTF8 | 1883 MB |
env_tur | UTF8 | 48 MB |
homolog | UTF8 | 1874 MB |
ods | portais | UTF8 | 8103 kB |
ponto | UTF8 | 7831 kB |
postgres | UTF8 | 7071 kB |
template0 | UTF8 | 6953 kB |
template1 | UTF8 | 7063 kB |
(10 registros)
在 reindexdb 和 Vacuumdb 之后:
su - postgres -c 'reindexdb --all'
vacuumdb -U postgres --full --all
postgres=# \l+
bkp | UTF8 | 34 MB |
cur | UTF8 | 7847 kB |
env_pm | UTF8 | 1816 MB |
env_tur | UTF8 | 37 MB |
homolog | UTF8 | 1816 MB |
ods | UTF8 | 6439 kB |
ponto | UTF8 | 6233 kB |
postgres | UTF8 | 5927 kB |
template0 | UTF8 | 6953 kB |
template1 | UTF8 | 5817 kB |
(10 registros)
du -s /var/lib/postgresql/*
39956 /var/lib/postgresql/11
3972832 /var/lib/postgresql/9.6
du -sh /var/lib/postgresql/*
40M /var/lib/postgresql/11
3,8G /var/lib/postgresql/9.6
从 9.6 升级到 11(到 /var/www/postgres/ )
su - postgres -c 'pg_dropcluster --stop 11 main'
su - postgres -c 'pg_upgradecluster 9.6 main /var/www/postgres'
du -sh /var/www/postgres/
5,4G /var/www/postgres/
vacuumdb -U postgres --full --all
su - postgres -c 'reindexdb --all'
# du -sh /var/www/postgres/
4,7G /var/www/postgres/
postgres=# \l+
bkp | UTF8 | 35 MB |
cur | UTF8 | 8261 kB |
env_pm | UTF8 | 1816 MB |
env_tur | UTF8 | 37 MB |
homolog | UTF8 | 1815 MB |
ods | UTF8 | 6981 kB |
ponto | UTF8 | 6853 kB |
postgres | UTF8 | 6445 kB |
template0 | UTF8 | 7545 kB |
template1 | UTF8 | 6461 kB |
(10 registros)
我的问题是大小如何从 3.8GB 增加到 4.7GB ?
升级前的数据库大小(使用 \l+)一一相加为 3741.3 MB
升级后的数据库大小总和为 3744.5 MB
我找不到消耗空间增加的地方(0.8 或 0.9 GB)