Unable to establish connection to 4D database via ODBC driver - odbc

I installed the ODBC for 4d server but could not work it! Did you ever get the ODBC driver to work? I just installed it as well and cannot create a DSN that connects?

The error dialog is stating that the client is unable to establish a connection and asking if the sql server is started. This indicates that the ODBC driver cannot communicate to the 4D Server on the ip/port you have specified. The most likely scenario is that the SQL Server is not started but it could also be a port conflict or firewall.
In order for the ODBC driver to connect to the 4D Server;
the SQL Server must be started on 4D Server (i.e. START SQL SERVER)
the SQL Server port (default 19812) must not be blocked by a firewall
if using a non-standard port you must specify the port during DSN creation
Reminders:
Make sure the version of the ODBC Driver matches the version of the 4D Server.
At the DSN level you have selected 'Use SSL', so make sure the SQL Server is also using ssl
ODBC connections consume a 4D Client license in the absence of an Unlimited SQL license.

Related

System DSN ODBC connections working initially but failing after at least 4 hours

I am trying to migrate data from our Enterprise Data Warehouse to one of our own reporting databases via ODBC and Python scripts. The python scripts import pyodbc to handle the database connections and execute SQL queries. A system DSN is defined on our ETL server for each database involved in the process.
Enterprise Data Warehouse (Data Source)
ETL Server - Windows Server 2016 with SQL Server 2016 instance
Reporting database (Data Destination) - Windows Server 2016 with SQL Server 2019 instance
When the ETL server is freshly rebooted, all the scripts successfully execute and transfer data as expected. After a number of hours though one of the connections no longer works until a system reboot is performed. Rebooting the ETL server before every scheduled ETL job isn't ideal and I would like to have these connections persist without a reboot.
Here is the error
[Microsoft][ODBC Driver 17 for SQL Server]Named Pipes Provider: Could not open a connection to SQL Server [53]. (53) (SQLDriverConnect); [08001] [Microsoft][ODBC Driver 17 for SQL Server]Login timeout expired (0); [08001] [Microsoft][ODBC Driver 17 for SQL Server]A network-related or instance-specific error has
occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online. (53)')
I tested each of the DSNs using ODBC Data Source Administrator (64-bit)
DSN for EDW connectivity test successful
DSN for ETL connectivity test successful
DSN for Reporting database connectivity test failed
Even when the scripts throw errors and the connectivity tests fail
I am still able to remotely connect to Reporting Database in SQL Server Management Studio and execute queries
The Reporting Database server also remains accessible via Windows Remote Desktop Connection so its not powered off or unavailable on the network.
Once the ETL server is rebooted, the DSN connection tests succeed and everything returns to normal for a few hours.
This problem also occurs with OLE DB connections defined in SSIS packages, which is why I'm trying python and ODBC for this project. Turns out I'm running into the exact same issue. The SSIS errors are also driven by the Connection Manager for the Reporting Database.
I have full administrative privileges on the ETL server as well as the Reporting Database but I am in an Enterprise environment and lack privileges to administrate networking.
Please let me know what other information would be helpful to diagnose and troubleshoot this problem.
Thanks in advance!

Tableau Server Error connecting to ODBC driver

I can able to connect/fetch data from Tableau Desktop but in tableau server it is throwing below error with datasource, Datasource is build on BI ODBC driver. Access permission are assign granted to root folder Oracle_HOME.
Based on the error, it seems the the driver is not properly installed. Try downloading the Oracle driver from tableau drivers page. If its installed correctly please cross check on the configurations you have provided. If you are using the ODBC driver, have you created the DSN properly. The DSN needs to be configured properly with the server name and authorisations and once this is done you can use this DSN in tableau.
Once you have installed the driver properly
Click Connect to Data.
On the Connect page, click Other Databases (ODBC).
In the DSN drop-down list, select the name that you gave to your Oracle BI Server ODBC connection, and then click Connect.
Below is the link on how to connect with the BI Connector
How to Connect to Oracle BI Server with Tableau without the shortcomings of Oracle ODBC driver
By Default, tableau server pre-populates “Server Run As user” account to Network Service account (NT AUTHRITY\NetworkService). And this account does not have full permission.

Making ODBC connection

I'm trying to setup a ODBC connection from a Windows XP/Pro (32bit) client to a MySQL database running on a CentOS 6.3 64bit server.
Both systems are on the same subnet.
I have Samba installed and working on the CentOS server.
I can map the server directory that contains the database tables on the XP system.
The DB server is fully updated on all packages.
I can login to the server with myid:mypw via ssh, a standard user. Same user can make SELECTS from the database.
Can not ssh to root on CentOS server, root is excluded in the ssh config.
When I try to run the ODBC Data Source Administrator on the XP client, on the Create a New
Data Source to SQL Server screen, I select using a login ID entered by the user. I'm
entering the same ID:pw I use to ssh into the server. At that point I get an error,
SQLState = '08001';
SQL Server error: 17;
SQL Server does not exist or access denied"
The Server name I'm entering for "Which SQL Server do you want to connect to?", I've entered the host name of the CentOS that is defined in the XP's /etc/host file. It does appear in the drop down list for that question.
I have installed unixODBC*, mysql-connector-odbc & libtool* packages via yum.
On the server, odbc -q -d returns: [MySQL]
odbcinst.ini includes lines for Driver | Setup | Driver64 | Setup64. The 64 versions do point to /usr/lib64.....
odbc.ini includes: [MyDSN} & Driver = MySQL ODBC 5.1 Driver
Any idea what I've missed so far? Am I running into 32/64 bit system issues? And if so how do I solve this, I will have both 32 & 64 bit users most of them on Windows 7/Pro 64 bit, a few stuck on XP/Pro 32 bit.
I'm a bit lost in this task, so some detailed instructions would be great.
Thanks in advance..
Assuming you have not made a mistake and you really want to access a MySQL database on a remote Centos based system from Windows using ODBC you'll need to install the MySQL ODBC Driver on your Windows machine. You cannot use the MS SQL Server driver to access MySQL. Once you've done that you create a MySQL ODBC data source (although you can use DSNless connections) and not a SQL Server DSN.
2 and 3 are irrelevant as the MySQL ODBC driver is capable of talking directly to your MySQL Database server over the network assuming your server is set up to listen for external connections.
5 is also irrelevant as you'll need a MySQL database username and password and you database needs to allow connections from your windows machine.
(9-12) You also do not need to install unixODBC of the MySQL connector on your Centos box unless you want to access that same MySQL database with an application running on Centos that uses ODBC. 10 just tells you you've got an entry in your odbcinst.ini file for the MySQL ODBC driver which you don't need. 11 is the same info. 12 is a MySQL ODBC DSN which you also don't need.

I can ping a database, should I be able to connect with the correct credentials?

I am able to ping a database server from my machine but am having a hard time connecting. Should I be able to connect or could there be other network features that are getting in the way?
I am trying to connect with Oracle SQL developer to an Oracle 11g R2 database.
Here are the instructions to connect to database using sql developer
Know the port number on which database is listening (by default 1521)
Make sure you can telnet to the host and the port number
There are several ways, you can connect (BASIC, TNS, Advanced etc)
For Basic, you need to give host ip or resolvable name, port and sid or service name as part of the connect string. Similarly for JDBC you need to give valid JDBC url and also you are supposed to ojdbc jar file in the appropriate location of sql developer.

File DSN for iSeries AS400 ODBC connection

How can I create a file dsn for connecting to an AS400 system using the iSeries ODBC driver?
The iSeries ODBC driver allows many settings to be configured. Where can I find a list of all properties that can be set in the file DSN?
Driver={iSeries Access ODBC Driver};System=server;Uid=user;Pwd=password;
Where server is the system to connect (either IP address or hostname), username and password.
You can have a .dsn file like this:
[ODBC]
DRIVER=iSeries Access ODBC Driver
System=server;
Uid=user;
Pwd=password;
Initial Catalog=library;
There is a good internet resource regarding connectionstrings of all flavors:
http://www.connectionstrings.com/
Here is the page for the AS400 ODBC drivers: http://www.connectionstrings.com/as-400
ODBC
IBM Client Access ODBC driver
Driver={Client Access ODBC Driver (32-bit)};System=my_system_name;
Uid=myUsername;Pwd=myPassword;
IBM iSeries Access ODBC driver
This driver is newer than the one above.
Driver={iSeries Access ODBC Driver};System=my_system_name;
Uid=myUsername;Pwd=myPassword;
IBM .Net Data Provider
Using the IBM.Data.DB2.iSeries namespace
DataSource=myServerAddress;UserID=myUsername;
Password=myPassword; DataCompression=True;
OLE DB, OleDbConnection
IBM Client Access OLE DB provider
Provider=IBMDA400;Data Source=MY_SYSTEM_NAME;
User Id=myUsername;Password=myPassword;
Where MY_SYSTEM_NAME is the name given to the system connection in OperationsNavigator
IBM Client Access OLE DB provider
Provider=IBMDA400;Data Source=MY_SYSTEM_NAME;User Id=myUsername;
Password=myPassword;Default Collection=MY_LIBRARY;
Where MY_SYSTEM_NAME is the name given to the System Connection, and MY_LIBRARY is the name given to the library in iSeries Navigator.
I just discovered you can create a file DSN using the ODCB Administration tool, for any type of ODBC driver.
Here is the IBM documentation on ODBC connection string parameters.
Here's a great detailed description of what each keyword is and how you can configure them. The discusion is for DSN-less connections, in applications, but is useful if you want to customize your file DSN. I found it more useful than the IBM documentation.
http://www.sqlthing.com/HowardsODBCiSeriesFAQ.htm

Resources