可以使用mysql-audit-plugin 登录connect和quit命令。
- 从mysql-audit-plugin发行版中找到正确的版本,我使用mysql 5.7,因此使用
audit-plugin-percona-5.7-1.1.7-805-linux-x86_64.zip。
- 将下载的
so文件重新定位到给出的位置mysqladmin variables | grep plugin_dir。
mysql>install plugin audit soname 'libaudit_plugin.so'
- 打开日志功能,
mysql>set global audit_json_file=ON默认情况下它将记录所有成功的操作。set global audit_record_cmds='quit,connect'根据mysql-audit-plugin的配置,通过设置它,它只会记录我想连接和退出的日志。
这是它在文件中用于登录和注销的外观:
{"msg-type":"activity","date":"1543740612328","thread-id":"1015112","query-id":"3045222","user":"root","priv_user":"skip-grants user","ip":"172.28.15.10","host":"172.28.15.10","connect_attrs":{"_os":"Linux","_client_name":"libmysql","_pid":"11575","_client_version":"5.6.40","_platform":"x86_64","program_name":"mysql"},"cmd":"Quit","query":"Quit"}
{"msg-type":"activity","date":"1543740724627","thread-id":"1015113","query-id":"0","user":"root","priv_user":"skip-grants user","ip":"172.28.15.10","host":"172.28.15.10","connect_attrs":{"_os":"Linux","_client_name":"libmysql","_pid":"11863","_client_version":"5.6.40","_platform":"x86_64","program_name":"mysql"},"cmd":"Connect","query":"Connect"}
{"msg-type":"activity","date":"1543740724629","thread-id":"1015113","query-id":"3045223","user":"root","priv_user":"skip-grants user","ip":"172.28.15.10","host":"172.28.15.10","connect_attrs":{"_os":"Linux","_client_name":"libmysql","_pid":"11863","_client_version":"5.6.40","_platform":"x86_64","program_name":"mysql"},"rows":"1","status":"0","cmd":"select","query":"select @@version_comment limit 1"}