当前位置:嗨网首页>书籍在线阅读

09-日志的位置和格式

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

查询日志和慢查询日志(见下一节)都可以选择保存在文件或者表中,并使用参数--log-output[=value,...]来进行控制,value值可以是TABLE、FILE、NONE的一个或者多个组合,中间用逗号进行分割,分别表示日志保存在表、文件、不保存在表和文件中,这里的表指的是mysql 库中的 general_log(慢查询日志是 slow_log)表。其中 NONE 的优先级最高,比如--log-output =TABLE,FILE表示日志可以同时输出到表和文件中,而--log-output =TABLE,NONE由于NONE的优先级,表示日志不保存在表和文件中。如果不显式设置此参数,则默认输出到文件。在MySQL 5.5.7之前的版本中,日志记录到表比记录到文件要占用更多的系统资源,如果需要更高的性能,则建议使用文件来记录日志。

如果要启用查询日志,可以通过参数--general_log[={0|1}]和--general_log_file=file_name来进行控制。前者控制是否启用日志,后者控制日志文件的路径。--general_log设置为1或者不带值都可以启用查询日志;设置为0则关闭查询日志,如果不指定此参数也不会启用查询日志(在MySQL 5.1.29之前使用--log[=file_name]或-l [file_name])。如果没有指定--general_log_file=file_name的值,且没有显式设置--log-output参数,那么日志将写入参数DATADIR(数据目录)指定的路径下,默认文件名是host_name.log。这两个参数都是global类型,可以在系统启动时或者系统运行时进行动态修改,如果想在 session级别控制日志是否被记录,则通过在session中设置参数sql_log_off为on或者off来进行控制。