我正在尝试识别执行的mysql命令的时间戳。在/root/.mysql_history文件中,只有命令,没有时间。
在Linux中,可以使用任何配置将时间戳存储在mysql历史文件/root/.mysql_history中吗?
发布于 2016-09-20 07:26:46
如果您调用mysql --syslog,客户端将在您的系统日志中写入您执行的查询的日志,包括日期和时间。
在Linux上,此日志位于/var/ log /messages中。在Mac上,它是/var/log/system.log。在Windows上,它是Windows事件日志。
请参阅https://dev.mysql.com/doc/refman/5.7/en/mysql-logging.html
默认情况下,还可以通过编辑/etc/my.cnf或personal $HOME/.my.cnf来启用此选项
[mysql]
syslog我在我的VM中尝试了这个方法,在/var/log/messages中得到了以下内容。我尝试了两次,一次使用命令行选项,另一次使用config-file选项。
Sep 19 16:09:30 sandbox-centos mysql: SYSTEM_USER:'vagrant', MYSQL_USER:'root', CONNECTION_ID:215, DB_SERVER:'127.0.0.1', DB:'--', QUERY:'select 'now is the time';'
Sep 19 16:10:02 sandbox-centos mysql: SYSTEM_USER:'vagrant', MYSQL_USER:'root', CONNECTION_ID:223, DB_SERVER:'127.0.0.1', DB:'--', QUERY:'select now();'当然,任何用户都可以覆盖此选项,因此很容易掩盖自己的踪迹。换句话说,您不应该依赖它作为审计工具。
https://stackoverflow.com/questions/39583465
复制相似问题