Mysql
由於“未定義符號”,MySQL 外掛無法安裝
幾年來,我一直在我的 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。