On 4/29/24 06:45, Cocam' server wrote:
Hello.
I need help to make space on my database. I have tables that are several
GB in size. I used to use the VACUUM FULL VERBOSE command; but now, this
command is too greedy in free space to be used and I'm looking for a way
to make free space (given back to the OS)
Thanks in advance to everyone who responds
Per
https://www.postgresql.org/docs/current/sql-vacuum.html
"VACUUM reclaims storage occupied by dead tuples. In normal PostgreSQL
operation, tuples that are deleted or obsoleted by an update are not
physically removed from their table; they remain present until a VACUUM
is done. Therefore it's necessary to do VACUUM periodically, especially
on frequently-updated tables.
<...>
Plain VACUUM (without FULL) simply reclaims space and makes it available
for re-use. This form of the command can operate in parallel with normal
reading and writing of the table, as an exclusive lock is not obtained.
However, extra space is not returned to the operating system (in most
cases); it's just kept available for re-use within the same table.
"
So a regular VACUUM should work if all you want to do is give the
database the ability to recycle the vacuumed tuple space.
--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx