4

QTP连接到数据库以通过脚本检查数据库时间时出现以下错误:

"Cannot update system time with database time due to error: ERROR: [Oracle][ODBC][Ora]ORA-28000: the account is locked"

但是给出的数据库SID和凭据是正确的,并且在某些数据库客户端中验证相同。我不确定为什么它会抛出错误QTP

谁能帮我解决这个问题?

4

2 回答 2

12

1) 使用管理员权限登录到您的 Oracle 数据库:

cmd> sqlplus / as sysdba

或者

cmd> sqlplus system/{systemPassword}@{OracleSID}

2)使用以下命令解锁您的用户帐户:

sql> alter user {yourDbUser} account unlock;

3) 仍然在 SQL*Plus 命令提示符下,防止帐户锁定不再发生:

sql> ALTER PROFILE "DEFAULT" LIMIT PASSWORD_LIFE_TIME UNLIMITED;

sql> ALTER PROFILE "DEFAULT" LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;

编辑到期评论

以上说明应该可以解决您的问题。我发布了一个我发现的与此主题相关的附加命令,您可以尝试(但我不确定它是否是解决方案):

sql> grant connect, resource to {yourDbUser};

您还可以检查数据库中其他锁定用户的状态也许您的工具正在尝试与其他一些用户建立联系,除了您正在使用的用户之外,这些用户仍然存在此问题。

于 2012-11-05T11:13:50.640 回答
1

此解决方案适用于 Oracle 10g 和错误 ORA-28000:the account is locked 在 SQL 命令行中键入:

conn sys as sysdba

输入密码

alter user system account unlock;
于 2013-12-17T08:18:22.900 回答