查看oracle,计划任务

上传人:bin****86 文档编号:60117730 上传时间:2018-11-14 格式:DOCX 页数:20 大小:23.44KB
返回 下载 相关 举报
查看oracle,计划任务_第1页
第1页 / 共20页
查看oracle,计划任务_第2页
第2页 / 共20页
查看oracle,计划任务_第3页
第3页 / 共20页
查看oracle,计划任务_第4页
第4页 / 共20页
查看oracle,计划任务_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《查看oracle,计划任务》由会员分享,可在线阅读,更多相关《查看oracle,计划任务(20页珍藏版)》请在金锄头文库上搜索。

1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划查看oracle,计划任务转oracle定时任务(dbms_job)原文地址:http:/XX/0311/今天总结下oracle的任务队列管理器(jobqueue),以后也方便查询.我们要做定时任务时,有两种办法一种是:操作系统的定时,win的定时任务,unix的crontab一种是:数据库级的定时,她的效率更高,再有大量的表级操作时,建议用数据库本身的jobqueue,这样方便,效率高;如果用系统级定时,会增加很多编程工作,成本增加了,还很容易出错,事情越简单出错的几率越小.再使用

2、jobqueue之前,我们还要简单配置下,oracle定时执行jobqueue的后台进程是SNP,要启动snp,首先看系统模式是否支持sqlaltersystemenablerestrictedsession;或sqlaltersystemdisenablerestrictedsession;利用上面的命令更改系统的会话方式为disenablerestricted,为snp的启动创建条件.再有就是配置jobqueue的启动参数,snp的启动参数位于oracle的初始化文件中,job_queue_processes=10(oracle10gde默认值)job_queue_interval=N第一

3、行定义snp进程的启动个数为10,正常得女冠一范围是0-36,根据任务的多少,可以配置不同的数值.第二行定义系统每隔几秒唤醒该进程一次.缺省是60,正常范围是1-3600秒.事实上,该进程执行完当前任务后,就进入睡眠状态,睡眠一段时间后,由系统的总控负责将其唤醒。如果该文件中没有上面两行,请按照如上配置添加。配置完成后,需要重新启动数据库,使其生效。注意:如果任务要求执行的间隔很短的话,N的配置也要相应地小一点。查看jobqueue的详细信息,查询数据库字典user_jobseg:sqlselectjob,next_date,next_sec,brokenfromuser_jobs;包含以下子

4、过程:Broken()过程。change()过程。Interval()过程。Isubmit()过程。Next_Date()过程。Remove()过程。Run()过程。Submit()过程。User_Export()过程。What()过程。1、Broken()过程更新一个已提交的工作的状态,典型地是用来把一个已破工作标记为未破工作。这个过程有三个参数:job、broken与next_date。PROCEDUREBroken(jobINbinary_integer,BrokenINboolean,next_dateINdate:=SYSDATE)job参数是工作号,它在问题中唯一标识工作。brok

5、en参数指示此工作是否将标记为破TRUE说明此工作将标记为破,而FLASE说明此工作将标记为未破。next_date参数指示在什么时候此工作将再次运行。此参数缺省值为当前日期和时间。2、Change()过程用来改变指定工作的设置。这个过程有四个参数:job、what、next_date与interval。PROCEDUREChange(jobINbinary_integer,WhatINvarchar2,next_dateINdate,intervalINvarchar2)此job参数是一个整数值,它唯一标识此工作。What参数是由此工作运行的一块PL/SQL代码块。next_date参数指示

6、何时此工作将被执行。interval参数指示一个工作重执行的频度。3、Interval()过程用来显式地设置重执行一个工作之间的时间间隔数。这个过程有两个参数:job与interval。PROCEDUREInterval(jobINbinary_integer,IntervalINvarchar2)job参数标识一个特定的工作。interval参数指示一个工作重执行的频度。4、ISubmit()过程用来用特定的工作号提交一个工作。这个过程有五个参数:job、what、next_date、interval与no_parse。PROCEDUREISubmit(jobINbinary_ineger,

7、WhatINvarchar2,next_dateINdate,intervalINvarchar2,no_parseINbooean:=FALSE)这个过程与Submit()过程的唯一区别在于此job参数作为IN型参数传递且包括一个由开发者提供的工作号。如果提供的工作号已被使用,将产生一个错误。5、Next_Date()过程用来显式地设定一个工作的执行时间。这个过程接收两个参数:job与next_date。PROCEDURENext_Date(jobINbinary_ineger,next_dateINdate)job标识一个已存在的工作。next_date参数指示了此工作应被执行的日期与时间

8、。6、Remove()过程来删除一个已计划运行的工作。这个过程接收一个参数:PROCEDURERemove(jobINbinary_ineger);job参数唯一地标识一个工作。这个参数的值是由为此工作调用Submit()过程返回的job参数的值。已正在运行的工作不能由调用过程序删除。7、Run()过程用来立即执行一个指定的工作。这个过程只接收一个参数:PROCEDURERun(jobINbinary_ineger)job参数标识将被立即执行的工作。8、使用Submit()过程,工作被正常地计划好。这个过程有五个参数:job、what、next_date、interval与no_parse。P

9、ROCEDURESubmit(jobOUTbinary_ineger,WhatINvarchar2,next_dateINdate,intervalINvarchar2,no_parseINbooean:=FALSE)job参数是由Submit()过程返回的binary_ineger。这个值用来唯一标识一个工作。what参数是将被执行的PL/SQL代码块。next_date参数指识何时将运行这个工作。interval参数何时这个工作将被重执行。no_parse参数指示此工作在提交时或执行时是否应进行语法分析TRUE指示此PL/SQL代码在它第一次执行时应进行语法分析,而FALSE指示本PL/S

10、QL代码应立即进行语法分析。9、User_Export()过程返回一个命令,此命令用来安排一个存在的工作以便此工作能重新提交。此程序有两个参数:job与my_call。PROCEDUREUser_Export(jobINbinary_ineger,my_callINOUTvarchar2)job参数标识一个安排了的工作。my_call参数包含在它的当前状态重新提交此工作所需要的正文。10、What()过程应许在工作执行时重新设置此正在运行的命令。这个过程接收两个参数:job与what。PROCEDUREWhat(jobINbinary_ineger,WhatINOUTvarchar2)job参

11、数标识一个存在的工作。what参数指示将被执行的新的PL/SQL代码。一个简单例子:创建测试表SQLcreatetablea(adate);表已创建。创建一个自定义过程SQLcreateorreplaceproceduretestas2begin3insertintoavalues(sysdate);4end;5/过程已创建。创建JOBSQLvariablejob1number;SQLSQLbegin2dbms_(:job1,test;,sysdate,sysdate+1/1440);运行test过程一次3end;4/PL/SQL过程已成功完成。运行JOBSQLbegin2dbms_(:job

12、1);3end;4/PL/SQL过程已成功完成。SQLselectto_char(a,yyyy/mm/ddhh24:mi:ss)时间froma;时间-XX/01/0723:51:21XX/01/0723:52:22XX/01/0723:53:24删除JOBSQLbegin-每天1440分钟,即一分钟ORACLE中查看执行计划及SQLTRACE有三种方法:1.ExplainplanSQLexplainplanforselect*fromaa;查看结果:SQLselect*fromtable(dbms_();SQLsettimingon-记录所用时间SQLsetautotracetraceonly

13、-自动记录执行计划然后执行SQL语句即可。_TRACEORACLESQL_TRACE“SQLTRACE”是Oracle提供的用于进行SQL跟踪的手段,是强有力的辅助诊断工具。在日常的数据库问题诊断和解决中,“SQLTRACE”是非常常用的方法。一般,一次跟踪可以分为以下几步:1、界定需要跟踪的目标范围,并使用适当的命令启用所需跟踪。2、经过一段时间后,停止跟踪。此时应该产生了一个跟踪结果文件。3、找到跟踪文件,并对其进行格式化,然后阅读或分析。本文就“SQLTRACE”的这些使用作简单探讨,并通过具体案例对SQL_TRACE的使用进行说明。一、“SQLTRACE”的启用。(A)SQL_TRAC

14、E说明SQL_TRACE可以作为初始化参数在全局启用,也可以通过命令行方式在具体session启用。1在全局启用在参数文件(pfile/spfile)中指定:SQL_TRACE=true在全局启用SQL_TRACE会导致所有进程的活动被跟踪,包括后台进程及所有用户进程,这通常会导致比较严重的性能问题,所以在生产环境中要谨慎使用。提示:通过在全局启用SQL_TRACE,我们可以跟踪到所有后台进程的活动,很多在文档中的抽象说明,通过跟踪文件的实时变化,我们可以清晰的看到各个进程之间的紧密协调。2在当前session级设置大多数时候我们使用SQL_TRACE跟踪当前会话的进程。通过跟踪当前进程可以发现当前操作的后台数据库递归活动(这在研究数据库新特性时尤其有效),研究SQL执行,发现后台错误等。在session级启用和停止SQL_TRACE方

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号