你如何找到Oracle数据库的URL?

时间:2010-12-15 17:07:59

标签: java database oracle jdbc

如何找到Oracle数据库的URL和端口?

示例:

  

“jdbc:oracle:thin:@host:port:dbName”,“userName”,“password”);

我可以看一下SQL命令或日志/配置文件吗?

3 个答案:

答案 0 :(得分:39)

使用oracle,有一个tnsnames.ora文件定义数据库地址。此文件通常位于$ORACLE_HOME/network/admin中,并由oracle客户端(如sqlplus或Toad)使用。以下是tns条目示例:

ORA11 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = ORA11)
    )
  )

从这个条目中你可以看出你的jdbc连接字符串是:

jdbc:oracle:thin:@hostname:1521:ORA11

答案 1 :(得分:7)

阅读相关JDBC驱动程序附带的文档。

对于Oracle JDBC瘦驱动程序,您可以找到它here

  

指定数据库URL,用户名和密码

     

以下签名将URL,用户名和密码作为单独的参数:

getConnection(String URL, String user, String password);
     

网址的格式为:

jdbc:oracle:<drivertype>:@<database>
     

以下示例使用Thin驱动程序将用户scott与密码tiger连接到具有INSTANCE_NAME orcl的数据库,通过主机myhost的端口1521。

Connection conn = DriverManager.getConnection
              ("jdbc:oracle:thin:@myhost:1521:orcl", "scott", "tiger");
     

如果要使用OCI驱动程序的默认连接,请指定:

Connection conn = DriverManager.getConnection 
              ("jdbc:oracle:oci:scott/tiger@");
     

或:

Connection conn = DriverManager.getConnection 
              ("jdbc:oracle:oci:@", "scott", "tiger");
     

对于所有JDBC驱动程序,您还可以使用Oracle Net关键字 - 值对指定数据库。 Oracle Net关键字 - 值对替代TNSNAMES条目。以下示例使用与前面示例相同的参数,但采用关键字 - 值格式:

Connection conn = DriverManager.getConnection
              (jdbc:oracle:oci:@MyHostString","scott","tiger");
     

或:

Connection conn = DriverManager.getConnection
    ("jdbc:oracle:oci:@(description=(address=(host= myhost)
    (protocol=tcp)(port=1521))(connect_data=(INSTANCE_NAME=orcl)))",
    "scott", "tiger");

答案 2 :(得分:0)

URL只是运行它的服务器。

如果它在本地运行,则必须是localhost:1521。 1521是oracle数据库的默认端口。

查看进一步的端口读取: http://www.red-database-security.com/whitepaper/oracle_default_ports.html