Configuring JDBC Accounts

On this Page

Overview

You can create a Generic JDBC Account to connect to data sources that you want to use in your Pipelines. You can configure your Generic JDBC account in SnapLogic using either the Designer or the Manager.

Snap-Account Compatibility


Configuring Generic JDBC Account Using SnapLogic Designer

Drag a Generic JDBC Snap to the Canvas and click the Snap to open its settings. Click the Account tab. You can now either use an existing account or create a new one.

Selecting an existing account

SnapLogic organizes and displays all accounts to which you have access, sorting them by account type and location. To select an existing account:

  1. In the Account tab, click the Expand  icon to view the accounts to which you have access, and select the account that you want to use.

  2. Click the Save icon.

 

Creating an account

  1. In the Account tab, click Add Account below the Account Reference field.

  2. Select the Location in which you want to create the account, select the Generic JDBC Account Type, and click Continue. The Add Account dialog window associated with the account type is displayed.

  3. Enter the required account details. Learn more on how to provide information for the account type in Generic JDBC account.

  4. Click Validate to verify the account, if the account type supports validation.

  5. Click Apply to complete configuring the Generic JDBC account.

Enter additional information on this account in the Notes field of the Info tab. This will help you–and other users–understand the purpose of the account, especially if there are multiple accounts of the same type.

Configuring Generic JDBC Account Using SnapLogic Manager

You can use Manager to create accounts without associating them immediately with Pipelines.

Accounts in SnapLogic are associated with projects. You can use accounts created in other projects only if you have at least Read access to them.

  1. In the left pane, browse to the project in which you want to create the account and click  > Account JDBC > Generic JDBC Account, followed by the appropriate account type. The Create Account dialog associated with the selected account type is displayed.

  2. Repeat steps 3 through 5 in the Creating an account section. 

Avoid updating account credentials while Pipelines using that account are executing. Doing so may lead to unexpected results, including your account getting locked.

Account Encryption

Standard Encryption

If you are using Standard Encryption, the High sensitivity settings under Enhanced Encryption are followed.

Enhanced Encryption

If you have the Enhanced Account Encryption feature, the following fields are encrypted for each sensitivity level selected for this account.

  • High: Password

  • Medium + High: Username, password

  • Low + Medium + High: Username, password, JDBC URL

Active Directory authentication

SnapLogic supports Active Directory authentication for SQL server for mssql-jdbc-6.2.2-jre8.jar driver. Ensure that you have installed the mssql-jdbc-6.2.2-jre8.jar file. Also, use the following configurations in Account Settings to configure Active Directory authentication:

  • JDBC Driver class: com.microsoft.sqlserver.jdbc.SQLServerDriver

  • JDBC Connection URL: jdbc:sqlserver://ServerNameFQDN:portNumber;databaseName=DBNAME

SnapLogic supports Active Directory authentication for SQL Server using the User impersonation method. The prerequisites are as follows:

  • In the account settings, add the following:

    • Url property name and Url property value:
      IntegratedSecurity | True
      AuthenticationScheme | JavaKerberos

    • Enter your Active Directory Username and Password.

Connecting to Athena Database Using Athena JDBC Driver

Athena JDBC Driver 1.x versions are deprecated, and the Generic JDBC Snaps are not compatible with them. Therefore, we recommend you use Athena JDBC Driver 2.x or later for the AWS Athena database when using Generic JDBC Snaps.

Connecting to Cassandra Database Using Cassandra Simba Driver

To connect to the Cassandra database using the Cassandra Simba driver, ensure that the appropriate Simba JAR files are installed based on the version of JDK in the Snaplex node. Contact your Org admin to know the JDK in the Snaplex node. Learn more about the JAR version to be used: JDBC Install Guide.

Besides the JAR files, configure the following settings in the Account Settings when using the Cassandra Simba driver:

  • JDBC Driver class"com.simba.cassandra.jdbc42.Driver"

  • JDBC URL: jdbc:cassandra://<host>:<port>;AuthMech=1;UID=<user id>;PWD=<password>;DefaultKeyspace=<database name>

  • Database name: Auto detect

Typical JDBC Connection Properties for Various Databases

SAP HANA

To download SAP HANA you must have an SAP ID and download it at http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/webcontent/uuid/402aa158-6a7a-2f10-0195-f43595f6fe5f

Sybase

jConnect provides high performance native access to the complete family of Sybase products, including Adaptive Server Enterprise, Adaptive Server Anywhere, Adaptive Server IQ, and Replication Server.

  • Required File(s): jconn4.jar

  • DRIVER CLASS: com.sybase.jdbc4.jdbc.SybDriver

  • JDBC URL Format: jdbc:sybase:Tds:<host>:<port2048>/<database> 
    Example: jdbc:sybase:Tds:10.0.0.2:2048, jdbc:sybase:Tds:mupp:5000/dbvistest

The jConnect JDBC driver is usually delivered as a zip file. First, you need to unzip this file and locate the jconn4.jar file, which usually is stored in the classes directory.

You can download the Sybase JDBC Driver from here.

Another open-source alternative to connect Sybase database is  jTDS Drivers, which you can find at http://jtds.sourceforge.net/.

jTDS Driver 

  • DRIVER CLASS: net.sourceforge.jtds.jdbc.Driver 

  • JDBC URL FORMAT: jdbc:jtds:sybase://<host>[:<port>][/<database_name>] 
    Examples:  jdbc:jtds:sybase://127.0.0.1:5000/SAMPLE

Examples

This section provides examples of JDBC connection details for different sources. Note that specifics may vary based on the Operating System or Database version.

Hive

Varies based on version. See https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Clients#HiveServer2Clients-JDBC for general information on Hive JDBC Drivers for HiveServer2.

  • JDBC Driver Jar: Varies based on version. Hive is usually provided as part of a larger Hadoop cluster based on products from Cloudera, Hortonworks, or Amazon. You must use the appropriate drivers for your Hive instance.

  • JDBC Driver Class: com.cloudera.hive.jdbc4.HS2Driver

  • JDBC URL: jdbc:hive2://<host>:<port> 

Informix

Log into Informix with your IBM account to be able to download the Informix JDBC drivers and upload them into SnapLogic.

  • JDBC jars: shared/ifxjdbc.jar

  • JDBC Driver Class: com.informix.jdbc.IfxDriver

  • JDBC URL: jdbc:informix-sqll://cxdn-rpt.cx.claremont.edu:1550/hmudd:INFORMIXSERVER=cxdbreplica

JDBC ODBC Bridge

SAP Hana

  • JDBC Driver Jar: ngdbc.jar

  • JDBC Driver Class:  com.sap.db.jdbc.Driver

  • JDBC URL: jdbc:sap://<host>:<port>/?currentschema=<your HANA Schema> 

Sybase

  • JDBC Driver Jar: jconn4.jar

  • JDBC Driver Classcom.sybase.jdbc4.jdbc.SybDriver

  • JDBC URL: dbc:sybase:Tds:<host>:<port2048>/<database> 

Teradata

  • JDBC Driver Jar: terajdbc4_13.jar, tdgssconfig_13.jar

  • JDBC Driver Class: com.teradata.jdbc.TeraDriver

  • JDBC URL: jdbc:teradata://<host>:<port>/TMODE=ANSI,SHARSET=UTF8,DBS_PORT=1025


Troubleshooting

  • If you have several JDBC accounts, one for system A and another for system B, you must ensure that all drivers can be loaded. If driver A fails to load, then driver B will always fail, even if it is a valid driver, as this is the expected behavior of the JDBC driver registry. It loads all drivers and goes through them in sequence. If any driver fails in the process, all drivers loaded later will also fail. Once you fix the driver for the failing account, you must restart the JCC needs.

  • To disable the mysql-cj-abandoned-connection-cleanup  thread that is generated by MySQL JDBC driver, use the latest version of MySQL (later than 8.0.22), and add the following settings in the Node Properties:

Key

Value

Key

Value

jcc.jvm_options

-Dcom.mysql.cj.disableAbandonedConnectionCleanup=true 

If the Snap fails to connect to the database, it retries three times.

Snap Pack History