社区
Oracle
帖子详情
事务中不提交或不回滚会造成连接上的内存泄漏吗?
spiderww
2008-04-02 02:26:32
创建一个连接并开始一个事务,若循环提交DML语句但不进行commit或rollback,连接上的内存会不断增长吗?如果是的话有没有上限控制啊,例如不能超出回滚区的大小?如果没有上限是不是就会用光内存?
...全文
451
9
打赏
收藏
事务中不提交或不回滚会造成连接上的内存泄漏吗?
创建一个连接并开始一个事务,若循环提交DML语句但不进行commit或rollback,连接上的内存会不断增长吗?如果是的话有没有上限控制啊,例如不能超出回滚区的大小?如果没有上限是不是就会用光内存?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
spiderww
2008-04-08
打赏
举报
回复
谢谢大家,有些清楚了
utpcb
2008-04-03
打赏
举报
回复
up
wffffc
2008-04-03
打赏
举报
回复
若循环提交DML语句但不进行commit或rollback?提交不是commit吗?
连接上的内存会不断增长吗?我觉得不会。
开发的时候根据业务的需要进行提交就可以了,一般不会有问题的。
dml只是会产生undo信息,同时写入redo日志,还有就是把数据块写入数据文件,涉及的内存包括:块缓存区,日志缓存区,shared pool,等,oracle中的内存分配要不是分配好的,也就是固定大小。要不就是oracle自动管理的,由orcle动态调整。
doer_ljy
2008-04-02
打赏
举报
回复
应该不会是无限增加这么简单的处理。
首先要看你的回滚管理方式,使自动撤销管理方式还是手动方式(回滚段管理方式)。
然后还有可能被undo_retention影响。
spiderww
2008-04-02
打赏
举报
回复
undo表空间好像是可以自动扩展的啊,如果自动扩展的话,超大的事务会造成内存耗尽吧
spiderww
2008-04-02
打赏
举报
回复
如果事务一直不结束是什么情况?是不是只要在undo表空间大小范围之内就没有问题?
小兽
2008-04-02
打赏
举报
回复
当然不会,要不PMON是干什么吃的?
CathySun118
2008-04-02
打赏
举报
回复
内存泄漏,不会阿!
wffffc
2008-04-02
打赏
举报
回复
事物结束的时候提交,只要undo表空间不要太小一般不会有问题
ado访问数据库内存泄露
3. **
事务
处理不当**:在进行
事务
操作时,如果发生错误没有
回滚
事务
或者没有正常
提交
,数据库
连接
可能
会
保持打开状态,从而
造成
内存泄漏
。确保正确处理
事务
,即使在异常情况下也要确保
事务
的完整性和资源的释放。 4...
javaweb 通过threadlocal 手动
提交
事务
- **清理ThreadLocal**:最后,记得从ThreadLocal
中
移除
事务
对象,防止
内存泄漏
。 6. **注意事项** - 使用ThreadLocal时,必须谨慎处理资源的生命周期,确保在
事务
结束时正确关闭数据库
连接
,防止资源泄露。 - ...
编程式
事务
管理(处理方案).md
如果业务逻辑失败或出现异常,则调用rollback()方法
回滚
事务
,这样可以保证数据操作不
会
对数据库
造成
不一致的影响。 异常处理也是编程式
事务
管理
中
的重要部分。当
事务
过程
中
出现异常时,需要捕获异常并对
事务
进行...
Oracle JDBC
事务
的优化.pdf
6. **异常处理**:正确处理程序
中
的异常,及时调用rollback()方法
回滚
事务
,防止资源泄漏和数据库状态的不一致。 7. **
连接
池(Connection Pool)**:使用
连接
池管理数据库
连接
,可以重复利用已打开的
连接
,减少...
Spring
事务
管理的方法
上述代码
中
,通过`getConnection()`获取数据库
连接
,并通过`setAutoCommit(false)`方法禁止
连接
的自动
提交
功能,以便手动控制
事务
的
提交
或
回滚
。如果在执行数据库操作过程
中
发生异常,则可以通过`rollback()`方法...
Oracle
17,137
社区成员
55,258
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章