Beruflich Dokumente
Kultur Dokumente
⬆
8/17/2019 6. Database Administration - PostgreSQL Developer's Handbook
https://learning.oreilly.com/library/view/postgresql-developers-handbook/0672322609/ch06.html 2/40
a lot of parameters that can be configured to make your database run
better and faster.
By using
postmaster --help
we can get a little help about working with the postmaster.
On Unix systems, the postmaster is usually started when the default
runlevel starts its processes, but it can also be started manually. No
matter how the postmaster is started, you can use the flags just shown.
Let's take a closer look at some flags.
-B. Defines the number of shared memory buffers PostgreSQL uses
for the backend processes. One shared memory buffer is usually
8KB, but the size can be redefined in src/include/config.h
(see BLCKSZ).
-D. Specifies the directory PostgreSQL will use for the data. -D
defines the root directory of a cluster of databases. If the database
directories are not defined via the shell, PostgreSQL will use the
environment variable $PGDATA instead. If you want to set this
variable, check out your Unix manual and look for the export
command (Bourne Shell).
-N. Sets the maximum number of backend processes that are
allowed to run on the machine. The default value is set to 32 but can
also be changed in src/include/config.h.
-S. Starts the postmaster in silent mode, which means that all
messages the postmaster normally produces—no matter whether on
standard output or standard error—are redirected to /dev/null.
This is extremely bad for troubleshooting because you will loose
important information.
-d. Defines the debugging level your PostgreSQL server will use.
The debugging level can be set from 1 to 5. The higher the
debugging level is, the more information will be displayed. In most
cases, it is useful to redirect the output to a file because this is the
only way to get a complete history of what is going
Name
Description
vacuumlo is a simple utility program that will remove any "orphaned" 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.
If you use this, you may also be interested in the lo_manage trigger in
the lo module. lo_manage is useful to try to avoid creating orphaned LOs in the first place.
All databases named on the command line are processed.
Options
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.
Author