因此,在谈论 Linux 服务器管理时,我有点新奇。我目前正在尝试在我管理的运行 RHEL6 的机器上启用 MySQL 的常规日志记录。根据我所读到的所有内容,我应该能够使用以下命令启用慢查询日志记录和常规查询日志记录
/etc/rc.d/init.d/mysqld start --general_log=1 --log-output=TABLE --slow_query_log=1
根据我所知,这应该可以启用对 mysql.general_log 表的常规日志记录(除了 mysql.slow_log 表)。但不幸的是,当我执行此操作然后检查 MySQL 中的全局变量时,我看到了以下内容。
general_log | OFF
我查看了 mysqld 手册,它说我可以执行以下操作来查看我可以提供给 mysqld 的所有命令/开关。
mysqld --verbose --help
所以我尝试做以下事情
/etc/rc.d/init.d/mysqld --verbose --help
当我这样做时,我看到了以下内容
Usage: /etc/rc.d/init.d/mysqld {start|stop|status|restart|condrestart|try-restart|reload|force-reload}
我觉得我过去遇到过这种情况,其中驻留在 /etc/rc.d/init.d 目录中的守护进程实际上不是我需要发出命令的守护进程,但我似乎找不到任何其他 mysqld。
我的问题如下:
- 我在这里没有得到什么?
- RHEL 中是否存在守护进程所驻留的其他特定位置?
提前感谢您的帮助!
答案1
实际上,您这样做是错误的。您需要做的就是编辑文件 /etc/my.cnf 并添加以下指令:
#Enable general query logging
general_log=1
general_log_file=/var/log/mysqld-general.log
然后重新启动 MySQL 守护进程:
/etc/init.d/mysqld restart
然后你就启用了 general_log