Mysql

由於“未定義符號”,MySQL 外掛無法安裝

  • September 12, 2021

幾年來,我一直在我的 MySQL 數據庫上使用 MariaDB 審計外掛。

我現在正在尋找開始將我的數據庫升級到 MySQL 8,因此剛剛嘗試將其安裝到 MySQL 8.0.19,但收到以下錯誤:

Error Code: 1126. Can't open shared library '/usr/lib/mysql/plugin/server_audit.so' (errno: 2 /usr/lib/mysql/plugin/server_audit.so: undefined symbol: fn_format)

我嘗試下載最新版本(從 MariaDB 10.4.7 二進製文件審核 1.4.7),但沒有任何區別。下載舊版本的外掛也沒有什麼區別。

這可能是 MySQL 問題還是 Mariadb 問題?有沒有辦法解決這個問題。我的大多數數據庫都安裝在 Debian 9 或 10 伺服器上。

這不是一個真正的答案,但我找到了一種解決方法,即使用 Percona Audit 外掛代替(我曾經使用過,但是當我從 5.5 移動到 5.7 時停止工作,但奇怪的是現在又可以使用 8.0)。在我的情況下,我已經有了支持程式碼和基礎設施來切換回這個,所以這不是一項大任務。

MariaDB 曾經是 MySQL 的替代品,因此它們的庫曾經是兼容的。這已不再是這種情況:

不幸的是,MariaDB 和 MySQL 正在分開並變得越來越不同,這意味著像您發現的庫中的不兼容問題變得越來越可能。我不認為 MariaDB 從 8.0 開始努力與 MySQL 版本保持兼容。

解決方法當然是將您的數據庫升級到 MariaDB 10.5 而不是 MySQL 8.0。

引用自:https://dba.stackexchange.com/questions/260630