前几天,我和系统运维的同事处理一个看似诡异的问题,他找到我说应用服务器启动的时候报了DB的Error,但是错误信息有限,他也没法完全定位到错误的原因,所以就希望我来帮忙看看这个问题是怎么回事,怎么解决。

从应用服务启动的日志来看,错误信息是连接池的地方有了问题。

Error: 2017-06-09 10:04:59 init connpool:one or more conn open error.
Error: 2017-06-09 10:12:50 init connpool:one or more conn open error.

带着疑问我根据他提供的基本信息定位到了数据库服务端的端口,查看监听器的日志,发现下面的一段内容:

09-JUN-2017 10:06:46 * <unknown connect data> * 12537
TNS-12537: TNS:connection closed
 TNS-12560: TNS:protocol adapter error
  TNS-00507: Connection closed
   Linux Error: 115: Operation now in progress
09-JUN-2017 10:06:54 * <unknown connect data> * 12537
TNS-12537: TNS:connection closed
 TNS-12560: TNS:protocol adapter error
  TNS-00507: Connection closed
   Linux Error: 115: Operation now in progress

这是一个12c的环境,这个CDB里面有大概8个PDB,所以我得定位到具体的PDB继续测试。

如果说是CDB级别的数据库层面有问题,我可以看到有几个PDB的连接数大概有300多个。而出问题的PDB连接数确实为0,这一点也确实有些怪异。

是这个PDB有问题吗,我看PDB的状态是READ WRITE,连接没有任何限制,而且我使用已有的一个用户名和密码做连接测试是没有问题的。况且在这位同事范酷IDE那个时间点,我们也没有做什么操作,这样想来就很奇怪了。

而问题的分析一下子陷入了僵局,系统运维的同学找不到更多的信息,而我也得不到很多明确的信息。当然问题既然反馈,还是可能存在的,于是我开始逐个梳理这些信息,当查到这个关联用户的状态时,我感觉应该是哪里出了问题。SQL> SELECT USERNAME,ACCOUNT_STATUS FROM CDB_USERS WHERE USERNAME LIKE 'SH_USER';
USERNAME                       ACCOUNT_STATUS      
SH_USER                        EXPIRED(GRACE)

这个用户的状态竟然是expired(grace),这样一个状态该怎么理解呢。这个用户为什么会失效呢,如果这样想来,这个问题就有了一个基本的思路。

为什么会失效,默认11g的数据库中的profile为DEFAULT时,其中一个属性PASSWORD_LIFE_TIME 是 180,也就是半年的样子,密码就会失效。

那么问题来了,这个业务是个长连接的场景,哪怕失效了,在当前的会话里面还是能够保持连接的,这个问题我就可以回答了,因为前一天晚上碰到了一个PGA的报警,我做了重启,而应用层面有了重连机制,所以大部分的会话连接都没有问题,而这个PDB的profile设置保持了默认值,在断开连接之后重连就会碰到账户失效的问题。

这样一来解决方法就相对简单,因为应用端是加密的密码,我也无从得知原来的明文密码,所以我们就可以重置密码,有个小技巧。

SQL>  select name,password from user$ where name='USER_SH';
NAME                           PASSWORD
------------------------------ ---------------------------
USER_SH                    E2E9010EA87D283F

然后直接重置即可。

alter user USER_SH identified by values 'E2E9010EA87D283F';

这样密码没有改变,账户的状态就为open了,这样一来问题就引刃而解了。

Oracle数据库重启后密码失效的问题(r12笔记第91天)相关推荐

  1. oracle数据库Sys密码策略,Oracle数据库加固之密码策略解析

    我们都知道密码策略加固的参数一般包括密码长度.复杂度检测.最大最小使用时间.过期警报时间.最大登录失败次数以及锁定时间等设置. Oracle默认提供了一个密码策略的sql执行文件utlpwdmg.sq ...

  2. 不停应用重启oracle数据库,此类情况下解决Oracle数据库重启的四种方案

    原题:Oracle数据库重启(内存参数numperm_global相关) 故障描述 Oracle数据库发生重启. 系统环境 AIX 6100-07-05-1228 Oracle 11g 故障分析 首先 ...

  3. oracle修改数据库用户名密码,怎样修改oracle数据库的用户名密码

    对于不经常使用数据库的同学们来说,忘记用户名密码是很常见的一件事.下面就让学习啦小编给大家说说怎样修改oracle数据库的用户名密码吧. 修改oracle数据库用户名密码的方法 进入cmd命令界面(快 ...

  4. 忘记oracle管理员密码了,解决oracle数据库忘记系统管理员密码

    解决oracle数据库忘记系统管理员密码 下面我分两步讲解这个问题,1)Oracle数据库的三种认证机制:2)oracle数据库忘记系统管理员密码怎么办? 1.Oracle数据库的三种认证机制 a)操 ...

  5. oracle数据库账号密码忘记,忘记了oracle数据库用户的密码

    当我们忘记了oracle数据库的用户的密码,同时又不知道比该用户权限更大的用户的密码,该怎么办呢?下面是学习啦小编收集整理的忘记了oracle数据库用户的密码,希望对大家有帮助~~ 忘记了oracle ...

  6. MySQL--忘记密码,重置密码重启服务密码失效(Windows)

    一.问题说明 最近在Windows下操作mysql数据库,我装的是mysql5.7版本的,但是忘记了安装时设置的密码, 通过mysqld -nt --skip-grant-tables 跳过安全检查登 ...

  7. 服务器重启oracle数据库服务器,oracle数据库怎么重启_网站服务器运行维护,oracle,数据库,重启...

    linux操作系统好学吗_网站服务器运行维护 学习大多类似鹿丁解牛,对事物的认识一般都是由浅入深.由表及里的过程,循序才能渐进.学习Linux同样要有一定的顺序和方法,这样学起来就不会感觉到难了. o ...

  8. 登录Oracle数据库遇到ORA-01017密码错误的解决办法

    文章目录 症状 分析 解决办法 我们在登录Oracle数据库时可能会遇到ORA-01017错误,这里分析原因并提供解决办法. 点击试看博主的专著<MySQL 8.0运维与优化>(清华大学出 ...

  9. oracle修改数据库用户名密码,修改oracle数据库用户名及密码的方法

    改oracle数据库用户名称和密码(Linux为例),有需要的朋友可以参考下. 一.修改前准备工作: 使用ssh工具以root身份连接服务器, 然后切换到oracle用户:su - oracle(回车 ...

最新文章

  1. 参考文献必备神器:这个插件能快速知道收藏的论文是否靠谱
  2. 输入今天是星期几的序号,给今天和昨天赋予枚举值,并输出昨天是星期几的枚举值
  3. 自学是一门艺术:踏上数据科学、人工智能和机器学习的自学之路
  4. 如何使用网络库实现应用级消息收发
  5. NCHW与NC4HW4数据排布在卷积优化上的优劣分析
  6. 什么是python函数_Python之什么是函数
  7. vue-cli 脚手架移除、安装(最新版安装)、检测安装结果 - npm篇
  8. 01 掌握运算符的分类 1204
  9. js 将多个对象合并成一个对象
  10. linux登录交换机备份脚本,如何从Linux上备份和恢复许多Cisco路由器和交换机的配置?...
  11. 手动编译安装lanmp centos6.5 64位
  12. cocos2dx lua 升级spine兼容Spine库v3.8到最新版本
  13. 计算机三级网络技术无纸化考试模拟软件(2019.3 2019.9) 包含激活码 未来教育
  14. 一文将 DCDC 的 Layout 讲的明明白白,收藏这篇就够了
  15. 在单核CPU下,有必要存在多线程吗?
  16. 包政讲营销录音(1)
  17. Graham算法构造凸包(python)
  18. Win10邮件应用怎么添加网易邮箱
  19. html崩溃手机代码15,这12行代码分分钟让你电脑崩溃手机重启
  20. Request请求转发与URL编码

热门文章

  1. java 识别手机_java – 如何识别手机闲置?
  2. 修复版超强大微信小程序源码-内含几十款功能王者战力查询
  3. PHP响应式H5图片网盘外链系统源码 自适应PC手机端
  4. 视频号扩展链接助手小程序功能模块源码v1.5.0
  5. WCF必知必会以及与Webapi的区别
  6. 无法搜索到电脑模拟热点的可以尝试一下(adhoc补丁)
  7. 双语经典:告别单身的必杀技之情话连篇
  8. asp.net 在线 mp3,wma, avi
  9. 音乐无界限,听见好时光—网易云音乐Linux版震撼来袭!
  10. Moodle: 查询任意数据库