MySQL8.0 无法加载 component_reference_cache.so 插件
错误信息及分析
2023-11-24 07:04:56+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.35-1.el8 started.
2023-11-24 07:04:56+08:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2023-11-24 07:04:56+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.35-1.el8 started. '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock' mysqld: Can't open shared library '/var/lib/mysql/lib64/mysql/plugin/component_reference_cache.so' (errno: 0
/var/lib/mysql/lib64/mysql/plugin/component_reference_cache.so: cannot open shared object file: No such file or directory)
mysqld: Cannot load component from specified URN: 'file://component_reference_cache'.
无法加载 /var/lib/mysql/lib64/mysql/plugin/component_reference_cache.so 组件。
然后查看 /var/lib/mysql/lib64/mysql/plugin 是否有这样的目录,如果没有则是因为你挂载过 /var/lib/mysql 目录。
解决方法
- 不要使用挂载 /var/lib/mysql 文件
- 正常运行一个 mysql8.0.35
- 然后进入容器登陆
mysql -u root -p
- 使用命令查看
SHOW VARIABLES LIKE 'plugin_dir'
目录是什么 - 然后在配置文件里设置这个目录即可,参数
plugin_dir
my.cnf 配置
[mysqld]
plugin_dir=/usr/lib64/mysql/plugin
然后再将上面的文件挂载在 /etc/mysql/conf.d
目录下