ITPub博客

首页 > 数据库 > Oracle > Oracle Database Replay

Oracle Database Replay

原创 Oracle 作者:壹頁書 时间:2014-02-13 00:32:20 0 删除 编辑
Oracle Database Replay
OCA/OCP认证考试指南 766页

数据库重演可以在生产系统上捕获工作负荷,然后在测试系统上重放。在重放的过程中,可以发现问题,或者查看优化的手段是否能起作用。
下面的实验通过数据库重演,查看删除索引对插入性能的提升。
1.初始化实验数据
2.捕获工作负荷
3.重放工作负荷
4.删除索引,再次重放工作负荷

1.初始化实验数据

  1. create table test(id int);

  2. create index inx_test on test(id);

  3. create directory tmp_dir as '/home/lihuilin/test';
2.捕获工作负荷

  1. exec dbms_workload_capture.start_capture('Test','TMP_DIR');

  2. begin
  3.     for x in 1..200000 loop
  4.         insert into test values(x);
  5.         commit;    
  6.     end loop;
  7. end;
  8. /

  9. exec dbms_workload_capture.finish_capture;

  10. exec dbms_workload_replay.process_capture('TMP_DIR');
3.重放工作负荷(先删除test表数据)

  1. truncate table test;

  2. exec dbms_workload_replay.initialize_replay('replay_20140212_1','TMP_DIR');

  3. exec dbms_workload_replay.prepare_replay;

  4. --在此时,打开命令行输入:wrc edmond/edmond replaydir=/home/lihuilin/test

  5. exec dbms_workload_replay.start_replay;
查看报表

  1. select id,capture_id,directory,start_time,end_time from dba_workload_replays;

  2. set long 100000;
  3. set pagesize 40000;
  4. spool /home/lihuilin/桌面/r1.html
  5. select dbms_workload_replay.report(12,'HTML') from dual;
  6. spool off


4.删除索引,再次重放工作负荷


  1. drop index inx_test;

  2. truncate table test;

  3. exec dbms_workload_replay.initialize_replay('replay_20140212_2','TMP_DIR');

  4. exec dbms_workload_replay.prepare_replay;

  5. --在此时,打开命令行输入:wrc edmond/edmond replaydir=/home/lihuilin/test

  6. exec dbms_workload_replay.start_replay;
再次查看报表
  1. select id,capture_id,directory,start_time,end_time from dba_workload_replays;

  2. set long 100000;
  3. set pagesize 40000;
  4. spool /home/lihuilin/桌面/r2.html
  5. select dbms_workload_replay.report(14,'HTML') from dual;
  6. spool off



通过比对两次重放的结果,发现性能有所提升...

删除不需要的捕获和重放。
捕获和重放的信息分别存放在dba_workload_captures、dba_workload_replays
可以使用如下命令删除
exec dbms_workload_replay.DELETE_REPLAY_INFO(1);
exec dbms_workload_capture.DELETE_CAPTURE_INFO(1);

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29254281/viewspace-1080520/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-10-19

  • 博文量
    621
  • 访问量
    5955272