@@ -84,6 +84,7 @@ Oid of table ips from database "test":
84
84
---------------------------------
85
85
18737 = ips
86
86
87
+ $ # show disk space for every db object
87
88
$ du * | while read SIZE OID
88
89
> do
89
90
>echo "$SIZE `oid2name -q -d test -o $OID`"
@@ -92,6 +93,7 @@ $ du * | while read SIZE OID
92
93
36 18722 = cities
93
94
...
94
95
96
+ $ # same as above, but sort by largest first
95
97
$ du * | while read SIZE OID
96
98
> do
97
99
>echo "$SIZE `oid2name -q -d test -o $OID`"
@@ -101,6 +103,18 @@ $ du * | while read SIZE OID
101
103
1950 23903 = customers
102
104
...
103
105
106
+ $ # show disk usage per database
107
+ $ cd /u/pg/data/base
108
+ $ du -s * |
109
+ > while read SIZE OID
110
+ > do
111
+ >echo "$SIZE `aspg oid2name -q | grep ^$OID' '`"
112
+ > done |
113
+ > sort -rn
114
+ 2256 18721 = test
115
+ 2135 18735 = postgres
116
+ ..
117
+
104
118
This can be done in psql with: (each page is typically 8k)
105
119
106
120
test=> SELECT relpages, relfilenode, relname FROM pg_class ORDER BY relpages DESC;
@@ -112,4 +126,3 @@ Mail me with any problems or additions you would like to see. Clearing
112
126
house for the code will be at: http://www.crimelabs.net
113
127
114
128
b. palmer, bpalmer@crimelabs.net
115
-