使用JAVA无需密码即可连接SYSDBA

时间:2014-04-22 04:25:54

标签: java sql oracle thin

我想将oracle DB与JAVA连接,我有这样的代码:

    Class.forName("oracle.jdbc.driver.OracleDriver");
    dbURL = "jdbc:oracle:thin:@localhost:1521:DB";
    con = DriverManager.getConnection(dbURL, "sys as sysdba" , "");
    return con;

它没有工作,但是我尝试使用命令promt就像这个conn / as sysdba一样,它可以是Connected。我在谷歌上搜索这篇文章,但所有代码都不起作用。

任何人都可以提供帮助。

由于

2 个答案:

答案 0 :(得分:0)

尝试捕获异常,它必须提供有关该问题的更多信息。

 public static Connection getConnection(String name, String pass) {
    connection = null;
    try {
        Class.forName(JDBC_DRIVER);
        connection = DriverManager.getConnection(DB_URL, name, pass);
    } catch (Exception e) {
        System.out.println(e.getMessage());
    }
    return connection;
}

尝试使用不同的用户名和密码而不是" sys as sysdba"时,会出现同样的错误吗? ,"" ?

此外,在dbURL中,检查是否正确设置了URL和数据库名称。

问题最可能在于空密码。尝试替换""用"()"。如果sys真的使用空密码,它必须工作。如果它没有帮助,请考虑通过更改用户手动更改密码

答案 1 :(得分:0)

要使用JDBC Thin驱动程序以SYSDBA身份登录,必须将服务器配置为使用密码文件。所以你需要为sys提供密码。