删除AWR中快照

简介:

下面这个脚本是实现在SHELL中查询AWR快照的ID号,并且手动输入快照ID号来删除相应的快照。
脚本的运行环境是:SOLARIS 10U8 64,ORACLE 10.2.0.4
$ cat awrdelete
#!/usr/bin/ksh
echo ""
echo ""
echo ""
$1<<EOF
set lines 175
col instart_startup  for a20
col inst_name  for a10
col  db_name  for a10
col snap_id  for 9999999
col snapdat  for a20

select to_char(s.startup_time,  'yyyy-mm-dd HH24:mi:ss') instart_startup,
             di.instance_name inst_name,
             di. db_name  db_name,
             s.snap_id snap_id,
             to_char(s.end_interval_time,  'yyyy-mm-dd HH24:mi:ss') snapdat,
             s.snap_level lvl
     from dba_hist_snapshot s, dba_hist_database_instance di
where di.dbid = s.dbid
      and di.instance_number = s.instance_number
      and di.startup_time = s.startup_time
order  by  db_name, instance_name, snap_id
/
exit
EOF
echo    "please input  begin snap id:"
read begin_id
echo    "please input  end snap id:"
read end_id
$1<<EOF
set lines 175
col instart_startup  for a20
col inst_name  for a10
col  db_name  for a10
col snap_id  for 9999999
col snapdat  for a20
exec dbms_workload_repository.drop_snapshot_range($begin_id,$end_id)

select to_char(s.startup_time,  'yyyy-mm-dd HH24:mi:ss') instart_startup,
             di.instance_name inst_name,
             di. db_name  db_name,
             s.snap_id snap_id,
             to_char(s.end_interval_time,  'yyyy-mm-dd HH24:mi:ss') snapdat,
             s.snap_level lvl
     from dba_hist_snapshot s, dba_hist_database_instance di
where di.dbid = s.dbid
      and di.instance_number = s.instance_number
      and di.startup_time = s.startup_time
order  by  db_name, instance_name, snap_id
/
exit
EOF

下面是测试效果
$ awrdelete htzraw




INSTART_STARTUP      INST_NAME  DB_NAME     SNAP_ID SNAPDAT                     LVL
-------------------- ---------- ---------- -------- -------------------- ----------
2012-08-13 12:23:26  htzraw     HTZRAW          245 2012-08-14 01:12:09           1
2012-08-15 13:53:55  htzraw     HTZRAW          248 2012-08-15 14:05:05           1
2012-08-15 13:53:55  htzraw     HTZRAW          249 2012-08-15 14:29:31           1
2012-08-15 13:53:55  htzraw     HTZRAW          250 2012-08-15 14:34:14           1

please input begin snap id:
245
please input end snap id:
248

PL/SQL procedure successfully completed.


INSTART_STARTUP      INST_NAME  DB_NAME     SNAP_ID SNAPDAT                     LVL
-------------------- ---------- ---------- -------- -------------------- ----------
2012-08-15 13:53:55  htzraw     HTZRAW          249 2012-08-15 14:29:31           1
2012-08-15 13:53:55  htzraw     HTZRAW          250 2012-08-15 14:34:14           1




  本文转自7343696 51CTO博客,原文链接:http://blog.51cto.com/luoping/964161,如需转载请自行联系原作者


相关文章
|
9月前
修改oracle11g的awr快照参数
修改oracle11g的awr快照参数
71 0
|
SQL Oracle 关系型数据库
Oracle rman备份保留策略,归档删除策略及delete命令的使用
oracle rman备份保留策略、归档策略的使用及对delete命令的影响
2071 0
|
Oracle 关系型数据库 数据库
4、数据文件的备份与恢复
数据文件的备份与恢复
158 0
|
Linux Go
用Partimage创建或恢复分区备份
1 Preliminary Note Partimage is part of the system rescue CD found on http://www.sysresccd.org which is a multi-functional rescue CD useful for both Linux and Windows operating systems.
1967 0
|
Oracle 关系型数据库 Linux
DM8重做日志文件和归档管理
重做日志文件,用来保存redo日志,redo日志默认2个,循环使用,不断覆盖,联机日志由系统自动切换,不能手动切换,联机日志过小,会制造日志频繁切换,过大则浪费磁盘空间。
DM8重做日志文件和归档管理
如何恢复磁盘中被删除的数据
如何恢复磁盘中被删除的数据
614 0
如何恢复磁盘中被删除的数据
|
Oracle 关系型数据库
oracle 数据回滚,恢复误删的数据,闪回表功能的使用
oracle 数据回滚,恢复误删的数据,闪回表功能的使用
1313 0
oracle 数据回滚,恢复误删的数据,闪回表功能的使用

热门文章

最新文章

相关实验场景

更多