原创

ORA-01017 invalid username/password;logon denied

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。

启动 Tomcat 报错连接 Oracle 数据库错误,具体错误信息如下:

java.sql.SQLException: ORA-01017: invalid username/password; logon denied
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:330)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:277)
    at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:790)
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:361)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:438)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:164)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:34)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:752)
    at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
    at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
    at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
    at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
    at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
    at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
    at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
    at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)

1.首先确认 oracle 数据库账号密码输入是否正确

2.如果密码丢失,具体解决方案如下:

1)打开 sqlnet.ora 文件,查看 SQLNET.AUTHENTICATION_SERVICES 参数,如果 SQLNET.AUTHENTICATION_SERVICES= (NONE) 将其改为 SQLNET.AUTHENTICATION_SERVICES= (NTS)
2)在 SQL*Plus 中执行命令如下:
SQL>conn/as sysdba   (认证登录)
SQL>alter user system identified by yoodb123;   (按 Enter 回车键 system 账号密码改为 yoodb123 )

注意:scott 用户如果没有解锁也会报 ORA-01017: invalid username/password; logon denied 错误,使用system用户登录,执行 alter user scott account unlock 语句,但是解锁之后还是出错如下:

请输入用户名:  scott
输入口令:
ERROR:
ORA-01017: invalid username/password; logon denied

使用上述1和2步骤即可解决此问题,就可以用scott用户正常登陆

~阅读全文~人机检测~

关注下方微信公众号“Java精选”(w_z90110),回复关键词领取资料:如Mysql、Hadoop、Dubbo、Spring Boot等,免费领取视频教程、资料文档和项目源码。

Java精选专注程序员推送一些Java开发知识,包括基础知识、各大流行框架(Mybatis、Spring、Spring Boot等)、大数据技术(Storm、Hadoop、MapReduce、Spark等)、数据库(Mysql、Oracle、NoSQL等)、算法与数据结构、面试专题、面试技巧经验、职业规划以及优质开源项目等。其中一部分由小编总结整理,另一部分来源于网络上优质资源,希望对大家的学习和工作有所帮助。

评论

分享:

支付宝

微信