我的数据库问题始于我无法真正修改数据库中的任何内容的情况。我的项目专家有限的时间来帮助我。事情是这样的:
我在Oracle数据库中的用户具有比实际生产模式更旧的模式。我的部分正在研究稳定版和旧版。在每次发布之后,我们都会不断得到这个问题,有些东西(可能在Jenkins上,可能没有)自动将我们的数据库更新为版本,这是我们不想要的。我们尝试通过将密码更改为用户来解决它,但它产生了新问题。 Automat正在尝试登录,当错误传递错误时,它会再次尝试。 Oracle 11g具有此限制10次失败的登录尝试,之后它将锁定整个用户帐户,我们用它来连接我们的应用程序服务器执行db。
我们无法通过启动审计失败的登录来调查这一点,因为它发生在数据库空间上,我们的db-guy不允许我们这样做,因为如果我们超过空间限制(大约11GB),整个数据库将是死了(我们的项目并不重要)。另一件事是,那些可能设置我们问题的脚本的人在这里不再起作用了。
我们的解决方法是手动解锁帐户以通过应用程序服务器获取连接,然后等待几秒钟再次锁定(但应用服务器的连接稳定)。这是愚蠢的,你必须承认,问题是当连接因任何原因而丢失时 - 应用服务器不会自动获取它,我们必须手动完成,这不是解决方案。
我已经重新考虑了这一切,我的db-guy没有时间帮助我,我没有工具和访问权限来调查这个脚本或其他导致事情的其他问题在哪里执行,所以我开始思考:如果我们将失败登录尝试的限制设置为无限制怎么办?这会降低数据库的性能吗?这会产生任何特殊的新问题吗?也许解决方案是将PASSWORD_LOCK_TIME更改为小值?
我问你一些我可以提供给db-guy的论据,说服他使用这个新的解决方法,这样我就可以重新开始使用代码而不是数据库问题了。