oracle用户解锁

创建一个概要文件

 create profile frank_profile limit
    SESSIONS_PER_USER  5
    IDLE_TIME  2
    FAILED_LOGIN_ATTEMPTS 5;

创建一个测试的用户:

-- Create the user
create user TEST001

  identified by "123RR??"
  default tablespace TEST2_DATA
  temporary tablespace temp02
 profile FRANK_PROFILE
 quota unlimited on TEST2_DATA;

用sys用户登录查看用户的状态

SQL>  select USERNAME,ACCOUNT_STATUS from dba_users;

USERNAME                       ACCOUNT_STATUS
------------------------------ --------------------------------
OUTLN                          OPEN
SYS                            OPEN
SYSTEM                         OPEN
TEST001                       OPEN
TSMSYS                         EXPIRED & LOCKED
DIP                            EXPIRED & LOCKED
DBSNMP                         EXPIRED & LOCKED;

然后用TEST001帐号登录数据库:

SQL> conn TEST001  /123RR??@csyn
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified

报错。原来是创建用户的时候忘了赋权先;

SQL> conn / as sysdba
Connected.
SQL> grant create session,resource to TEST001;

Grant succeeded.


SQL> conn TEST001/123RR??
Error accessing PRODUCT_USER_PROFILE
Warning:  Product user profile information not loaded!
You may need to run PUPBLD.SQL as SYSTEM
Connected.
SQL> show user
USER is "TEST001"
SQL>  conn / as sysdba
Connected.

先锁上帐号:

SQL> alter user TEST001 account LOCK;

User altered.

SQL> select USERNAME,ACCOUNT_STATUS from dba_users;

USERNAME                       ACCOUNT_STATUS
------------------------------ --------------------------------
OUTLN                          OPEN
SYS                            OPEN
SYSTEM                         OPEN
TEST001                       LOCKED
TSMSYS                         EXPIRED & LOCKED
DIP                            EXPIRED & LOCKED
DBSNMP                         EXPIRED & LOCKED


SQL> conn TEST001/123RR??
ERROR:
ORA-28000: the account is locked

解锁:

SQL> conn DBUSRC01/123future??
ERROR:
ORA-28000: the account is locked


SQL> conn / as sysdba
Connected.
SQL>  alter user TEST001 account unlock;

User altered.

SQL>  select USERNAME,ACCOUNT_STATUS from dba_users;

USERNAME                       ACCOUNT_STATUS
------------------------------ --------------------------------
OUTLN                          OPEN
SYS                            OPEN
SYSTEM                         OPEN
TEST001                       OPEN
TSMSYS                         EXPIRED & LOCKED
DIP                            EXPIRED & LOCKED
DBSNMP                         EXPIRED & LOCKED

这样就可以登录了

原文地址:https://www.cnblogs.com/future2012lg/p/3199293.html