Cannot create PoolableConnectionFactory (ORA-01017: invalid username/password; logon denied

是比较典型的sysdba登录问题,有几种原因,你试试这些:
1、登陆oracle 数据库首页[system/自设的口令] ——〉管理——〉用户管理——〉设置用户为“未锁定”——〉然后进入命令行——〉connect——〉OK!
2、首先要查看sqlnet文件。SQLNET.AUTHENTICATION_SERVICES= (NONE) 启动密码文件验证了, 

接着查看$ORACLE_HOME/dbs/下有没有orapw$ORACLE_SID的文件,确定有。 

接着查看remote_login_passwordfile的值,我估计这时他的值一定是NONE,而不是EXCLUSIVE 

不过怎么来确定这个推断了。remote_login_passwordfile是init的参数,可以通过show parameters remote_login_passwordfile来查看,也可以直接查看spfile文件,spfile虽然是二进制文件,不过里面的内容是看到文本的 

more $ORACLE_HOME/dbs/spfile$SID.ora. 

最后确实是否是remote_login_passwordfile=none。 
如果确实是none的话, 
问题大致上应该确定了,就是remote_login_passwordfile的设置问题了。先屏蔽掉sqlnet.ora里SQLNET.AUTHENTICATION_SERVICES= (NONE)使得本机的 sqlplus “/ as sysdba” 可以进去 

SQL>startup mount 

SQL>show parameters remote_login_passwordfile; 

这时出来的值是none,修改值为exclusive 

SQL>alter system set remote_login_passwordfile=EXCLUSIVE scope=spfile; 

SQL>shutdown immediate 

SQL>startup 

SQL>select * from v$pwfile_users; 

看有没有结果出来 ok 

你可能感兴趣的:(数据库)