Recall from Chapter 20 that the PostgreSQL server provides a large number of run-time configuration variables. You can set database-specific default values for many of these settings.
For example, if for some reason you want to disable the GEQO optimizer for a given database, you'd ordinarily have to either disable it for all databases or make sure that every connecting client is careful to issue SET geqo TO off
. To make this setting the default within a particular database, you can execute the command:
This will save the setting (but not set it immediately). In subsequent connections to this database it will appear as though SET geqo TO off;
had been executed just before the session started. Note that users can still alter this setting during their sessions; it will only be the default. To undo any such setting, use ALTER DATABASE
dbname
RESET
varname
.