暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ERROR 3529 (HY000): Cannot load component from specified URN....

DBA闲思杂想录 2023-06-30
588

这里介绍、演示一下,安装validate_password组件时遇到ERROR 3529 (HY000): Cannot load component from specified URN: 'file://component_validate_password'错误的原因,关于validate_password插件和组件更多的介绍,可以查看这篇文章MySQL的validate_password插件/组件总结

当前测试的环境为MySQL 8.0.33

mysql> select @@version;
+-----------+
| @@version |
+-----------+
| 8.0.33    |
+-----------+
1 row in set (0.00 sec)
mysql> 

mysql> INSTALL COMPONENT 'file://component_validate_password';

复制

此时不重启MySQL服务,然后由于一些事情导致当你忘记已经安装过validate_password组件这件事情了,检查MySQL是否安装validate_password组件

mysql> select * from mysql.plugin;
Empty set (0.00 sec)

复制

检查发现没有安装validate_password组件,然后重新安装组件时就会遇到这个错误,如下所示,其实重复安装validate_password组件就会遇到这个错误,有时候是因为验证问题或安装组件过后没有重启MySQL导致。

mysql> INSTALL COMPONENT 'file://component_validate_password';
ERROR 3529 (HY000): Cannot load component from specified URN: 'file://component_validate_password'.

复制

你可以用下面方式验证,发现已经安装过validate_password组件

mysql>  show global variables like '%validate_password%';
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password.check_user_name    | ON     |
| validate_password.dictionary_file    |        |
| validate_password.length             | 8      |
| validate_password.mixed_case_count   | 1      |
| validate_password.number_count       | 1      |
| validate_password.policy             | MEDIUM |
| validate_password.special_char_count | 1      |
+--------------------------------------+--------+
7 rows in set (0.00 sec)

mysql> 

复制

重启MySQL服务后,就可以从mysql.component中看到相关数据了。如下所示:

mysql> select * from mysql.component;
+--------------+--------------------+------------------------------------+
| component_id | component_group_id | component_urn                      |
+--------------+--------------------+------------------------------------+
|            1 |                  1 | file://component_validate_password |
+--------------+--------------------+------------------------------------+
1 row in set (0.00 sec)

mysql>  show global variables like '%validate_password%';
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password.check_user_name    | ON     |
| validate_password.dictionary_file    |        |
| validate_password.length             | 8      |
| validate_password.mixed_case_count   | 1      |
| validate_password.number_count       | 1      |
| validate_password.policy             | MEDIUM |
| validate_password.special_char_count | 1      |
+--------------------------------------+--------+
7 rows in set (0.00 sec)

mysql> 

复制


文章转载自DBA闲思杂想录,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论