mysql日志

mysql中的日志在/etc/my.cnf文件中配置

错误日志

log-error[=file_name]

  • file_name指定错误日志文件的位置,如果没有给定 file_name 值,mysqld 使用错误日志名 host_name.err(host_name 为主机名) 并默认在参数 DATADIR(数据目录)指定的目录中写入日志文件。

二进制文件

server-id=101 log-bin[=file_name]

-mysql 5.7.3之后,必须指定sever-id参数,数字格式
-如果没有给出 file_name 值,默认名为主机名后面跟“-bin”。如果给出了文件名,但没有包 含路径,则文件默认被写入参数 DATADIR(数据目录)指定的目录。
-binlog为二进制格式,无法用vi打开,应使用mysqlbinlog工具查看

  • 日志清理
    “RESET MASTER”
    -将删除所有 BINLOG 日志,新日志编号从“000001” 开始。
 mysql> reset master;
Query OK, 0 rows affected (0.08 sec)

“PURGE MASTER LOGS TO 'XXXXX'”
-该命令将删除“XXXXX”编号之前 的所有日志。
“PURGE MASTER LOGS BEFORE 'yyyy-mm-dd hh24:mi:ss'”
-将删除日期为 “yyyy-mm-dd hh24:mi:ss”之前产生的所有日志。
expire_logs_days=3
-在my.cnf文件中配置改参数,自动删除#天前的日志

查询日志

查询日志记录了客户端的所有语句,而二进制日志不包含只查询数据的语句。

  • 启动mysql时指定

当用--log[=file_name]或-l [file_name]选项启动 mysqld(MySQL 服务器)时,查询日志开始被 记录。和其他日志一样,如果没有给定 file_name 的值,日志将写入参数 DATADIR(数据目 录)指定的路径下,默认文件名是 host_name.log。
设置log位置,Linux、OSX一般在 /tmp下。

  • 动态设置
mysql>set global general_log_file='/tmp/general.log';  
开启general log模式
mysql>set global general_log=on;  
关闭general log模式
mysql>set global general_log=off; 

慢日志

  • 启动mysql时指定

当用--log-slow-queries[=file_name]选项启动 mysqld(MySQL 服务器)时,慢查询日志开始被 记录。和前面几种日志一样,如果没有给定 file_name 的值,日志将写入参数 DATADIR(数 据目录)指定的路径下,默认文件名是 host_name-slow.log。

  • my.cnf文件中配置
slow_query_log = 1 # 1/0来选择是否启动慢日志
slow_query_log_file = slow.log
long_query_time = 2  # 查询时间超过2秒将会被记录
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 日志文件对于一个服务器来说是非常重要的,它记录着服务器的运行信息,许多操作都会写日到日志文件,通过日志文件可以监视...
    时待吾阅读 1,042评论 0 5
  • Mysql 有4种类型的日志:Error Log、Genaral Query Log、 Binary Log 和 ...
    人在码途阅读 16,500评论 2 11
  • 查看mysql日志: mysql> show global variables like '%log%'; mys...
    为了明天_加油阅读 657评论 0 0
  • MySQL日志类型简介 MySQL的日志大概可以分成三种,错误日志(error_log),查询日志(query_l...
    健谈的Boris阅读 5,076评论 0 2
  • 己巳之变的突破口为长城,而其中的关键人物却是袁崇焕。 袁崇焕(1584年—1630年),字元素,生于广东东莞石碣,...
    木夫009阅读 3,042评论 3 5