DataGrip 禁用自动同步
DataGrip 是 JetBrains 出品的一款数据库管理工具,选择它是因为买了全套IDE的授权,不用白不用。(比它好用的NaviCat贵的要死!)最近使用中偶尔会发现一个同步任务持续时间特别长,还有耗尽dev服务器内存进程被kill的事。
问题描述
默认设定,每次更新数据库结构时都会自动更新 Schemas 。不幸的是,DataGrip 的 introspect schemas 功能有严重的性能问题,数据库有一百多个表格的情况下,同步可能要花费几十分钟,还可能耗尽服务器内存。
这个从工具诞生就存在的悠久问题,终于被官方注意到了,虽然官方定义为普通性能问题,也没有修复时间。
问题不能解决的情况下,可以想办法绕过。
解决方法
- 在数据库链接上右键打开 Properties;
- Options 面板中找到 Introspection ;
- 去掉 Auto sync 选项前面的对勾✓ 。
就可以禁用刷新了。此时就不会修改一个数据库中一个表格的一个字段,导致整个链接几百个表刷新表结构了。
刷新表比较少的数据库,速度还是很快的。
官方参考文档
- bug详细描述:https://youtrack.jetbrains.com/issue/DBE-11863
- 关掉自动同步:https://intellij-support.jetbrains.com/hc/en-us/community/posts/205450450-Disable-introspecting-schema-from-running-for-every-change-