网站首页 > 数据库 / 正文
各位朋友大家好呀,大家日常运维过程中是如何定期删除归档日志的呢?
对于定期删归档,比较普遍的做法是是使用操作系统的crontab或者windows的任务计划功能来调用删归档脚本,今天小编给大家带来一种使用oracle的Scheduler来调用清归档脚本以实现定期清理归档文件的方法。
Oracle在10g开始就提供了Scheduler来管理定时任务,这是一个企业作业调度程序,可以帮助您简化成百上千个任务的调度。Oracle调度器(Scheduler)由DBMS_Scheduler PL/SQL包中的过程和函数实现。Scheduler帮助您有效地管理和计划任务。确保许多例行任务在没有人工干预的情况下执行,有效降低操作成本,实现更可靠的管理,最大限度地减少人为错误。它可以执行任何类型的脚本(例如:PL/SQL、OS shell脚本、第三方程序等等)。在RAC),可以指定作业应在哪个数据库节点上运行,参数项instance_id。
下面我们以删除归档日志为例,来使用Scheduler。
1、 前期数据库环境设置
修改externaljob.ora属性
修改extjob属性
修改externaljob.ora文件内容
2、准备一个删除归档脚本
注意:脚本中必须使用绝对路径,必要的环境变量必须指定,且该脚本必须拥有执行权限
3、给执行Scheduler的用户赋权
4、 在数据库创建一个program
这里我们创建了一个任务程序单元,将其指定为可执行文件。注意这个程序单元叫什么。
5、创建一个任务计划
我们创建一个在每天凌晨一点运行一次的任务计划,该计划的名称为 'EVERY_DAY_1_00。
6、创建一个job来调用之前创建的程序及计划
7、如何更改Scheduler属性设置
使用
SET_ATTRIBUTE 与 SET_SCHEDULER_ATTRIBUTE
存储过程来更改设置。
例如,我们将该计划的执行节点改为2节点:
8、禁用,删除任务
9、设置查看记录日志
设置日志:
查看日志记录:
Oracle的Scheduler(任务计划),相对于oracle之前的Job,更加地灵活易用,且支持调用shell命令或第三方程序,并提供详细的日志记录,更为详细的用法大家可以参考以下提供的官方文档,里面包括详细的使用方法以及可能会遇到的报错及处理方法。
参考文献 :
DBMS_SCHEDULER FAILS WITH ORA-27369 WHEN JOB TYPE IS EXECUTABLE (Doc ID 279866.1)
https://docs.oracle.com/database/121/ARPLS/d_sched.htm#ARPLS72308
https://docs.oracle.com/database/121/ADMIN/schedadmin.htm#ADMIN12062
美创运维中心数据库服务团队拥有Oracle ACE 1人、OCM 10余人、数十名Oracle OCP、MySQL OCP、红帽RHCA、中间件weblogic、tuxedo认证、达梦工程师 ,著有《Oracle DBA实战攻略》,《Oracle数据库性能优化方法和最佳实践》,《Oracle内核技术揭秘》等多本数据运维优化书籍。目前运维各类数据库合计2000余套,精通Oracle、MySQL、SQLServer、DB2、PostgreSQL、达梦等主流商业和开源数据库。并成为首批国内达梦战略合作伙伴之一,拥有海量经验和完善的人员培养体系。并同时提供超融合,私有云整体解决方案。
本文转自杭州美创科技有限公司公众号(新运维新数据),如需二次转载,请咨询marketing@mchz.com.cn。
Tags:归档oracle
- 上一篇:Oracle Rman概述及最佳备份策略
- 下一篇:ORACLE 体系 - 6
猜你喜欢
- 2024-11-26 Oracle单实例迁移到RAC实例
- 2024-11-26 ORACLE的RMAN 压缩类型
- 2024-11-26 部署单机oracle数据库,干货太多,我编辑都累
- 2024-11-26 ORACLE 12C RAC安装-数据库安装篇
- 2024-11-26 Oracle12c RMAN实战
- 2024-11-26 一文看懂Oracle数据库Flashback Archive定义、特性与常用脚本
- 2024-11-26 从零开始学习Oracle之数据备份与还原
- 2024-11-26 初识FlinkX-Oracle Logminer模块
- 2024-11-26 Oracle的备份恢复机制介绍
- 2024-11-26 Oracle数据恢复—异常断电导致Oracle报错,无法打开的数据恢复