Oracle   发布时间:2022-05-17  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ORACLE的snapshot 快照大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
1、查看快照:
SELEct SNAP_ID,dbID,SNAP_LEVEL,BEGIN_INTERVAL_TIME from dba_hist_snapshot order by SNAP_ID;
2、手工创建快照
begin
DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT(flush_level IN VARCHAR2 DEFAulT 'TYPICAL');
end;
flush_level 参数
Flush level 可以是 'TYPICAL' 或 'ALL'
您可以使用 DROP_SNAPSHOT_RANGE 存储过程删除个范围内的快照。要查看快照的 snap_ID 和 数据库 ID 的列表,请查看 DBA_HIST_SNAPSHOT 视图。例如,您可以删除上例中 snap_ID 小于 115 的快照:
DBMS_WORKLOAD_REPOSITORY.DROP_SNAPSHOT_RANGE(low_snap_ID IN numbER,high_snap_ID IN numbER dbID IN numbER DEFAulT null);

>exec DBMS_workload_repository.drop_snapshot_range(dbID=>219724276,low_snap_ID=>114,high_snap_ID => 115);
pl/sql procedure successfully completed.

4、修改快照设置
对于指定的数据库 ID,您可以调整快照生成的时间间隔、保留期限和捕获的 top sql,但是请注意,这会影响 Oracle Database 诊断工具的精确性。
INTERVAL 设置影响数据库自动生成快照的频率。RETENTION 设置影响数据库在工作负载信息库中存储快照的时间。
topNsql 设置影响针对每个 sql 条件捕获的 top sql 的数量(Elapsed Time、cpu Time、Parse Calls、sharable Memory 和 Version Count)。
此设置的值不受 statistics_level 和 flush_level 的影响,将会覆盖系统 AWR sql 收集的默认行为。可以讲次设置的值设置为 MAXIMUM 来捕获 shared sql area 中的全部 sql 集合,这么做(将此值设置为一个非常高的值)可能会导致一定的空间和性能问题,因为将会收集和存储更多的数据。要调整这些设置,请使用 MODIFY_SNAPSHOT_SETTinG 存储过程。例如:
DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTinGS(
retention IN numbER DEFAulT NulL,
interval IN numbER DEFAulT NulL,
topnsql IN numbER DEFAulT NulL,
dbID IN numbER DEFAulT null);

>desc dba_hist_wr_control;
name Null? Type
----------------------------------------------------------------- -------- --------------------------------------------
DBID NOT NulL numbER
SNAP_INTERVAL NOT NulL INTERVAL DAY(5) TO SECOND(1)
RETENTION NOT NulL INTERVAL DAY(5) TO SECOND(1)
topNsql VARCHAR2(10)

大佬总结

以上是大佬教程为你收集整理的ORACLE的snapshot 快照全部内容,希望文章能够帮你解决ORACLE的snapshot 快照所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:dbid