KNOWLEDGE BASE

Can't Open Lib '/opt/tableau/tableau_Driver/postgresql-Odbc/psqlodbcw.so' : File Not Found Upon Accessing Tableau Server Repository


Published: 11 Sep 2019
Last Modified Date: 01 Mar 2021

Issue

After installing the Postgres driver and accessing the Postgres database used for Tableau Server repository on Linux, the error occurs:
User-added image

The ldd command to print shared libraries/dependencies will likely present an error

Command: 
ldd <path/to/driver>

Command to determine the <path/to/driver> of the postgresql driver:
cat /etc/odbcinst.ini
Example output:
[ODBC Drivers]
PostgreSQL Unicode=Installed

[PostgreSQL Unicode]
Description=ODBC for PostgreSQL
Driver=/opt/tableau/tableau_driver/postgresql-odbc/psqlodbcw.so
FileUsage=1


Among output, some missing expected libraries:
libssl.so.example => not found
libcrypto.so.example => not found
User-added image

Environment

  • Tableau Server
  • RHEL
  • Centos
  • Debian 9 "Stretch"
  • PostgreSQL

Resolution

Solution #1 (recommended)

install latest public pgsql odbc driver package for your linux distribution, then update odbcinst.ini to point at the new pgsqlodbcw.so file instead.

For example on Debian:

sudo apt install odbc-postgresql

Solution #2

Check for the package with the missing shared libraries and install with the following command:

The below command will query to find a package: 
sudo yum whatprovides */libcrypto.so.example

Install the package: 
sudo yum install -y compat-opensslexample-1:1.0.2o-3.el8.x86_64

Solution #3 (Debian specific)

Download libcrypto v1.0.0 from previous debian (jessie) release:

https://packages.debian.org/jessie/amd64/libssl1.0.0/download

install with the command:
sudo dpkg -i libssl1.0.0_1.0.1t-1+deb8u12_amd64.deb
 

 

Cause

Environmental changes such as major operating system upgrades or problems with the driver package can result in missing dependencies.

In the case of Debian, Debian 9 ships libssl.so.1.1 and libssl.so.1.0.2, but not libssl.so.1.0.0. Later versions of the official postgreSQL package are therefore recommended as they implement the newer versions of these libraries.

 

Did this article resolve the issue?