unix_socket认证插件允许用户通过本地Unix套接字文件连接到MariaDB的时候使用操作系统的凭证。
通俗的讲就是用Linux操作系统的账号,去登录MariaDB/MySQL数据库。
这个功能是在MariaDB 10.4.6版本里添加的,目前也支持在MySQL 8.0.18版本中。
用法:
1、安装插件
mysql> INSTALL PLUGIN auth_socket SONAME 'auth_socket.so';
Query OK, 0 rows affected (0.01 sec)
2、创建数据库账号hechunyang
mysql> CREATE USER 'hechunyang'@'localhost' IDENTIFIED WITH auth_socket;
Query OK, 0 rows affected (0.00 sec)
3、创建操作系统账号hechunyang
# useradd hechunyang
# passwd hechunyang
以hechunyang用户登录操作系统
4、登录MySQL 8.0.18
[root@localhost soft]# su - hechunyang
Last login: Fri Nov 8 16:40:53 CST 2019 on pts/0
[hechunyang@localhost ~]$
[hechunyang@localhost ~]$
[hechunyang@localhost ~]$ /usr/local/mysql/bin/mysql -S /tmp/mysql_hcy.sock -uhechunyang -e "select version();"
+-----------+
| version() |
+-----------+
| 8.0.18 |
+-----------+
[hechunyang@localhost ~]$
在此示例中,用户hechunyang已登录操作系统并具有完全shell访问权限。他已经使用操作系统进行了身份验证,并且他的MySQL帐户已配置为使用unix_socket身份验证插件,因此他无需再次对数据库进行身份验证。MySQL接受他的操作系统凭证并允许他连接。
亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。