Unable to connect to MongoDB server using Talend - mongodb

I tried connecting to MongoDB using Talend Big data solution.
Under the Metadata section, I used the "NoSql Connection" option to create a new connection, as shown below.
My MongoDb version is 4.2, there's no option for that but the 3.5.X option should work for 3.5 and above it seems.
I added the server IP in the server textbox and even tried adding a specific database name. The Username and password are correct. But still when I click the Check button to test the connection, it fails saying Athentication error -
"Connection failed!
org.talend.repository.nosql.exceptions.NoSQLServerException: Cannot connect to database!
at org.talend.repository.nosql.db.util.mongodb.MongoDBConnectionUtil.checkConnection(MongoDBConnectionUtil.java:86)
at org.talend.repository.nosql.db.provider.mongodb.MongoDBMetadataProvider.checkConnection(MongoDBMetadataProvider.java:156)
Caused by: org.talend.repository.nosql.exceptions.NoSQLServerException: org.talend.repository.nosql.exceptions.NoSQLReflectionException: com.mongodb.MongoCommandException: Command failed with error 13 (Unauthorized): 'command listDatabases requires authentication'. The full response is {"ok": 0.0, "errmsg": "command listDatabases requires authentication", "code": 13, "codeName": "Unauthorized"}
at org.talend.repository.nosql.db.util.mongodb.MongoDBConnectionUtil.getDatabaseNames(MongoDBConnectionUtil.java:287)
at org.talend.repository.nosql.db.util.mongodb.MongoDBConnectionUtil.checkConnection(MongoDBConnectionUtil.java:56)"
I tried connecting to it using the JDBC connection by downloading the cdata Jar file and it shows connected successfully but I don't to use the jar file way, I want to know what I'm doing wrong with the above NoSql connection method.
Thanks in advance for all the help!

Maybe some modules are missing. This was at least my problem and i have to use DB version 3.2.X even if i have a mongo db 4.2 installed.
Look in the modules window (Window -> Show View -> Talend -> Modules) if there is any not installed mongo module and install it.
enter image description here

Actually the credentials did not have the right permissions. I was able to connect in the same way by using the right credentials having the appropriate permissions. Apologies for confusing you all with this question.

Related

Connect Postman to Postgres

There is a problem.
I need to access Postgres Database from Postman. Database isn't local, it is on a server, but I have full connection string (host, db_name, user_name/password, scheme).
Any chances to do it?
I tried PostgREST, but I can't install it. I have LIBPQ.dll is not found error. I installed it but it was no help, I still have 0xc00007b error.
So that I can't install PostgREST.
Should I install it on the server where DB is located?
And is there any other way?
update: I managed to overcome all the errors (here is the note how to overcome 0xc00007b error: https://postgrest.org/en/stable/install.html).
Now I can call postgrest from cmd with the flag --help, but it's still not connected to the database.
update2: I managed the connection by putting postgrest.conf filled file in the same directory as postgrest.exe file and running in from cmd.
search for app and browser control in start menu, then select exploitation control :
set randomize image ASLR to off

Is there a way to use Flyway on AS400?

I need to implement migration tool like Flyway in order to use Jenkins to deploy DB changes.
I tried to add jt400.jar file and added configuration as follows:
flyway.url=jdbc:as400://192.168.171.251:446/DBDEV
flyway.driver=com.ibm.as400.access.AS400JDBCDriver
as a driver and it would not connect with this message:
ERROR: No database found to handle jdbc:as400://192.168.171.251:446/DBDEV
I also tried with using IBM DB2 driver and had configuration
flyway.url=jdbc:db2://192.168.171.251:50000/DBDEV
flyway.driver=com.ibm.db2.jcc.DB2Driver
this time I am getting this kind of refusal message
ERROR:
Unable to obtain connection from database (jdbc:db2://192.168.171.251:50000/DBDEV) for user 'DEVUSER':
[jcc][t4][2043][11550][4.26.14] Exception java.net.ConnectException: Error opening socket to server
/192.168.171.251 on port 50,000 with message: Connection refused (Connection refused).
ERRORCODE=-4499, SQLSTATE=08001
With this test migration I am trying to create a simple table by executing this sql
CREATE TABLE PERSON (
ID INT NOT NULL,
NAME VARCHAR(100) NOT NULL
);
Anyone had this situation and solved it?
I believe that at present there is no support for flyway to work with IBM i (as/400) regardless of whether you use jt400.jar or an IBM jdbc driver.
You can either use a different database-schema versioning tool, or find a fork of flyway that supports i-series (or pay someone to create and support such a fork, it is open source...).
It seems that currently (flyway 7.7.2) does not recognize a URL that starts with "jdbc:as400:" as a Db2 URL, so it throws an exception, which is the reason that the jt400.jar style URL is rejected with exception:
"No database found to handle ..."
The github history tells a story (see: https://github.com/flyway/flyway/issues/105).
Looks like the devs did not succeed to get the AS400 support added due to the lack of a suitable available i-series testing/dev environment (and also available to travis ci) . There may have been at least one PR for such support in the past, although it seems to be removed.
If you try to use the IBM db2jcc4.jar driver to connect to i-series (as400) with a url similar to: jdbc:db2://hostname/dbname, and you explicitly use an IBM jre , and have the relevant license file (e.g. db2jcc_license_cisuz.jar on the CLASSPATH), then flyway will connect and then report the exception similar to:
Unsupported Database: AS 7.4
The flyway source code shows that flyway does not recognize this database product-name and version, at current flyway version 7.7.2.
Are you sure DBDEV is the name of your Db2 data base on the IBM i?
Use the Work with RDB Directory Entry (WRKRDBDIRE) from the green screen, and look for the *LOCAL entry.
Or use the Access Client Solutions (ACS) "Schemas" tool to see a list of DB on your system.
The above shows 2 DB's, UT29p63 and Dbtest

OrientDB 2.2.13 console.sh: getting "Cannot create a connection to remote server address(es)"

I have an embedded database where I start an OServer and trying to connect to it from the console. I've been doing this successfully for many months and upgrading the database as new versions come out. Now, with 2.2.13, the embedded operations seem to work but I can't connect to the server with the 2.2.13 console.sh. I get the message:
Error: com.orientechnologies.orient.core.exception.OStorageException: Cannot create a connection to remote server address(es): [127.0.0.1:2424]
DB name="master"
The java code running the embedded database gets the following exception:
$ANSI{green {db=db}} Error executing request
com.orientechnologies.orient.core.exception.ODatabaseException: Error on plugin lookup: the server did not start correctly
DB name="db"
at com.orientechnologies.orient.server.OServer.getPlugin(OServer.java:850)
at com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.openDatabase(ONetworkProtocolBinary.java:857)
at com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.handshakeRequest(ONetworkProtocolBinary.java:229)
at com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.execute(ONetworkProtocolBinary.java:194)
at com.orientechnologies.common.thread.OSoftThread.run(OSoftThread.java:77)
Seems to be looking for the 'cluster' plugin.
Any idea why this doesn't work anymore? It did work in 2.2.12.
Thanks
Curtis
Seems I had automatic backup turned on but the config file was missing. So, the server looked like it started up but actually didn't.
I created the config file and set enabled to false. Still didn't start up because it sees the false and stops the configuration and throws an exception because the 'delay' parameter isn't set.
I think orientdb should start up without backups enabled if the config file is missing or the enabled parameter is set to false.
At least the console is working now.

Mysql Workbench error 1142 "Error querying security information" on Data Export

yesterday I updated my Workbench to the latest version available, the 6.3.6 build 511 CE on Windows 10.
Now I'm trying to make a dump of a remote database via the "Data Export" feature, which has always worked.
But, as soon as I click the "Start Export" button, I get this error:
Unhandled exception: Error querying security information: Error
executing 'SELECT * FROM mysql.user WHERE user = '[username]' and
Host = '[host]' ORDER BY User, Host'
SELECT command denied to user '[username]'#'[host]' for table 'user'
SQL Error: 1142
I know that I don't have the permissions to read that table, but why is that needed to perform a data export?
I've tried to check the force option (Continue even if we get an sql-error) but it's still not working.
Is this a Workbench bug? Or is there any way to avoid this query?
I had this exact same issue. The solution provided in this thread (same as the_nuts answer) is to uninstall 6.3.6 and install 6.3.4 from the archived versions: https://downloads.mysql.com/archives/workbench/
Update as of 13th June 2016
This bug has now been fixed
Download 6.3.7 (or later if available) from here
Found, this is indeed a bug of the version 6.3.6:
MySQL Bugs: #79807: Workbench Data Export: Unhandled exception: Error querying security information
MySQL Workbench has the correct behavior. If you are using a user other than 'root' MySQL Workbench will display that alert. However, if you setup your access to the server and database as root you will not run into problems exporting/importing because you have the right access to do so.

IBM data studio not connecting to local DB2 databases

I have installed DB2 10.5 version on my local Ubuntu 12.04 Machine. Now i need a GUI. I already tried squirrel-sql & Db-Visualizer. While Db-Visualizer give me the view-only database structure, squirrel-sql give me some more options to manage. But now I need a DB2 administrator tool, which can handle all this tasks plus backup/restore, import/export etc.
I have listen a lot for IBM Data Studio as de-facto tool for DB2. So I installed it. After install completion, I am unable connect to my DB2 databases/schemas. It is surprise As I am easily can connect my Dbs through squirrel-sql & Db-Visualizer but IBM Data Studio refuse to connect. It give following errors during try.
Full message content: [jcc][t4][2043][11550][4.17.30] Exception java.net.SocketException: Error opening socket to server localhost/127.0.0.1 on port 50,000 with message: Malformed reply from SOCKS server.
An attempt was made to access a database that was not found, has not been started, or does not support transactions.
Ensure that the specified database name exists in the system database directory. If the database name does not exist in the system database directory, either the database does not exist or the database name has not been cataloged. If needed, issue a db2start command and then resubmit the current command. SQL4499N A fatal error occurred that resulted in a disconnect from the data source. SQLSTATE: 08004
I have specified,
Local : Db2 for Linux, Unix & Windows
Database : <mydbname>
Host : localhost
Port Number : 50000
UserName : db2inst1
Password : XXXXXX
Default Schema : db2inst1
Anybody can suggest if extra steps needed to connect.
UPDATE : Pastebin Link for Stack Trace : http://pastebin.com/ySmrFKNV
UPDATE 1 : Search online for DB2 forums for same problem, Somebody suggested to check system proxy settings. So yes, My system have proxy settings enabled. But even after set proxy to NONE in Netwrok Settings in Ubuntu, problem still persists.
UPDATE 2 : Issue resolved after reinstallation of Data Studio. No idea what problem came, But now it working with same settings.
Not really a answer. But issue resolved after re-installation of Data Studio. No idea what problem came, But now it working with same settings.