Skip to content

AWS Glue and MS JDBC connection string for multiSubnetFailover and applicationIntent.

0

I'd be grateful for a clue on how to craft a connection string for AWS Glue to connect to a SQL Server Always on AG using the Microsoft JDBC Drivers. I'm trying to use this bring your own driver because of it's support for multisubnetFailover and applicationIntent when connecting to a SQL Server Availability Group listener.

The most generic form of what I've tried is: jdbc:sqlserver://listener.domain.local:1433;databaseName=database;applicationName=AWSGlue;applicationIntent=ReadOnly;multiSubnetFailover=true;

Have tried numerous variations on this but keep receiving "JDBC connection URL <url> is not supported." Using both the native and MS driver I've been able to connect to the listener but without the applicationIntent and so end up connecting to the wrong instance.

Any suggestions?

Cheers! Bryan

asked a year ago1.5K views
2 Answers
0

Hi,

The support of JDBC connections in Glue is limited to some db servers only. Here is the list: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-connect-jdbc-home.html

Are you in one of those supported use cases ?

Also look at section "Use custom JDBC driver" on this page to get concrete examples of working connection strings

Best,

Didier

EXPERT
answered a year ago
0

Thanks, Didier.

I had simply grabbed the latest, 12.6.2, so downgrading that to 9.4.0 was a good suggestion.

Still running into the case where ";applicationIntent=ReadOnly" and/or ";multiSubnetFailover=true" causes:

An error occurred while calling o253.getSource. : java.io.InvalidObjectException: JDBC connection URL jdbc:sqlserver://listener.domain.local:1433;databaseName=database;applicationName=AWSGlue;applicationIntent=ReadOnly is not supported.

applicationName seems to be supported. jdbc:sqlserver://listener.domain.local:1433;databaseName=database;applicationName=AWSGlue; works great, for example.

I did read that not all custom driver features would be supported, but I haven't seen anything that indicates what those supported/unsupported might be. This could simply be a case that applicationIntent and multiSubnetFailover are not supported in Glue despite being supported by the custom driver.

Any idea where I might find that documentation?

Cheers! Bryan

answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.