Type: bool
Default: off
Context: user
Restart: false

A read-only SQL transaction cannot alter non-temporary tables. This parameter controls the default read-only status of each new transaction. The default is off (read/write).

Consult sql-set-transaction for more information.


This setting is mainly useful for preventing yourself from accidentally changing data. It is not really a security setting, as anyone can revoke it on their own session. Better set on a session or ROLE level. Will show up as TRUE if you are on a replication standby.