Conexión JDBC genérica
Utilice la conexión JDBC genérica para conectarse a un origen de datos que no tiene ninguna conexión definida para Cloud Pak for Data.
Si desea conectarse a varias instancias del origen de datos de forma coherente, un administrador de Cloud Pak for Data puede crear un conector JDBC personalizado para el origen de datos. La conexión estará disponible en la página Nueva conexión con el nombre, los detalles y las propiedades definidas por el administrador que crea el conector.
Versiones de JDBC soportadas
El archivo JAR de JDBC debe ser compatible con JDK 8, JDBC versión 4.2 o anterior.
Requisitos previos
Cloud Pak for Data common core services deben estar instalados. Los common core services los instalan automáticamente los servicios que dependen de ellos. Si no ve la página Conexiones de plataforma , es porque ninguno de los servicios instalados en el entorno se basan en los common core services.
Cargue el controlador JDBC (archivo JAR) para la fuente de datos en Cloud Pak for Data. Consulte Importación de controladores JDBC en la documentación de IBM Software Hub para conocer el procedimiento y los permisos necesarios para cargar el archivo JAR en Cloud Pak for Data. Por defecto, la carga de archivos de controladores JDBC está desactivada y los usuarios no pueden ver la lista de controladores JDBC en el cliente web. Un administrador debe permitir a los usuarios cargar o ver los controladores de JDBC en la documentación de IBM Software Hub.
Detalles de la conexión
Para crear la conexión JDBC genérica, debe tener la siguiente información sobre el origen de datos.
| Información | Estado | Descripción |
|---|---|---|
| Archivos JAR necesarios | Obligatorio | Los archivos JAR necesarios para conectarse al origen de datos. Si una conexión JDBC requiere varios archivos JAR, asegúrese de que sabe qué archivos JAR son necesarios. |
| Clase de controlador JDBC | Obligatorio | El nombre de la clase de controlador JDBC . Este nombre lo especifica el proveedor del controlador JDBC . Para obtener detalles, consulte la documentación del controlador JDBC . Nota: Cuando se utilizan conexiones genéricas de JDBC en flujos de DataStage, la configuración del controlador se puede gestionar a través de la configuración del servicio DataStage. Para obtener más información, consulte la documentación de DataStage sobre la gestión de controladores.
|
| JDBC URL | Obligatorio | La URL JDBC utilizada para conectarse a la base de datos. Consulte la documentación del controlador JDBC para obtener información sobre la sintaxis de la URL. |
| SSL detalles | Condicional | Si el puerto que ha especificado en JDBC URL está configurado para aceptar conexiones SSL, asegúrese de seleccionar El puerto está configurado para aceptar conexiones SSL. Si el origen de datos utiliza certificados encadenados, puede especificar el contenido de varios certificados. Si pega el certificado autofirmado en el cuadro Certificado de SSL, el certificado se importará a un almacén de confianza temporal y se protegerá con una contraseña. Debe hacer referencia al almacén de confianza y a la contraseña en la conexión JDBC URL especificando las propiedades de conexión en el cuadro de propiedades JDBC. Por ejemplo: ssl=truesslTrustStoreLocation=${truststore_file} sslTrustStorePassword=${truststore_password} |
| Tamaño de lote | Opcional | El número máximo de filas que se deben enviar a la base de datos. El valor predeterminado es 2000. |
| Tamaño de captación | Opcional | Número máximo de filas que se deben captar de la base de datos para cada llamada. El valor predeterminado es 2000. |
| El conector utiliza la estructura de catálogo | Opcional | Algunos orígenes de datos utilizan catálogos en lugar de esquemas para estructurar datos. Seleccione esta opción después de consultar la documentación del proveedor del controlador para confirmar que la base de datos utiliza una estructura de catálogo. |
| Sensibilidad a mayúsculas y minúsculas | Condicional | Si los ID de la base de datos distinguen entre mayúsculas y minúsculas, seleccione Indica si los valores de ID de esta base de datos distinguen entre mayúsculas y minúsculas. |
| Propiedades de JDBC | Opcional | Las propiedades de JDBC que se deben utilizar para conectarse a la base de datos. Especifique las propiedades con este formato:key1=value1;key2=value2;key3=value3Consulte la documentación del controlador JDBC para obtener información sobre las propiedades soportadas. |
| Soporte de límite de filas | Opcional | Indica si el controlador soporta un límite de fila en una sentencia SELECT. Puede especificar Ninguno, Prefijo o Sufijo. Importante: Si deja la opción, o la especifica, como Ninguna la interfaz de la base de datos seleccionará todas las filas de la tabla de origen aunque la aplicación sólo necesite una pequeña muestra. Esto puede llevar más tiempo y memoria de lo esperado.
Se recomienda especificar la sintaxis SQL adecuada si el sistema de base de datos de origen admite un límite de filas en las consultas SQL. |
| Prefijo de límite de fila | Condicional | Si establece el soporte de límite de filas en Prefijo, especifique el prefijo que se utiliza para indicar un límite de fila en una sentencia SELECT. Utilice $ {row_limit} para indicar dónde colocar el valor de límite de fila. Por ejemplo:TOP ${row_limit} Importante: No sustituya manualmente el valor
{row_limit} por un número. Esto es parte del comando SQL y el valor será insertado por la aplicación que ejecuta el comando. Los criterios SQL utilizados en los campos correspondientes pueden variar y dependen del lenguaje de la base de datos. |
| Sufijo de límite de fila | Condicional | Si establece el soporte de límite de fila en Sufijo, especifique el sufijo que se utiliza para indicar un límite de fila en una sentencia SELECT. Utilice $ {row_limit} para indicar dónde colocar el valor de límite de fila. Por ejemplo:LIMIT ${row_limit} ROWS Importante: No sustituya manualmente el valor
{row_limit} por un número. Esto es parte del comando SQL y el valor será insertado por la aplicación que ejecuta el comando. Los criterios SQL utilizados en los campos correspondientes pueden variar y dependen del lenguaje de la base de datos. |
Para Credenciales y Certificados, puede utilizar secretos si se ha configurado una caja fuerte para la plataforma y el servicio da soporte a cajas fuertes. Para obtener información, consulte Utilización de secretos de cajas fuertes en conexiones.
Conformidad con FIPS (Federal Information Processing Standards)
Esta conexión se puede utilizar en un clúster habilitado para FIPS (tolerante con FIPS); sin embargo, no es compatible con FIPS. Pruebe la conexión para confirmar que funciona.
URL de JDBC de ejemplo
- Databricks
- Controlador: com.simba.spark.jdbc.Driver
jdbc:spark://<DatabricksHost>:443/default;transportMode=http;ssl=1;AuthMech=3; httpPath=<Databricks_compute_resources_URL>;connCatalog=<WKC_catalog>;UID=token; PWD=<password>?EnableArrow=
Para obtener más información, consulte Creación de la URL conexión para el controlador Spark heredado.
- Db2
- Controlador: com.ibm.db2.jcc.DB2Driver
jdbc:db2://<Hostname>:<Port>/<DatabaseName>
- Microsoft SQL Server
- Controlador: com.microsoft.sqlserver.jdbc.SQLServerDriver
El controlador de Microsoft SQL Server funciona para la autenticación de Windows. Descargue la última versión del controlador JDBC de Microsoft para SQL Server.
Propiedades necesarias para el controlador de Microsoft SQL Server :
server_addressauthenticationScheme=NTLMintegratedSecurity=true
jdbc:sqlserver://<server_address>:<port><\your_instance>;database=<DatabaseName>; authenticationScheme=NTLM;integratedSecurity=true;domain=<your_domain>
- MongoDB
- Controlador: com.ddtek.jdbc.mongodb.MongoDBDriver y Puerto: SSL - Habilitado seleccionado.
jdbc:datadirect:mongodb://<MongoDBHost>:<MongoDBPort>;DatabaseName=<DatabaseName>;SchemaMap=/tmp/mongodb.config;EncryptionMethod=SSL;ValidateServerCertificate=false;ReadOnly=false;
- MySQL
- Controlador: com.mysql.cj.jdbc.Driver
jdbc:mysql://<MySQLHost>:<MySQLPort>/<DatabaseName>?useSSL=false
- Oracle
- Controlador: oracle.jdbc.OracleDriver
Con un SID:
jdbc:oracle:thin:@<Hostname>:<Port>:<ORACLE_SID>
Con un SERVICE_NAME:
jdbc:oracle:thin:@//<Hostname>:<Port>/<ORACLE_SERVICE_NAME>
Para una conexión SSL a una base de datos Oracle, debe proporcionar un certificado en las propiedades de conexión e incluir este código para que URL pase el certificado al controlador:
?javax.net.ssl.trustStore=${truststore_file}&javax.net.ssl.trustStorePassword=${truststore_password}
Ejemplos de formatos para una conexión SSL a una base de datos Oracle :
Con un SID:
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=<hostname>)(PORT=<port>))(CONNECT_DATA=(SID=<ORACLE_SID>)))?javax.net.ssl.trustStore=${truststore_file}&javax.net.ssl.trustStorePassword=${truststore_password}
Con un SERVICE_NAME:
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=<hostname>)(PORT=<port>))(CONNECT_DATA=(SERVICE_NAME=<ORACLE_SERVICE_NAME>)))?javax.net.ssl.trustStore=${truststore_file}&javax.net.ssl.trustStorePassword=${truststore_password}