perl-DBD-MySQL can't install

I Can’t install dnf package perl-DBD-MySQL.
This is probably a problem with the MySQL version.

perl-DBD-MySQL-4.053-1.el9.x86_64 required: libmysqlclient.so.21
but I have libmysqlclient.so.24.0.6…

I tried the “nobest” option but it didn’t find any other candidates to install.

$ sudo dnf install perl-DBD-MySQL
メタデータの期限切れの最終確認: 0:20:49 前の 2025年11月26日 15時53分41秒 に実施しました。
エラー:
 問題: package perl-DBD-MySQL-4.053-1.el9.x86_64 from appstream requires libmysqlclient.so.21()(64bit), but none of the providers can be installed
  - package perl-DBD-MySQL-4.053-1.el9.x86_64 from appstream requires libmysqlclient.so.21(libmysqlclient_21.0)(64bit), but none of the providers can be installed
  - 競合するリクエスト
  - package mysql-libs-8.0.43-1.el9_6.x86_64 from appstream is filtered out by modular filtering
(インストール不可のパッケージをスキップするには、'--skip-broken' を追加してみてください または、'--nobest' を追加して、最適候補のパッケージのみを使用しないでください)

$ sudo dnf list installed | grep mysql
mysql.x86_64                                   8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-common.noarch                            8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-devel.x86_64                             8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-errmsg.noarch                            8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-libs.x86_64                              8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-selinux.noarch                           1.0.14-1.el9_6                        @appstream
mysql-server.x86_64                            8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
php-mysqlnd.x86_64                             8.4.15-1.module_php.8.4.el9.remi      @remi-modular

$ sudo find /lib64/ -type f -name "libmysqlclient.so*"
/lib64/mysql/libmysqlclient.so.24.0.6

However, I was able to install it last month.
The version combinations used at that time were as follows:

$ sudo dnf list installed | grep perl-DBD-MySQL
perl-DBD-MySQL.x86_64                          4.050-13.el9                          @appstream

$ sudo dnf list installed | grep mysql
mysql.x86_64                                   8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-common.noarch                            8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-devel.x86_64                             8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-errmsg.noarch                            8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-libs.x86_64                              8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
mysql-selinux.noarch                           1.0.14-1.el9_6                        @appstream
mysql-server.x86_64                            8.4.6-1.module_el9.6.0+180+a4e757e5   @appstream
php-mysqlnd.x86_64                             8.4.13-1.el9.remi                     @remi-modular

$ sudo find /lib64/ -type f -name "libmysqlclient.so*"
/lib64/mysql/libmysqlclient.so.24.0.6

Hello.

Looking at the Requires for the RPM you posted,

Whereas 4.050 leaned toward the MariaDB client side,
from 4.053 onward, it changed to hard dependencies on the Oracle MySQL client (libmysqlclient.so.21).

In the questioner’s environment, the MySQL 8.4 (libmysqlclient.so.24) module is already enabled.
Since mysql-libs 8.0.x, which provides libmysqlclient.so.21, is hidden from dnf due to modular filtering,
the dependencies cannot be satisfied, preventing installation.

Removing libmysqlclient.so.24 carries a high risk of breaking MySQL 8.4 itself and is not a safe workaround.

Therefore, it is recommended to report a bug to AlmaLinux Bugzilla with the following description:
“Unable to install perl-DBD-MySQL-4.053 in a MySQL 8.4 (libmysqlclient.so.24) environment
due to a dependency on libmysqlclient.so.21.”

to AlmaLinux’s Bugzilla.

1 Like

Hello.

Thanks for your advice.
I have filed this topic in AlmaLinux’s Bugzilla.