当前位置:数据库 > Oracle >>

往ORACLE数据库中插入数据时,CPU较空闲,内存足够,但是磁盘IO很慢,请高手帮忙分析什么原因?

C++程序,调的是SQLAPI接口,使用批量数据插入,每次1000条。一直没查出原因来,以为是磁盘有问题,检查磁盘是OK的。后来更改程序,使用SQL*LOAD导入数据,数据插入速度非常快。原因不明,望高手详解~
追问:查看内存是还有很多。
机器配置,8C,24G,索引没问题,因为其他机器没出现这种情况。
估计还是数据库服务器哪个地方设置不正确,影响了性能。
答案:在数据库中插入数据,实际上不是实时写数据到数据文件的,但要实时写事务日志文件到日志文件中,日志文件中的内容,你可以理解为就是sql命令的具体操作,对事务型数据库,批量插入大量数据,最好是把事务日志暂停了,然后,在做操作。
  那样就会快很多。
  你不在在生产库的生产过程中做这种操作。
  在生产过程中,你只能分时间段,分批量,用你的命令导入数据。
其他:确实是内存太小啦 我的系统数据库180G,平均80左右用户连线,启用复制功能。系统配置至强双核,内存6G,,很流畅。 内存4-8G比较合适。索引是否合理?, 在数据库中插入数据,实际上不是实时写数据到数据文件的,但要实时写事务日志文件到日志文件中,日志文件中的内容,你可以理解为就是sql命令的具体操作,对事务型数据库,批量插入大量数据,最好是把事务日志暂停了,然后,在做操作。
  那样就会快很多。
  你不在在生产库的生产过程中做这种操作。
  在生产过程中,你只能分时间段,分批量,用你的命令导入数据。 
赞成这个回答. 

上一个:装了oracle 11g后不怎么卡。一个但是上传了一个10G的数据库失败后强行重启电脑,在开启oracle就变卡了
下一个:oracle数据库语句问题

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,