[原创]emctl不可用的原因
数据库状态当前不可用。可能是因为数据库正在装载或卸载。单击 '启动' 可以获得当前状态并打开数据库。如果无法打开数据库, 单击 '执行恢复' 可执行相应的恢复操作。

开始是以为emctl坏了,差点重新config一遍,后来上网搜索了一下,怀疑是sysman用户失效的原因。
按照网上找到的资料,重新设置取消密码过期的限制:
SQL> conn /as sysdba;
Connected.
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Profile altered.
查找了一下,DEFAULT已经修改了:
SQL> _select__ * from dba_profiles s where s.profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME';
PROFILE RESOURCE_NAME RESOURCE
------------------------------ -------------------------------- --------
LIMIT
----------------------------------------
DEFAULT PASSWORD_LIFE_TIME PASSWORD
UNLIMITED
但是SYSTEM的限制为什么没有修改?
刚才那个语句,只能设置本连接用户的profile。
进入C/S编辑状态看了一下,显示SYSTEM已失效,并且很多用户也都已失效。
但是sys用户没有问题。
到SQLPLUS中测试用户:
[oracle@linux1 ~]$ sqlplus /nolog
SQL*Plus: Release
Copyright (c) 1982, 2007, Oracle. All rights reserved.
SQL> conn sysman/oracle
ERROR:
ORA-28001: the password has expired
Changing password for sysman
New password: ******
Retype new password: ******
Password changed
Connected.
connect时,提示口令过期,让重新设置。
只好重新设置口令试试了!设置完口令后,emctl可以用了!
推荐到鲜果:



评论