如何在全局级别的psql 8.4中设置autocommit?是否有一个配置属性,我可以更改,将为群集上的所有dbs引入此行为,以启动自动提交关闭的数据库会话?
答案 0 :(得分:14)
只需将以下内容添加到~/.psqlrc
:
\set AUTOCOMMIT off
请注意,这仅在使用psql
shell时有效!我认为这就是你在说什么?
答案 1 :(得分:8)
如果您想要(开放)交易,请使用交易:
BEGIN;
INSERT ...;
UPDATE ...;
COMMIT; -- when you're done
答案 2 :(得分:0)
就像 exhuma 所说的,您可以在您的个人 ~/.psqlrc 文件中将其设置为关闭。
\set AUTOCOMMIT off
但是由于您要求全局级别,因此 Ubuntu 上的正确文件是 /etc/postgresql-common/
中的 psqlrc(不带前导点)要评估系统上的正确目录,您可以使用:
pg_config --sysconfdir
在
中有一个示例 psqlrc 文件/usr/share/postgresql/12/psqlrc.sample
(对于版本 12,显然)但它不包含更多信息。
使用
在您的系统上找到它locate psqlrc
我不能说这些信息是否适用于 12 之前的旧版本,但根据我的记忆,至少对于个人 rc 文件是有效的。