如何将DataGrip默认事务模式设置为Tx: Manual?
问题:DataGrip默认事务模式改为手动的解决办法
我们团队使用DataGrip操作生产数据库,要求所有数据库变更必须强制使用事务。目前已知开启Tx: Manual可在当前会话强制使用事务,但重启DataGrip后会默认恢复为Tx: Auto。翻遍文档和设置都没找到修改默认值的方法,求可行的解决办法。
已尝试操作
- 设置Tx为Manual模式:仅当前会话生效,重启后恢复默认
- 搜索应用设置,未找到修改默认值的选项
- 查阅官方文档,未找到相关配置方法
可行解决方案
1. 修改现有连接的事务默认设置
打开DataGrip的「Database」工具窗口,找到目标数据库连接,右键选择Properties(属性):
- 在连接配置窗口切换到「Options」标签页
- 找到「Transaction mode」选项,选择
Manual - 点击「Apply」和「OK」保存配置
这个设置会绑定到该连接,重启DataGrip后不会重置。
2. 创建全局数据源模板(批量生效)
如果需要所有新创建的连接都默认使用手动事务模式:
- 进入
File → Settings → Database → Data Sources and Drivers - 点击左上角「+」号,选择「Data Source Template」
- 在模板配置中,将「Transaction mode」设置为
Manual - 后续新建连接时基于该模板创建,会自动继承手动事务设置
3. 通过初始化脚本强制切换事务模式
给数据库连接添加初始化脚本,每次连接自动关闭自动提交(等效于手动事务模式):
- 在连接配置的「Options」标签页,找到「Initialization script」
- 添加对应数据库的命令:
- MySQL:
SET autocommit = 0; - PostgreSQL:
SET AUTOCOMMIT TO OFF; - Oracle:
SET AUTOCOMMIT OFF;
- MySQL:
- 保存配置后,每次连接数据库都会自动执行该脚本,强制启用手动事务模式
内容的提问来源于stack exchange,提问作者Chelsea Spangler
相关产品推荐
相关产品推荐

