非内嵌的插件

有些插件,是 MariaDB 内建的,本地安装 MariaDB 就激活了;
有的是在服务器的插件,需要 install plugin;
还有就是第三方,需要安装到本地,再激活使用。

区别可以简单这样认为:

  • SHOW PLUGINS;看到所有已安装的激活的插件,可见数量等于SELECT * FROM information_schema.PLUGINS;

  • SHOW PLUGINS SONAME;在 plugin_dir 目录中显示有 关已编译和所有服务器插件的信息,包括尚未安装的插件,可见数量等于SELECT * FROM information_schema.all_plugins

  • 还有就是第三种,不在 MariaDB 服务器的插件,就是不在information_schema.all_plugins的表中的第三方的插件。可能需要在终端中进行额外安装。

例如 Cracklib Password Check,可以 select 一下:

未安装的Cracklib Password Check插件

ok,为了测试该插件的使用效果,先把之前安装的 simple_password_check 卸载了:

UNINSTALL PLUGIN IF EXISTS simple_password_check;

Cracklib Password Check 插件简单说明:

  • 插件 Cracklib Password Check 是 MariaDB 10.1.2 加入的;
  • 需要搭配: crackle 2.9.0 (Debian 8 Jessie / Ubuntu 14.04 Trusty,RedHat Enterprise Linux / CentOS 6 之后,系统默认已有)
  • 非属 MariaDB Package Component, 必须额外安装

终端安装 cracklib-password-check 插件:

sudo apt install mariadb-plugin-cracklib-password-check

终端安装的Cracklib Password Check插件

安装完之后,就可以在 all_plugin 表中看到了,默认安装完成后激活。

安装成功后查看信息

这也是一个检查密码强度的插件,用于检查设定的密码强度是否足够。测试也简单,同样新建个用户,赋予简单的密码,是不允许的:

SET PASSWORD FOR 'test2'@'%' = PASSWORD('abc');

设置账户密码检验不通过

修改为账号 test2 为复杂密码即可通过

SET PASSWORD FOR 'test2'@'%' = PASSWORD('P@ssw00d');

设置账户密码检验通过