首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ORA-01017:用户名/密码无效;登录被拒绝

ORA-01017:用户名/密码无效;登录被拒绝
EN

Stack Overflow用户
提问于 2017-10-03 17:02:37
回答 2查看 10.3K关注 0票数 0

我正在使用Oracle 11g和eclipse oxygen,我正在尝试设置Jdbc连接,并且我正在使用connection语句

代码语言:javascript
复制
Connection con = DriverManager.getConnection("jdbc:oracle:thin:testuser/testuser@localhost");

我确信用户名和密码是正确的,但我仍然收到

代码语言:javascript
复制
java.sql.SQLException: ORA-01017: invalid username/password; logon denied

    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:440)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:389)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:382)
    at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:573)
    at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:431)
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:445)
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:191)
    at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:366)
    at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:752)
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:366)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:536)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:228)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at JDBC.main(JDBC.java:12)

有没有人能帮帮忙?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-10-03 17:10:41

也许你可以尝试使用取自JAVASE教程的这段代码:

代码语言:javascript
复制
Connection conn = null;
Properties connectionProps = new Properties();
connectionProps.put("user", this.userName);
connectionProps.put("password", this.password);

if (this.dbms.equals("mysql")) {
    conn = DriverManager.getConnection(
               "jdbc:" + this.dbms + "://" +
               this.serverName +
               ":" + this.portNumber + "/",
               connectionProps);
} else if (this.dbms.equals("derby")) {
    conn = DriverManager.getConnection(
               "jdbc:" + this.dbms + ":" +
               this.dbName +
               ";create=true",
               connectionProps);
}
System.out.println("Connected to database");
return conn;

EDIT:或者您可以尝试指定用户和密码,如下所示:

代码语言:javascript
复制
Connection conn = DriverManager.getConnection("
     jdbc:oracle:thin:@localhost:1521:example", "example","password123");
票数 0
EN

Stack Overflow用户

发布于 2017-10-03 19:38:35

您在数据库中具有默认的区分大小写的用户名和密码。必须正确输入用户名和密码,大小写敏感,或更改Oracle sec_case_sensitive_logon=false的身份验证参数。

代码语言:javascript
复制
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

SQL> show parameter sec_case

NAME                                 TYPE        VALUE
------------------------------------ ----------- -----------------------------
sec_case_sensitive_logon             boolean     TRUE
SQL> alter system set sec_case_sensitive_logon=false scope=both;

System altered.

SQL> show parameter sec_case

NAME                                 TYPE        VALUE
------------------------------------ ----------- -----------------------------
sec_case_sensitive_logon             boolean     FALSE
SQL>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46540889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档