先发句牢骚,明明刚才写完了,发布的时候却说没登陆,一下子全没了。
今天打开EM发现提示
ORA-28001: the password has expired (DBD ERROR: OCISessionBegin) |
于是查找了一下资料,密码过期导致EM无法登录。ORACLE11G默认的口令期限是180天,为了永久解决这个问题只能修改配置文件。
1、查看目前数据库中的口令期限
SYS@ orcl>select * from dba_profiles where profile='DEFAULT' 2 and resource_name='PASSWORD_LIFE_TIME';
PROFILE RESOURCE_NAME RESOURCE LIMIT ------------------------------ -------------------------------- ------------------------------------------------ DEFAULT PASSWORD_LIFE_TIME PASSWORD 180
2、修改成无限制的
SYS@ orcl>alter profile default limit password_life_time unlimited;
3、查看em的两个账号状态sysman和dbsnmp
SYS@ orcl>select username,account_status from dba_users;
USERNAME ACCOUNT_STATUS ------------------------------ -------------------------------- TEST OPEN TEST2 OPEN SCOTT OPEN HR OPEN ORACLE_OCM EXPIRED & LOCKED XS$NULL EXPIRED & LOCKED BI EXPIRED & LOCKED PM EXPIRED & LOCKED MDDATA EXPIRED & LOCKED IX EXPIRED & LOCKED SH EXPIRED & LOCKED
USERNAME ACCOUNT_STATUS ------------------------------ -------------------------------- DIP EXPIRED & LOCKED OE EXPIRED & LOCKED APEX_PUBLIC_USER EXPIRED & LOCKED SPATIAL_CSW_ADMIN_USR EXPIRED & LOCKED SPATIAL_WFS_ADMIN_USR EXPIRED & LOCKED DBSNMP EXPIRED SYSMAN EXPIRED
4、2个账号都过期,于是修改密码
SYS@ orcl>alter user dbsnmp identified by oracle;
User altered.
SYS@ orcl>alter user sysman identified by oracle;
User altered.
5、再重新打开EM,能够正常使用了。在修改密码前我重新启动过数据库和EM