This thread opened up to track the trials and tribulations of getting ASQL to work under EL9 with MySQL. Some of the complications are:
- 32 vs 64 bit. It seems that the official MySQL downloads have started to drop the 32 bit versions from the package. (This can be a serious complication if you need to stick with 32 bit A-Shell for some other reason.)
- The MySQL variations are proliferating, both in terms of versions (5.7, 8.0, 8.4, 9.0) and in packaging (mysql, mariadb, community), leading to "package-conflict hell"
My first attempt was to just follow the instructions at
the MySQL Community Downloads site. That may work for 64 bit, but in this case we were trying to get the 32 bit ASQL client, and the latest downloads do not appear to support the i686 architecture. So by some stumbling around, we landed on this...
$ sudo yum install mariadb-connector-c-devel.i686
...which did create a libmysqlclient.so.21 which appears to satisfy the requirements of
libashmysql8.so.1.6.149-el9. Here's what ldd now shows:
$ ldd libashmysql8.so.1.6.149-el9
linux-gate.so.1 (0xf7f37000)
libc.so.6 => /lib/libc.so.6 (0xf7d1d000)
libmariadb.so.3 => /lib/libmariadb.so.3 (0xf7cd1000)
/lib/ld-linux.so.2 (0xf7f39000)
libz.so.1 => /lib/libz.so.1 (0xf7cb7000)
libssl.so.3 => /lib/libssl.so.3 (0xf7c0c000)
libcrypto.so.3 => /lib/libcrypto.so.3 (0xf7800000)
And that works, to the extent of being able to successfully load and init the connector (using the SQLTEST1 program).
That's as far as I've gotten with the 32 bit version, since I've as-yet been unable to actually connect to a working MySQL server. (I installed the 8.4 server under Windows locally, but it seems that the 8.0 client, including even the MySQL 8.0 Workbench, is unable to talk to the 8.4 server.) I've made a couple of attempts to install an older server on a VM but have run into various kind of package version conflicts, which is where things stand on my end at the moment. But in theory at least, I suspect that the above linked driver should be able to connect to any server version 8.0 or older.