1、问题
甲方要求提供数据库数据量大小,由于各个业务数据库共用一个postgres,因此想把每个数据库占用的空间都统计一下。
2、查找物理存储文件目录
如下图所示,可以查询表、库的物理存储文件名称
-- 查询表对应的文件
select oid,relname from pg_class where relname='pipelineline';
select * from pg_database;
-- 查询数据库对应的文件
select oid, datname from pg_database;
3、进入系统查询目录大小
进入目录,由于安装配置不同,只列出了相对目录地址,如下:
~/data/base
使用如下目录统计数据库业务数据占用的空间大小
du -ah --max-depth=1
du -sh : 查看当前目录总共占的容量。而不单独列出各子项占用的容量
du -lh --max-depth=1 : 查看当前目录下一级子文件和子目录占用的磁盘容量。