暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBase 8s JDBC连接建议

淮海路小佩奇 2023-05-22
432

【建议】通过 JDBC 连接数据库时,应该保证下面三个时区设置一致:

 JDBC 客户端所在主机的时区。

数据库实例所在主机的时区。

数据库实例配置过程中时区。

时区设置相关的操作,请参考《安装指南》中“初始配置 > 同步系统时间”章节内容。

fetchsize

【关注】在应用程序中,如果需要使用 fetchsize,必须关闭 autocommit。开启 autocommit,会令 fetchsize 配置失效。autocommit

【建议】在 JDBC 向 GBase 8s 申请连接的代码中,建议显式打开 autocommit 开关。如果基于性能或者其它方面考虑,需要关闭 autocommit 时,需要应用程序自己来保证事务的提交。

例如,在指定的业务 SQL 执行完之后做显式提交,特别是客户端退出之前务必保证所有的事务已经提交。

释放连接

【建议】推荐使用连接池限制应用程序的连接数。每执行一条 SQL 就连接一次数据库,

是一种不好 SQL 的编写习惯。

【建议】在应用程序完成作业任务之后,应当及时断开和 GBase 8s 的连接,释放资源。

建议在任务中设置 session 超时时间参数。

【建议】使用 JDBC 连接池,在将连接释放给连接池前,需要执行以下操作,重置会话

环境。否则,可能会因为历史会话信息导致的对象冲突。

如果在连接中设置了 GUC 参数,那么在将连接归还连接池之前,必须使用“SETSESSION AUTHORIZATION DEFAULT;RESET ALL;”将连接的状态清空。

如果使用了临时表,那么在将连接归还连接池之前,必须将临时表删除。

CopyManager

【建议】在不使用 ETL 工具,数据入库实时性要求又比较高的情况下,建议在开发应用程序时,使用 GBase 8s JDBC 驱动的 copyManger 接口进行微批导入。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论