使用 JDBC 无构建工具连接到 Oracle Autonomous AI Database

您可以手动与 Oracle Autonomous AI Database 建立连接,而无需任何构建工具。

Prerequisites

以下各节提供有关使用 Oracle JDBC 驱动程序和通用连接池将 Java 应用程序连接到 Oracle Autonomous AI Database 之前需要执行的任务的信息。Refer to the appropriate prerequisites depending on the authentication type selected during provisioning of your Autonomous Exadata VM Cluster (AVMC).默认情况下,预配 AVMC 时会启用单向 TLS 连接。有关详细信息,请参阅创建自治 Exadata VM 集群

您可以在 AVMC 的“详细信息”页上找到验证类型。有关说明,请参见 View Details of an Autonomous Exadata VM Cluster

预配 Oracle Autonomous AI Database 实例

您需要访问 Oracle Autonomous AI Database。如果您尚未预配,请参阅Autonomous AI Database on Dedicated Exadata Infrastructure 开始

请记住用于 ADMIN 用户的密码。出于演示目的,我们将使用 ADMIN 用户,但我们的建议是使用 Oracle SQL Developer 或 Database Actions 创建其他数据库用户。

安装 JDK 8

下载最新的 JDK 8更高 JDK 版本

注意:

确保使用 JDK8u162 或更高版本。使用 java -version 检查已安装的 JDK 版本。要检查 JDBC 驱动程序版本,请键入 java -jar ojdbc8.jar

从 Github 下载示例程序

  1. 从 Github 下载 ADBQuickStart.java 文件。此示例应用程序使用销售历史记录 (SH) 示例模式,并显示 SH.CUSTOMERS 表中的 20 条记录。
  2. 修改 ADBQuickStart.java 文件以包括 Oracle Autonomous AI Database 连接信息:
    • DB_USER :您可以使用 ADMIN,这是在创建 Oracle Autonomous AI Database 时默认创建的用户(如果您创建了另一个 Oracle Autonomous AI Database 用户,则可以改用该用户)。
    • DB_PASSWORD :使用数据库用户的密码。If connecting as the ADMIN user, set this to the password you chose during the Create Autonomous AI Database step while provisioning Oracle Autonomous AI Database.出于安全原因,在运行样例时需要通过控制台输入密码。
    • DB_URL: Obtain the connection string for your Autonomous AI Database by following the instructions in View Connection Strings for an Autonomous AI Database.如果您直接在 Java 程序中使用,则需要使用 \ 在连接字符串中转义“”。

    一个快速启动 Java 文件示例如下所示:

    DB_URL = "jdbc:oracle:thin:@jdbc:oracle:thin:@(description=
          (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1521)(host=adb.us-sanjose-1.oraclecloud.com))(connect_data=(service_name=g13ec47eade81f7_demodb_low.adb.oraclecloud.com))(security=(ssl_server_cert_dn=\"CN=adb.us-sanjose-1.oraclecloud.com,
          OU=Oracle ADB SANJOSE, O=Oracle Corporation, L=Redwood City, ST=California,
          C=US\")))"
    DB_USER="ADMIN" and DB_PASSWORD="your_password"
  3. 保存对 ADBQuickStart.java 文件的更改。

故障排除和调试:如果您遇到任何错误,请参阅故障排除提示页以了解一些有用的提示。

预配 Oracle Autonomous AI Database 实例

您需要访问 Oracle Autonomous AI Database。如果您尚未预配,请参阅Autonomous AI Database on Dedicated Exadata Infrastructure 开始

请记住用于 ADMIN 用户的密码。出于演示目的,我们将使用 ADMIN 用户,但我们的建议是使用 Oracle SQL Developer 或 Database Actions 创建其他数据库用户。

获取客户端身份证明

  1. Autonomous AI Database 实例下载 wallet 文件,以获得包含访问 Autonomous AI Database 实例所需的客户端安全身份证明和网络配置设置的 zip 文件。

    获取客户机安全凭证(wallet.zip 文件):

    • ADMIN 用户:在 Oracle Cloud Infrastructure 控制台上,单击数据库连接。请参见 Download Client Credentials
    • 其他用户(非管理员):从管理员处获取 Autonomous AI Database 实例的 Oracle Wallet。

    注意:

    保护 wallet.zip 文件及其内容,以防止未经授权的数据库访问。
  2. 解压缩客户机凭证文件 (wallet.zip)。

安装 JDK 8

下载最新的 JDK 8更高 JDK 版本

注意:

确保使用 JDK8u162 或更高版本。使用 java -version 检查已安装的 JDK 版本。要检查 JDBC 驱动程序版本,请键入 java -jar ojdbc8.jar

从 Github 下载示例程序

  1. 从 Github 下载 ADBQuickStart.java 文件。此示例应用程序使用销售历史记录 (SH) 示例模式,并显示 SH.CUSTOMERS 表中的 20 条记录。
  2. 修改 ADBQuickStart.java 文件以包括 Oracle Autonomous AI Database 连接信息:
    • DB_USER :您可以使用 ADMIN,这是在创建 Oracle Autonomous AI Database 时默认创建的用户(如果您创建了另一个 Oracle Autonomous AI Database 用户,则可以改用该用户)。
    • DB_PASSWORD :使用数据库用户的密码。If connecting as the ADMIN user, set this to the password you chose during the Create Autonomous AI Database step while provisioning Oracle Autonomous AI Database.出于安全原因,在运行样例时需要通过控制台输入密码。
    • DB_URL :输入网络服务名(TNS 别名)DBName_medium ,其中 DBName 是预配 Oracle Autonomous AI Database 时在创建 Autonomous AI Database 步骤期间输入的 Oracle Autonomous AI Database 名称。可用的网络服务名可在 tnsnames.ora 文件中看到,该文件是客户机凭证 zip 文件的一部分。

      TNS_ADMIN 应指向您解压缩了 Oracle Autonomous AI Database 的客户端身份证明的位置。

    一个快速启动 Java 文件示例如下所示:

    DB_URL = "jdbc:oracle:thin:@DBName_medium?TNS_ADMIN=/Users/test/wallet_DBName" DB_USER="ADMIN" and DB_PASSWORD="enter_it_from_console"
  3. 保存对 ADBQuickStart.java 文件的更改。

过程

  1. 从 OTN 下载 the19c 版本的 ojdbc8-full.tar.gz ,并将内容解压缩到类路径。

    注意:

    ojdbc8-full.tar.gz 包含最新的 JDBC 驱动程序 ojdbc8.jar、ucp.jar(使用 UCP 作为客户端连接池所需的 JAR)、oraclepki.jarosdt_core.jarosdt_cert.jar。These JARs are required for using Oracle Wallets while connecting to Oracle Autonomous AI Database.
  2. 编译 Java 程序。确保为类路径中的必需 JAR 提供正确的路径:
    javac -classpath ./lib/ojdbc8.jar:./lib/ucp.jar:/lib/oraclepki.jar:./lib/osdt_core.jar:./lib/osdt_cert.jar com/oracle/jdbctest/ADBQuickStart.java
  3. 运行示例 Java 程序。确保为类路径中的必需 JAR 提供正确的路径:
    java -classpath ./lib/ojdbc8.jar:./lib/ucp.jar:/lib/oraclepki.jar:./lib/osdt_core.jar:./lib/osdt_cert.jar:. com.oracle.jdbctest.ADBQuickStart

    输出样例:

    此时将显示查询的行以及成功消息,如以下屏幕中所示:



注意:

如果您从防火墙后连接到 Oracle Autonomous AI Database,则可能会遇到连接超时错误。运行此样例时,请确保位于防火墙之外,或者更新 tnsnames.ora 文件以使用 HTTPS 代理。