sql >> Base de Datos >  >> RDS >> Oracle

¿Cuál es la sintaxis correcta de URL de JDBC si se utilizan carteras de Oracle?

Cuando utiliza Oracle Wallet con una cadena JDBC, se permiten ambas sintaxis , siempre y cuando su "db_alias" esté configurado en su tienda Wallet obviamente.

Ahora, en cuanto al uso de SQL*Plus con Oracle Wallet, el único formato permitido con Oracle Wallet es:

/@db_alias

Por cierto, ese artículo al que hizo referencia (y otros) especifica que solo puede conectarse usando JDBC si usa los controladores OCI, y no el cliente ligero. Esto se debe a que Java no tenía conocimiento de los archivos Oracle TNS y SQLNET. De hecho, esto no es cierto; tu puedes conéctese usando el controlador delgado JDBC con los controladores Oracle Client y JDBC más recientes, pero solo requiere alguna configuración. Consulte http://tech.shopzilla.com/2011/09/oracle-wallet-with-thin-driver-with-connection-pool-with-database-timeouts/ para obtener información al respecto y, a continuación, un breve resumen.

Uso de Oracle Wallet con JDBC Thin Driver

  1. Configure Oracle Wallet como de costumbre (que viene con Oracle Database Client), creando las entradas adecuadas en sus archivos tnsnames.ora y sqlnet.ora, así como la entrada de credenciales en su billetera
  2. Agregue los siguientes archivos JAR a su classpath de Java. Debe obtenerlos del cliente Oracle 11g, y se pueden encontrar en los directorios "jdbc" y/o "jlib" donde se encuentra la instalación del cliente
    • Controlador Oracle JDBC - ojdbc6.jar
    • Monedero de Oracle:oraclepki.jar
    • Certificados de seguridad de Oracle - osdt_cert.jar
    • Núcleo de seguridad de Oracle - osdt_core.jar
  3. Inicie su aplicación Java con las siguientes propiedades del sistema, apuntando a sus respectivos directorios de TNS y billetera:
    • -Doracle.net.tns_admin=C:\myTNSdir
    • -Doracle.net.wallet_location=C:\mywalletdir
  4. Entonces puede usar una cadena de conexión JDBC delgada en su aplicación de la siguiente manera:jdbc:oracle:thin:/@MY_WALLET_DB_ENTRY