《MySQL新身份验证插件caching_sha2_password》讲解了MySQL新身份验证插件caching_sha2_password,对于同事碰到的这个问题,
ERROR 2059 (HY000):Plugin caching_sha2_password could not be loaded:/usr/lib64/mariadb/plugin/caching_sha2_password.so:cannot open shared object file: No such file or directory
最直接的解决方案就是将身份验证改回原来的"mysql_native_password",
alter user bisal@'%' identified with mysql_native_password by 'bisal';flush privileges;
通过user视图可以看到用户的验证插件已经改为了"mysql_native_password",

但是,正如文章所说的,mysql_native_password作为MySQL 5.6/5.7的默认密码插件,优点是支持challenge-response(挑战应答方式),这是非常快的验证机制,无需在网络中发送实际密码,并且不需要加密的连接,但是不够安全。而使用caching_sha2_password插件的客户端,连接到服务器时,不会使用明文密码,密码传输是如何进行的取决于是否使用安全连接或RSA对密码加密,更加安全可靠。
因此,对于不同的产品,更高版本可能会提供更多的新功能,但同时为了兼容,会给出回到老版本功能的方式,例如Oracle的各种隐含参数,其实就是开发人员在代码中加入的各种新功能开关,可能某个19c新特性,在12c中就引入了,但是通过隐含参数来控制,不稳定的新特性,默认就是关的,如果开启,出现问题了,就可以通过隐含参数来关闭特性。
但像这种加密的选项,肯定是朝着更加安全的方向发展,所以对这些特性,在充分测试的前提下,还是建议能尽量采用,避免一些风险。

近期更新的文章:
《MySQL新身份验证插件caching_sha2_password》
近期的热文:
文章分类和索引:
文章转载自bisal的个人杂货铺,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




