diff options
Diffstat (limited to 'doc/src/sgml/man1/vacuumlo.1')
-rw-r--r-- | doc/src/sgml/man1/vacuumlo.1 | 190 |
1 files changed, 190 insertions, 0 deletions
diff --git a/doc/src/sgml/man1/vacuumlo.1 b/doc/src/sgml/man1/vacuumlo.1 new file mode 100644 index 0000000..81b8fdd --- /dev/null +++ b/doc/src/sgml/man1/vacuumlo.1 @@ -0,0 +1,190 @@ +'\" t +.\" Title: vacuumlo +.\" Author: The PostgreSQL Global Development Group +.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> +.\" Date: 2023 +.\" Manual: PostgreSQL 15.4 Documentation +.\" Source: PostgreSQL 15.4 +.\" Language: English +.\" +.TH "VACUUMLO" "1" "2023" "PostgreSQL 15.4" "PostgreSQL 15.4 Documentation" +.\" ----------------------------------------------------------------- +.\" * Define some portability stuff +.\" ----------------------------------------------------------------- +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.\" http://bugs.debian.org/507673 +.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" ----------------------------------------------------------------- +.\" * set default formatting +.\" ----------------------------------------------------------------- +.\" disable hyphenation +.nh +.\" disable justification (adjust text to left margin only) +.ad l +.\" ----------------------------------------------------------------- +.\" * MAIN CONTENT STARTS HERE * +.\" ----------------------------------------------------------------- +.SH "NAME" +vacuumlo \- remove orphaned large objects from a PostgreSQL database +.SH "SYNOPSIS" +.HP \w'\fBvacuumlo\fR\ 'u +\fBvacuumlo\fR [\fIoption\fR...] \fIdbname\fR... +.SH "DESCRIPTION" +.PP +vacuumlo +is a simple utility program that will remove any +\(lqorphaned\(rq +large objects from a +PostgreSQL +database\&. An orphaned large object (LO) is considered to be any LO whose OID does not appear in any +oid +or +lo +data column of the database\&. +.PP +If you use this, you may also be interested in the +\fBlo_manage\fR +trigger in the +lo +module\&. +\fBlo_manage\fR +is useful to try to avoid creating orphaned LOs in the first place\&. +.PP +All databases named on the command line are processed\&. +.SH "OPTIONS" +.PP +vacuumlo +accepts the following command\-line arguments: +.PP +\fB\-l \fR\fB\fIlimit\fR\fR +.br +\fB\-\-limit=\fR\fB\fIlimit\fR\fR +.RS 4 +Remove no more than +\fIlimit\fR +large objects per transaction (default 1000)\&. Since the server acquires a lock per LO removed, removing too many LOs in one transaction risks exceeding +max_locks_per_transaction\&. Set the limit to zero if you want all removals done in a single transaction\&. +.RE +.PP +\fB\-n\fR +.br +\fB\-\-dry\-run\fR +.RS 4 +Don\*(Aqt remove anything, just show what would be done\&. +.RE +.PP +\fB\-v\fR +.br +\fB\-\-verbose\fR +.RS 4 +Write a lot of progress messages\&. +.RE +.PP +\fB\-V\fR +.br +\fB\-\-version\fR +.RS 4 +Print the +vacuumlo +version and exit\&. +.RE +.PP +\fB\-?\fR +.br +\fB\-\-help\fR +.RS 4 +Show help about +vacuumlo +command line arguments, and exit\&. +.RE +.PP +vacuumlo +also accepts the following command\-line arguments for connection parameters: +.PP +\fB\-h \fR\fB\fIhost\fR\fR +.br +\fB\-\-host=\fR\fB\fIhost\fR\fR +.RS 4 +Database server\*(Aqs host\&. +.RE +.PP +\fB\-p \fR\fB\fIport\fR\fR +.br +\fB\-\-port=\fR\fB\fIport\fR\fR +.RS 4 +Database server\*(Aqs port\&. +.RE +.PP +\fB\-U \fR\fB\fIusername\fR\fR +.br +\fB\-\-username=\fR\fB\fIusername\fR\fR +.RS 4 +User name to connect as\&. +.RE +.PP +\fB\-w\fR +.br +\fB\-\-no\-password\fR +.RS 4 +Never issue a password prompt\&. If the server requires password authentication and a password is not available by other means such as a +\&.pgpass +file, the connection attempt will fail\&. This option can be useful in batch jobs and scripts where no user is present to enter a password\&. +.RE +.PP +\fB\-W\fR +.br +\fB\-\-password\fR +.RS 4 +Force +vacuumlo +to prompt for a password before connecting to a database\&. +.sp +This option is never essential, since +vacuumlo +will automatically prompt for a password if the server demands password authentication\&. However, +vacuumlo +will waste a connection attempt finding out that the server wants a password\&. In some cases it is worth typing +\fB\-W\fR +to avoid the extra connection attempt\&. +.RE +.SH "ENVIRONMENT" +.PP +\fBPGHOST\fR +.br +\fBPGPORT\fR +.br +\fBPGUSER\fR +.RS 4 +Default connection parameters\&. +.RE +.PP +This utility, like most other +PostgreSQL +utilities, also uses the environment variables supported by +libpq +(see +Section\ \&34.15)\&. +.PP +The environment variable +\fBPG_COLOR\fR +specifies whether to use color in diagnostic messages\&. Possible values are +always, +auto +and +never\&. +.SH "NOTES" +.PP +vacuumlo +works by the following method: First, +vacuumlo +builds a temporary table which contains all of the OIDs of the large objects in the selected database\&. It then scans through all columns in the database that are of type +oid +or +lo, and removes matching entries from the temporary table\&. (Note: Only types with these names are considered; in particular, domains over them are not considered\&.) The remaining entries in the temporary table identify orphaned LOs\&. These are removed\&. +.SH "AUTHOR" +.PP +Peter Mount +<peter@retep\&.org\&.uk> |