oracle 11g数据库密码180天后没改过会自动过期。
解决办法:
一、首先用管理员身份登录sysdba可以不用密码。
1.打开命令管理器(开始-运行-cmd),在oracle的bin目录下运行命令:
sqlplus / as sysdba
2.如果可以连接到oracle则直接修改过期密码;
输入命令:alter user system identified by 新密码;
提示用户已更改说明修改完成。注意要有英文的分号作为结尾,如果回车显示:2,则表示语句错误。
二、ora-01031权限不足:如果在sqlplus / as sysdba时,不能连接到oracle上。当提示权限不足时:
1.以管理员的身份登录cmd
2.查查权限,给ora_dba添加权限
三、ora-12560错误:如果在sqlplus / as sysdba时,不能连接到oracle上。当提示TNS: 协议适配器错误时,检测三步。
1.打开服务(win10系统直接搜服务),看一下你的监听有没有打开。
2.在服务中,看一下你的服务器有没有开。
3.打开注册表,开一下你的ORACLE—SID是不是你用的服务实例,如果不一样,点击ORACLE—SID进行修改。
四、ora-28000错误:当你尝试多次密码超过10次会提示密码被锁在,需要以sysdba身份登录后查看锁住的身份,并进行解锁。
1.查看被锁住的用户
select username,account_status from dba_users;
2.解锁
alter user user_name account unlock;
五、ora-12640问题:在开始登录过程中,我们改过sqlnet.ora文件,在登录过程中会出现错误,需要改回去。
到ORACLE_BASE\ORACLE_HOME\NETWORK\ADMIN下面找sqlnet.ora文件,把sqlnet.authentication_services=(NTS) 改成sqlnet.authentication_services=(NONE)。
sqlnet.ora这个文件用于配置网络连接时所使用的连接方式等,比如SQLNET.AUTHENTICATION_SERVICES= (NTS),就是说可以以windows的本地操作系统用户认证登录,此外还有none(不允许通过os系统用户登录数据库,需要提供用户名及密码),all(允许所有的登录方式),