1、ERROR: ORA-12560: TNS: 协议适配器错误
解决方案:
1.监听服务没有启动起来,在服务里面开启Oracle的OracleOraDb11g_home1TNSListener服务
2.数据库实例没有启动起来,在服务里面开启Oracle的OracleServiceORCL服务
3.注册表有问题,注册表程序中将oracle_sid的值修改为orcl
4、如果确定上述三个问题都是正常
则查看下D:appAdministratordiag nslsnrWIN-P40BS49GPA4listener race文件夹下的listener.log文件。
如果发现该文件大小达到了4个G的话,那么就停止ORACLE服务,删除该文件,再重启ORACLE服务。
这是Oracle自身的一个BUG,BUG号为9879101 : THE CONNECT THROUGH LISTENER WAS SLOW WHEN LISTNER LOG GROWED 4GB。
大概意思为:当监听日志增长4GB时,连接监听器缓慢。这样就会导致无法访问数据库或访问数据库速度缓慢。
2、ERROR: ORA-28002: the password will expire within 7 days
解决方案:
ERROR:ORA-28002: the password will expire within 7 days
错误是提示密码快过期了,有两个办法解决这个问题。
一. 修改已经报错用户的密码
已经被报告了密码快要过期的账户必须再改一次密码(需要DBA权限)
以system用户为例
sqlplus / as sysdba
alter user system identified by root;
在登录就不会出现错误问题了。
二. 将密码设为永不过期
1.查看用户的profile设置:
SELECT username,profile FROM dba_users;
一般用户的profile设置都为DEFAULT。
2.查看系统profiles中PASSWORD_LIFE_TIME设置。
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 180dys
==============================================================
3.修改DBA_PROFILES中PASSWORD_LIFE_TIM的设置,改为ULIMITED。
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
修改后设置立即生效,不需要重启数据库,此时密码永远不会过期。