oracle按条件批量更新 特定配置下Oracle日志批量提交的最优数量指的是什么?
特定配置下Oracle日志批量提交的最优数量指的是什么?
建议您将这150万条记录按一定条件分成若干部分,编写一个存储过程,依次执行,执行完一个部分后再提交一个部分。这样,减少了内存需求,防止了更新错误,并且在回滚上花费了大量时间。
Oracle批量数据插入60000条以上,速度变的很慢,而且中间会断。求解决方案?
批量提交,例如一次提交5000件。如果可以的话,建议使用sqlloader来插入
来加快Oracle数据库的数据插入速度。方法:从编程的角度出发,建议使用绑定变量实现一次预编译、多次执行的效果。如果不使用绑定变量,数据库每次都会分析SQL并消耗资源。
2使用Oracle提供的批处理接口,减少网络传输次数,提高效率
3适当增加提交间隔,提交指令消耗更多数据库资源,提交前尽量插入更多数据。1000多条建议。
4. 使用insert语句的hint(如append)和nologing选项来减少数据库日志注册。
5. 从数据库的角度考虑使用多进程插入或并行提示插入
1。将表更改为nologing模式,这样就不需要注册回滚日志了
2。对表进行分区,使不同的分区落在不同的硬盘上
3。删除表的索引,插入数据后还原
4。增加数据库缓冲区
5使用SSD存储和其他高效硬盘作为数据库存储
其他详细信息:
例如,将程序部署到数据库服务器上,然后进行操作以减少网络消耗
将数据程序输出日志插入硬盘
~]--下面是我根据您的描述进行的测试,希望对您有所帮助:-新建一个表kongxinji(avarchar2(200))--根据,然后提交:insert to Kong Ji(a)values(“12345(6)789”)insert to Kong Ji(a)values(“12345(67)89”)insert to Kong Ji(a)values(“12345(678)9”)commitselect*from Kong Ji--去掉a中的括号,然后提交。在此步骤中,您可以查看表中数据的更改:update To Kong Xi anseta=replace(a,substr(a,”),(INS tr(a,”)”-instr(a,”(”)1)),””)COMMITSELECT*from kongxianji
oracle按条件批量更新 oracle一次提交大量数据 oracle批量insert多条
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。