问题描述:

2017-10-18 13:41:52应用反馈测试库连不上。

排查思路:

1,远程登录测试数据库服务器,sqlplus连接数据库,发现报错:

ORA-00604: error occurred at recursive SQL level 1

ORA-00018: maximum number of sessions exceeded

数据库连接数满了,这个库连接数是1000个,正常情况下还是有很空余的连接。肯定是有非正常连接导致。(这里怀疑是应用程序连接池设置太大没回收导致)

lsnrctl stop 停用监听。

通过ps -ef|grep LOCAL=NO查出不是本地连接的连接进程编号。

批量kill -9查询到的进程编号,释放部分空闲连接,

Sqlplus / as sysdba连接到数据库。

通过SQL>select count(*),program,machine from v$session group by program,machine order by 1 asc;查出连接数最多的程序,让开发重启程序。

重启之后,过一会发现连接还是进程数满,这时怀疑应该是其他问题,进一步检查连接的程序发现如下问题:

库中竟然有168个job进程在运行,这个似乎不合常理,这个时候怀疑是否是job异常或者job的bug造成的。

查看库中可并行执行job的个数:

SQL>show parameter job_queue_processes

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

job_queue_processes                  integer     1000

修改成为20,看库是否正常:

SQL>alter system set job_queue_processes=20 scope=both;

重启数据库,释放部分连接:

SQL>shutdown abort; --这里最好不要用immediate;

SQL>startup mount;

SQL>alter database open;

这个时候查询会话数,只有100多是正常范围。

打开监听,用plsqldev测试能否正常连接

lsnrctl start

这时用客户端plsql dev工具连接,登陆数据库。发现连接无响应,plsql dev卡死。

客户端tnsping  Ip地址/orcl返回正常

远程连接到服务器,

服务端sqlplus / as sysdba --正常

切换应用账号conn syerp/*** --卡死

3,这时肯定是其他问题造成的,检查alert日志,查看是否有明显报错:

结合以前的经验发现,这个报错应该和盗版软件携带病毒有关。

解决办法:

手解决问题:

A,修改job_queue_process为0,禁止job的运行。

SQL>alter system set job_queue_process=0 scope=both ;

B,重启数据库

SQL>shutdowm abort;

SQL>startup mount;

SQL>alter database open;

C,找到最近新建的对象

Select *  from dba_objects  where  to_char(created,’yyyymmdd’)=’20171018’;

D,删除这些对象

drop trigger syerp."DBMS_CORE_INTERNAL         " ;

drop trigger syerp."DBMS_SUPPORT_INTERNAL         " ;

drop trigger syerp."DBMS_SYSTEM_INTERNAL         " ;

drop PROCEDURE syerp."DBMS_CORE_INTERNAL         " ;

drop PROCEDURE syerp."DBMS_SUPPORT_INTERNAL         " ;

drop PROCEDURE syerp."DBMS_SYSTEM_INTERNAL         " ;

drop PROCEDURE syerp."DBMS_STANDARD_FUN9         " ;

F,删除创建的大量JOB:

select count(*) from  dba_jobs

where schema_user='SYERP'

and what  like 'DBMS_STANDARD_FUN9(%';

结果大概有8W多个。

分批批量删除:

select 'exec dbms_job.remove('||job||');'

from dba_jobs

where schema_user='SYERP'

and what  like 'DBMS_STANDARD_FUN9(%' and rownum<5000;

E,确认被job truncate的表:

select * from dba_objects

where to_char(last_ddl_Time,'yyyymmdd')='20171018' and owner='SYERP'

还好并没有表被清理。

F,测试连接,一切正常

G,开启job数:

H:检查alert日志是否正常:

后续:

通过数据库的listener日志,检查在12:07左右有哪些人用plsql dev工具连接数据库。发现如下:(数据库没有开审计,只能从监听日志排查)

通过和该同事沟通,发现确实是使用不良的软件导致:

数据库勒索病毒故障处理相关推荐

  1. 中招ORACLE比特币勒索病毒——处理过程详解

    目录 病毒告警 事件处理 1.修改job参数,防止病毒程序自启​​​​​​​ 2.杀掉job进程,停止正在运行的病毒程序自动任务 3.禁用数据库监听 4.杀LOCAL=NO的会话 5.查找病毒程序 6 ...

  2. 数据库比特币勒索病毒攻击警示,云和恩墨技术通讯六月刊精选

    各位亲爱的用户/读者朋友们: 为了及时共享行业案例,通告共性问题,达成知识共享和提前预防,我们整理和编辑了<云和恩墨技术通讯>(6月刊),通过对过去一段时间的知识回顾和故障归纳,以期提供有 ...

  3. 超实用的脚本——检查oracle数据库是否存在潜伏的比特币勒索病毒

    转载来源 : 超实用的脚本--检查oracle数据库是否存在潜伏的比特币勒索病毒 : http://www.safebase.cn/article-254989-1.html 概述 分享一个工作中经常 ...

  4. oracle中毒,oracle数据库中毒恢复 oracle数据库解密恢复 服务器中勒索病毒解密恢复.Hermes666...

    oracle数据库中毒恢复 oracle数据库解密恢复 服务器中勒索病毒解密恢复.Hermes666 客户名称 保密 数据类型 oracle 11G 数据容量 100 gb 故障类型 服务器中毒,文件 ...

  5. 服务器中勒索病毒解密恢复 SQL数据库中勒索病毒解密恢复 SQL数据库被加密恢复...

    服务器中勒索病毒解密恢复 SQL数据库中勒索病毒解密恢复 SQL数据库被加密恢复 前天接到一位客户求救 说几台服务器都中招了,这个也很常见了.客户发来加密的MDF后,我们使用数据库修复软件 任何一款 ...

  6. SQL数据库修复教程-浪潮GS7.0中了后缀是.5ss5c勒索病毒修复过程

    SQL数据库修复教程-浪潮GS7.0中了后缀是.5ss5c勒索病毒修复过程 今天接到一个浪潮GS7.0的用户的求救电话,中了后缀是.5ss5c的勒索病毒,服务器里的所有文件被加密,重要的SQL数据库文 ...

  7. 达思SQL数据库修复软件1.7(支持碎片重组、支持勒索病毒加密的sql数据库修复软件)

    达思SQL数据库修复软件(支持碎片重组,支持勒索病毒加密的修复) 达思SQL数据库修复软件 D-Recovery for MS SQL Server 界面 达思SQL数据库修复软件(支持碎片重组,支持 ...

  8. 【数据库修复】Mallox勒索病毒家族的数据库文件可100%修复

    目录 前言:简介 一.Mallox勒索病毒家族的.consultransom后缀勒索病毒是什么? 二.中了.consultransom后缀勒索病毒文件怎么恢复? 三.恢复案例介绍: 1. 被加密数据库 ...

  9. 一次ORACLE数据库的勒索病毒的处理

    问题: ORACLE数据库的勒索病毒是一个老话题了,2016/2017年时候爆发过一波,当时主要是PLSQ DEV/TOAD等工具的登陆数据库脚本被注入病毒:近期又有客户中招,所幸发现及时,相应的存储 ...

最新文章

  1. C++中 gets()函数
  2. 加载cv2调用摄像头_用Python获取摄像头并实时控制人脸
  3. Confluence 6 如何保持我空间的整洁
  4. 落地华东总部、上线创新云、签约AIoT产业基金……京东云南京“新动作”...
  5. python画图角度_Python画图
  6. 有意思的onerror的用法
  7. mysql不用limit怎么分页_mysql limit 分页的用法及注意要点
  8. java空格 逗号_Java将字符串中的空格换为逗号
  9. java设计一个bank类实现银行_AOS公链推出“隐私Bank”,彻底打破资产发行门槛!...
  10. deepin 使用cuda硬件解码
  11. python全0序列_Python合集之Python序列(一)
  12. Navicat Premium 12 安装教程 + 注册机 Navicat_Keygen_Patch_v5.0_By_DFoX_CHS [附资源]
  13. python教学ppt百度云_python教程ppt百度云盘-Python教程ppt课件类型的
  14. MIME 类型大全,你值得收藏
  15. 2019年入职体检那些事
  16. Mac OS X: 彻底删除GeekTool(bash脚本)
  17. 数据中心“容灾”和“备份”的区别
  18. 校园财务管理系统——数据库设计
  19. CSS 的关键帧和动画
  20. 无线访问域服务器,管理用户的RADIUS服务器认证无线局域网控制器WLC配置-Cisco.PDF...

热门文章

  1. markdown编辑微信公众号
  2. CTSCAPIO 2017游记
  3. 《数据库概论》实验(6):交互式SQL--视图与授权
  4. 音频质量评价体系那些事
  5. 定时定点打卡活动策划使用小程序解决方案 greeting = “Good day“;
  6. java实现文件管理
  7. Qt报错:XXX does not name a type
  8. 熊猫烧香攻防战 武汉男孩称不再更新版本
  9. Ctrl+Space冲突解决及输入法精简
  10. 微信小程序云开发教程-互联网软件产品开发流程和团队分工