The current recommendation from MySQL with regards the ODBC Connector is to use the latest V8.0 ODBC Connector with V8.0 and V5.x servers. Senzing is expecting the V8.0 ODBC Connector and associated libraries to be available.
After installing the V8.0 ODBC Connector alongside a V5.x server on RedHat or CentOS based systems, and trying to use the supplied Senzing tools you may see an error similar to:
ERROR: could not start the G2 module at /opt/senzing/g2/python/G2Module.ini 0000E|FAILED TO LOAD LIBRARY[libmariadbplugin.so]: libmysqlclient.so.21: cannot open shared objectfile: No such file or directory
Although the ODBC Connector V8.0 is installed a required library is missing. To rectify this:
rpm2cpio mysql-community-libs-8.0.12-1.el7.x86_64.rpm | cpio -idmv
cp /usr/lib64/mysql/libmysqlclient.so.21 /<your_senzing_project>/lib
This will download, extract from the RPM, and copy the required library into your Senzing project lib path. The copy step will need to be repeated for any project using MySQL V5.x Server, and also after updating your senzingapi package.
If your server isn't connected to the internet you will need to download the RPM file and make it available via other means than wget.
The exact URL to use in the wget command may change, the correct URL can be obtained by:
- Visit https://dev.mysql.com/downloads/mysql/
- Enter RedHat Linux distribution details
- Look for the Shared Libraries
- Replace the RPM file name in wget with the name shown in parenthesis for the Shared Libraries