Error in GCP BigQuery Data Transfer Service: No suitable driver found for jdbc:redshift:// - jdbc

we followed Google Cloud Platform link https://cloud.google.com/bigquery-transfer/docs/redshift-migration#console to setup Data Transfer from AWS RedShift to BigQuery dataset. But we are getting following error:
18:51:01 Unable to proceed: Could not connect with provided parameters: No suitable driver found for jdbc:redshift://redshift-xyz-bq.c7nxtqwerty23.us-east-1.redshift.amazonaws.com:5439/dev
18:50:30 Transfer load date: 20210120
18:50:29 Dispatched run to data source with id xxxxxxx
We verified all the required parameters and sure that values are correctly set. Can you please help with this issue?
Thank you in advance.

Thank you everyone for your prompt suggestions. Actually the error message was misguiding us. The issue was with AWS subnet that was somehow not allowing us in (could be private subnet in the RedShift Subnet Group; could not see real details before deleting the POC environment). Once we created RedShift cluster using Subnet Group having only public subnets then it worked very well. Hope this helps someone at some point of time.

Please bear in mind that, according to [1], "A JDBC URL specified with the former format of jdbc:postgresql://endpoint:port/database still works".
Consequently, I suggest that you change the start of the URL of your driver from jdbc:redshift to jdbc:postgresql.
If the prior change does not work, please review the following related questions [2] to [6], since it seems like this exception is frequently thrown when the driver URL does not match (pay extra attention at the use of single and double quotes) or when the driver has not been registered before trying to establish the connection.
I hope this helped solve the issue you are experiencing :)
[1]:
https://docs.aws.amazon.com/redshift/latest/mgmt/configure-jdbc-connection.html#obtain-jdbc-url
[2]:
SQLException: No suitable driver found
[3]:
No suitable driver found for 'jdbc:mysql://localhost:3306/mysql
[4]:
The infamous java.sql.SQLException: No suitable driver found
[5]:
How to fix: "No suitable driver found for jdbc:mysql://localhost/dbname" error when using pools?
[6]:
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/dbname

Related

Azure data factory with blob sftp giving aceess error in integration runtime

i am working on poc where am creating adf pipeline which needs to pickup file from source sftp and move to target sftp.as this is poc i am using azure blob storage sftp feature which is in preview for now. But when i am creating linked service using sftp connection string i am getting error as below
Error code: 9978
Details: Access 'storageacc.container.user#acc.blib.core.windows.net' is not allowed right on azure integration runtime.
I searched a lot but couldn't find any solution,if you know the issue plz help me. Thanks in advance.
Your Host control can't accept 'storageacc.container.user#acc.blib.core.windows.net'. It have to be divided into two parts:
acc.blib.core.windows.net - for [Host field] control
storageacc.container.user - for [User name] control
My current Connection:

Cloudera-scm-server.log showing error at two places

I am trying to run Cloudera-Manager and it's giving me error given in following screenshots and marked with red pen.
Can anybody help me resolve those error ??
The error is quite straightforward. Cloudera Manager can't connect to the database with credentials specified. Are you able to connect manually with credentials provided in /etc/cloudera-scm-server/db.properties?
Seems like its trying to find Driver class for Mysql DB (and not Postgres). I can see below error in your snapshot:
JDBC Driver Class not found: com.mysql.jdbc.driver

DB2 Full Text Search IQQD0040E Error

I have a production database running DB2 at 10.1.2 workgroup (OpenSuse 12.2) and I have Full Text Search running pretty well there. Now I'm trying to build a test enviroment, but when I turn over de production backup into test machine with 10.1.2 express-c the FTS is presenting this error:
<message>IQQD0040E The client specified the wrong authentication token.
com.ibm.es.nuvo.inyo.common.InyoFactoryWrapper.authenticate(InyoFactoryWrapper.java:203)
com.ibm.es.nuvo.inyo.common.InyoFactoryWrapper.getHandler(InyoFactoryWrapper.java:85)
com.ibm.es.nuvo.inyo.common.InyoServer$InyoListener.run(InyoServer.java:425)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1121)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
java.lang.Thread.run(Thread.java:769)</message>
The redbook says to me that this error cause is: "Usually this error occurs when there are 2 or more text search instances configured with the same port number and one instance is already running".
I've already searched other instances but I've only found one. So "usually" does not apply to my situation.
Anyone know what else I can do to fix that?
Best regards,
jacker
I've found out a solution. When the backup is transported to a new instance of DB2, de FTS application engage it communication with a token. After restored, we just need to go to the bin directory of FTS, commonly at /home/db2inst1/db2tss/bin and run this command:
configTool generateToken -seed <username> -configPath ~/sqllib/db2tss/config
Hope this help anyone who's passing by this trouble.
Regards.

Edit JDBC connection string in Saiku

I am using Microsoft SQL Server as database for my web application. I'd like to use Saiku as part of the application. I found the solution to set up the JDBC connection string as below:
type=OLAP
name=foodmart
driver=mondrian.olap4j.MondrianOlap4jDriver
location=jdbc:mondrian:Jdbc=jdbc:sqlserver://localhost:1433;databaseName=foodmart;Catalog=res:warehouses/FoodMart.xml;JdbcDrivers=com.microsoft.sqlserver.jdbc.SQLServerDriver; username=sa
password=XXXX
Anyway, I don't know which file in the package I downloaded (Saiku Server 2.4 (Including Foodmart DB)) is for changing the connection string as I mentioned.
Please help. Thank you in advance.
In case someone else has this same problem I thought I would share my solution, because I couldn't find any Saiku specific answer anywhere else.
After struggling for a few hours, getting the error "com.microsoft.sqlserver.jdbc.SQLServerException: Invalid object name 'TableName'.", I found that the correct way, or at least the one that worked for me, to specify the database name, was to add the jdbc prefix to the databaseName parameter.
This is my working example:
type=OLAP
name=foodmart
driver=mondrian.olap4j.MondrianOlap4jDriver
location=jdbc:mondrian:Jdbc=jdbc:sqlserver://localhost:1433;jdbc.databaseName=foodmart;Catalog=res:foodmart/FoodMart.xml;JdbcDrivers=com.microsoft.sqlserver.jdbc.SQLServerDriver;
username=sa
password=sa
Just use google:
http://docs.analytical-labs.com/DataSources.html
FYI You'll probably get quicker responses on Saiku questions if you use the IRC channel ##saiku on Freenode, or ask.analytical-labs.com
The solution is to migueletes spent hours trying to find the solution.
My problem was to try to include the instanceName parameter to connect the hub to a cluster mssql and actually had to add the parameter jdbc.instanceName to it was taken into account, otherwise omit the parameter.
https://groups.google.com/a/saiku.meteorite.bi/forum/#!topic/user/q9_5OG6_wrw

JDBC URL for Oracle XA client

Using the JDBC driver oracle.jdbc.xa.client.OracleXADataSource, what is the correct format of the JDBC URL? The thin format of
jdbc:oracle:thin:#host:port:sid
does not work. WebSphere is reporting that the given url (which is otherwise correct) is invalid.
The test connection operation failed for data source Oracle MyDB (XA) on
server nodeagent at node MY_node with the following exception:
java.sql.SQLException: Invalid Oracle URL specifiedDSRA0010E: SQL State = 99999,
Error Code = 17,067. View JVM logs for further details.
There is nothing in the JVM logs.
Whether you use a XA Driver or not, the JDBC connection string is the same (and the format of your question is correct).
For me the issue resolved by adding alias name, username and password in JAAS - J2C authentication data. And also selecting this entry as Component-managed authentication alias.
In case this happens to anyone else. The problem went away after restarting websphere.
In my case, the problem went away when I change the authentication property of the jdbc resource reference from Authentication=Application to Authentication=Container
Had the same issue. Dont know about simple deployments, but on a two nodes cluster, I restarted the first node, and the connection started working on it (not on the second). Restarted the second node, and the connection started working there too.
So just restart the nodes (I also restarted the nodeAgents, but i don't know if it's necessary).
if you are doing using wsadmin command then you need to stop manager,stop node,start manager, sync node and then start node (I mean full sync). Hopefully this will resolve the issue. I dont know why but this resolves my issue.

Resources