0

我将许多 Oracle DB 迁移到 ESX 环境中的新虚拟机(完全相同的系统、数据库版本等)。我担心的是磁盘 IO 性能,因为使用了不同的存储。我需要在迁移之前和之后执行 sql 负载检查以便稍后进行比较。没有时间进行更深入的性能分析,所以我决定做一个非常简单的测试:

我执行 40 000 000 行插入并测量迁移之前和之后的操作时间。

如果数据库没有其他活动,这种测试就足够了,但我不允许在测试期间停止其他连接。这就是为什么其他工作负载会影响我的测试插入结果。

我解决这个问题的想法是在每个测试期间执行一系列测试并收集统计数据,以便我知道执行每个测试时的环境是什么然后我将只比较那些在类似工作负载下运行的测试。

您能否建议我如何解决这个问题,您如何看待这个想法以及我应该收集哪些统计数据?

4

1 回答 1

1

我认为测量时间是不够的。AWR 可以自动收集统计数据/因素。

您应该从拍摄快照开始,例如(但设置您的频率):

BEGIN DBMS_WORKLOAD_REPOSITORY.modify_snapshot_settings( retention => 43200, -- Minutes (= 30 Days). Current value retained if NULL. interval => 30); -- Minutes. Current value retained if NULL. END; /

您可以根据迁移前和迁移后的快照制作多个复杂的报告。会有任何你想要的重要统计数据。

阅读更多:http ://www.oracle-base.com/articles/10g/automatic-workload-repository-10g.php#snapshots

于 2014-03-05T19:49:37.717 回答