我正在将石英与数据库结合使用。提供错误的数据库密码时,然后锁定db用户,然后我需要解锁数据库中的用户。似乎我使用quartz的程序尝试在后台登录几次,直到达到数据库允许的最大尝试次数,从而导致锁定。 有谁知道如何避免这种情况?如果密码错误,程序应该只报告这个,而不是多次尝试。
我的配置:
org.quartz.scheduler.skipUpdateCheck: true
org.quartz.scheduler.instanceName = feed-scheduler
org.quartz.threadPool.threadCount = 1
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread = true
org.quartz.threadPool.threadPriority = 5
org.quartz.jobStore.misfireThreshold = 60000
org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate
org.quartz.jobStore.useProperties = false
org.quartz.jobStore.tablePrefix = qrtz_
org.quartz.jobStore.isClustered = false
org.quartz.jobStore.dataSource = myDS
org.quartz.dataSource.myDS.driver = oracle.jdbc.driver.OracleDriver
org.quartz.dataSource.myDS.URL = urlToDb
org.quartz.dataSource.myDS.user = user
org.quartz.dataSource.myDS.password = pwd
org.quartz.dataSource.myDS.maxConnections = 1
org.quartz.dataSource.myDS.validationQuery=select 0 fro
m dual
答案 0 :(得分:2)
Quartz没有实现AI功能来对数据库错误/异常做出反应,也无法让他做出具体的政策。
当Quartz丢失数据库连接时(或无法连接时),他将尝试重新连接以恢复其服务。
如果您不希望Quartz锁定用户,请考虑向Quartz用户授予特定权限(如ALTER PROFILE <your_profile> LIMIT failed_login_attempts unlimited
)