我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Oracle数据库JOB失败怎么解决

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Oracle数据库JOB失败怎么解决

今天小编给大家分享一下Oracle数据库JOB失败怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

数据库版本:11.2.0.3

测试说明:这里创建了一个日志表以及一个运行时必定出错的procedure,用于job的运行。这里只要记录下每次job执行时视图user_jobs 中的 next_date就可以推断出job 执行失败后的重试规律。

为了测试job的重试规律我做了如下工作

日志表以及序列:

  1. create table job_exec_logs (id number ,current_date date , next_date date ,failures number ,broken varchar2( 2)) ;  

  2.   

  3. create sequence seq_job_exec_logs_id ;  

测试procedure

  1. create or replace procedure pro_my_test is  

  2. begin  

  3.   insert into job_exec_logs select  

  4. seq_job_exec_logs_id.nextval , sysdate , next_date , failures , broken from user_jobs ;  

  5.   commit ;  

  6.   execute immediate 'select * from ddddsfs' ;  

  7. end ;  

其中ddddsfs表示不存在的,也就是说只要运行pro_my_test存储过程到最后都会出错(但是日志表还是可以正常插入进去的)

创建job:

  1. var job number ;  

  2. begin  

  3.   sys.dbms_job.submit(job => :job,  

  4.                       what => 'pro_my_test ;',  

  5.                       next_date => sysdate,  

  6.                       interval => 'sysdate+5' );  

  7.   commit;  

  8. end;  

  9. /  

其实整个测试过程没什么可说的,让job自动运行即可,但是需要等待job下次重试时间。

最后测试的结果:

  1. dexter@REPO>select trunc((next_date-lag(next_date,1) over (order by 4))*24*60) from (  

  2.   2  select * from job_exec_logs  

  3.   3  union all  

  4.   4  select 11111, sysdate , next_date ,failures , broken from user_jobs  

  5.   5  order by 4 nulls first) ;  

  6.   

  7. TRUNC((NEXT_DATE-LAG(NEXT_DATE,1)OVER(ORDER BY 4))*24*60)  

  8. -------------------------------------------------------  

  9.   

  10.                                                       2  

  11.                                                       4  

  12.                                                       8  

  13.                                                      15  

  14.                                                      32  

  15.                                                      64  

  16.                                                     128  

  17.                                                     256  

  18.                                                     512  

  19.                                                    1024  

  20.                                                    1440  

  21.                                                    1440  

  22.   

  23. 已选择13行。  

如上结果以及笔者的其他测试可以判断出:

1、每次重试时间都是递增的,第一次2分钟,4分钟,8分钟,16分钟 ... 依此类推。

2、当超过1440分钟,也就是24小时的时候,固定的重试时间为1天。

3、笔者还经过其他实验得知,超过16次重试后,job 就会被标记为broken ,next_date 为4000-1-1,也就是不再进行job重试。

4、oracle数据库重试的时间到达设定的下次执行时间后,以设定的job执行时间为准。

以上就是“Oracle数据库JOB失败怎么解决”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Oracle数据库JOB失败怎么解决

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

plsql连接oracle数据库失败怎么解决

当PL/SQL连接到Oracle数据库失败时,可以尝试以下解决方案:检查连接字符串:确保连接字符串中包含正确的主机名、端口号、数据库名称和认证信息。检查网络连接:确保网络连接正常,可以ping数据库服务器来测试网络连接是否通畅。检查数据库状
plsql连接oracle数据库失败怎么解决
2024-04-09

mysql创建数据库失败怎么解决

检查权限:确保你有足够的权限来创建数据库。你需要使用具有CREATE DATABASE权限的MySQL用户。检查语法:确保你的CREATE DATABASE语句语法正确。正确的语法应该是:CREATE DATABASE database_n
mysql创建数据库失败怎么解决
2024-04-09

mysql连接数据库失败怎么解决

MySQL连接数据库失败可能有多种原因,以下是一些常见的解决方法:检查MySQL服务是否启动:首先确保MySQL服务已经启动,可以使用命令行或者服务管理工具来查看MySQL服务的状态。检查MySQL端口是否被占用:MySQL默认端口是330
mysql连接数据库失败怎么解决
2024-03-04

sqlserver创建数据库失败怎么解决

要解决SQL Server创建数据库失败的问题,可以尝试以下几种方法:检查权限:确保当前用户有足够的权限来创建数据库。如果没有权限,可以尝试使用具有创建数据库权限的管理员账户。检查数据库名称:确保数据库名称没有使用保留字或特殊字符,否则可能
sqlserver创建数据库失败怎么解决
2024-04-09

sqlplus连接数据库失败怎么解决

如果您无法连接到数据库,请尝试以下步骤来解决问题:确保数据库服务正常运行:检查数据库服务是否正在运行,并且能够正常连接。检查连接信息:确认您正在使用的连接信息(如用户名、密码、数据库名称、主机名、端口号等)是否正确。检查网络连接:确保您的网
sqlplus连接数据库失败怎么解决
2024-04-09

mysql数据库创建失败怎么解决

如果MySQL数据库创建失败,可能有多种原因导致,以下是一些常见的解决方法:检查MySQL服务是否正常运行:确保MySQL服务已经启动,并且没有发生任何错误。检查数据库名是否合法:数据库名不能包含特殊字符或者关键字,保证数据库名是合法的。检
mysql数据库创建失败怎么解决
2024-03-12

JDBC连接数据库失败怎么解决

当JDBC连接数据库失败时,可以尝试以下解决方法:1. 检查数据库服务是否正常运行:确保数据库服务已启动,并且可以通过其他客户端工具成功连接数据库。2. 检查数据库连接参数:确认连接字符串、用户名和密码是否正确。尤其是检查数据库名、主机地址
2023-09-14

sqlserver删除数据库失败怎么解决

解决SQL Server删除数据库失败的方法如下:检查权限:确保当前登录用户具有足够的权限来删除数据库。如果没有足够的权限,你可以尝试使用具有管理员权限的账户来删除数据库。检查连接:确保没有其他用户或进程正在使用该数据库。使用以下查询来检查
2023-10-22

MongoDB删除数据库失败怎么解决

如果 MongoDB 删除数据库失败,可以尝试以下几种解决方法:检查权限:确保当前用户具有足够的权限来删除数据库。可以使用管理员账户登录并尝试删除数据库。检查连接状态:确保 MongoDB 服务正在运行,并且能够正常连接到数据库。使用强制删
MongoDB删除数据库失败怎么解决
2024-05-22

mongodb切换数据库失败怎么解决

当在MongoDB中切换数据库失败时,可能是由于以下原因导致的:没有指定正确的数据库名称:确保在切换数据库时输入的数据库名称是正确的,检查是否有拼写错误或者大小写问题。没有权限切换到指定数据库:在MongoDB中,需要有足够的权限才能切换到
mongodb切换数据库失败怎么解决
2024-04-09

java连接sqlserver数据库失败怎么解决

如果Java连接SQL Server数据库失败,可以尝试以下解决方法:检查数据库连接URL是否正确:确保URL中包含正确的主机名、端口号、数据库名称等信息。检查数据库驱动是否正确加载:确保已经正确加载了SQL Server的JDBC驱动程序
2023-10-24

vscode连接mysql数据库失败怎么解决

连接 MySQL 数据库失败可能由多种原因引起,以下是一些可能的解决方案:检查 MySQL 服务是否正在运行:确保 MySQL 服务已经启动并正在运行。你可以在命令行中输入 sudo service mysql status 来检查 MyS
vscode连接mysql数据库失败怎么解决
2024-04-09

java连接sqlserver数据库失败怎么解决

Java连接SQLServer数据库失败时,可依次检查:连接字符串(服务器、端口、数据库、用户名/密码)JDBC驱动程序(添加正确版本)TCP/IP连接(启用TCP/IP协议)防火墙设置(允许入站连接)数据库引擎服务(确保正在运行)登录权限(用户具有连接数据库权限)时区设置(保持一致)连接池问题(检查池配置)异常消息(诊断错误原因)供应商支持(联系微软或JDBC驱动程序供应商)
java连接sqlserver数据库失败怎么解决
2024-04-10

idea连接mysql数据库失败怎么解决

连接MySQL数据库失败可能是由于以下几个原因导致的:MySQL服务器未启动:确保MySQL服务器已经启动。可以在命令行中输入 mysql 命令来验证MySQL服务器是否正常运行。主机名或IP地址错误:确保连接MySQL时使用的主机名或IP
idea连接mysql数据库失败怎么解决
2024-04-09

云数据库mysql搭建失败怎么解决

当云数据库MySQL搭建失败时,可以尝试以下解决方法:检查网络连接:确保网络连接稳定,可以访问云数据库MySQL的服务地址。检查权限设置:确保账号拥有足够的权限来搭建云数据库MySQL实例。检查参数设置:检查所填写的配置参数是否正确,包括数
云数据库mysql搭建失败怎么解决
2024-04-09

mysql初始化数据库失败怎么解决

要解决mysql数据库初始化失败问题,请遵循以下步骤:检查权限并确保使用有适当权限的用户。如果数据库已存在,请删除它或选择不同的名称。如果表格已存在,请删除它或选择不同的名称。检查sql语句是否存在语法错误。确认mysql服务器正在运行且可
mysql初始化数据库失败怎么解决
2024-04-14

navicat连接mysql数据库失败怎么解决

连接 MySQL 数据库失败可能有多种原因,下面是一些常见的解决方法:确保 MySQL 服务器已经启动。在终端或命令提示符中输入 mysql.server start(MacOS/Linux)或 net start mysql(Window
navicat连接mysql数据库失败怎么解决
2024-04-09

编程热搜

目录