为了测试一个删除sql句的性能,而多次执行了这个删除sql句在每次执行sql句之前,都发行了以下2个语句:
1.alter system flush buffer_cache;
2.alter system flush shared_pool;被删除的表里有600万数据,每次执行删除sql句都被删除100万。为什么每次发行“alter system flush buffer_cache”所消耗的时间越来越长,由开始的1分钟变成了10分钟?
并且删除sql句的执行时间差别也很大,第一次1200秒,第二次1900秒,第三次1600秒?
1.alter system flush buffer_cache;
2.alter system flush shared_pool;被删除的表里有600万数据,每次执行删除sql句都被删除100万。为什么每次发行“alter system flush buffer_cache”所消耗的时间越来越长,由开始的1分钟变成了10分钟?
并且删除sql句的执行时间差别也很大,第一次1200秒,第二次1900秒,第三次1600秒?
解决方案 »
- ORA-12560: TNS: 协议适配器错误 如何解决
- 为什么grant create view to 'BIZDATA1';在下面的procedure中编译不过去?
- 急问:insert数据的错误处理问题
- REDHAT 9 下安装ORACLE9I错误
- 游标出错
- 数据导入到出
- 如何通过SQL语句得到类似于Listener.log文件中的信息 , 包括登入用户名, 登入program ,ip , pc机器名 , 登入时间 ,所做的动作(sql语句).
- 捕获插入或更新的错误信息!请大家帮忙!
- C#在WIN2003上操作Oracle9i错误!
- 如何写个SQL,一次删除某一个用户以及其拥有的所有对象?
- 求个toad for oracle 11的有效注册码
- Oracle->Access 表链接 更新
.alter system flush shared_pool这两语句的作用是清除缓冲区和共享池。
为什么要执行这2个语句,对删除的测试有什么影响吗?当你删除了100万,这100万会进入缓冲区,所以清理的时间会变长,这很正常。
你好,请问,你说的“执行flush shared_pool无异于自杀”,是指对测试性能有影响,还是对整个数据库会产生影响,谢谢