mysql学习笔记之十五(日志管理)
来源:互联网 发布:装修监理必知 编辑:程序博客网 时间:2024/05/01 07:45
日志:记录数据库的运行情况,日常操作,错误信息等 mysql日志:二进制日志,错误日志,和查询日志。 二进制日志: 通过二进制形式记录数据库的各种操作,但是却不记录查询语句 错误日志 该日志会记录mysql服务器启动,关闭和运行时出错等信息 查询日志 该类型日志会分为两类,通用查询日志和慢查询日志。其中前者会记录用户登录和记录查询语句;后者会记录执行时间超过指定时间的各种操作 日志操作时数据库维护中最重要的手段之一,通过日志文件,不仅可以通过日志文件爱你来查看出错的原因,而且还可以通过日志文件爱你进行数据恢复。 默认情况下,mysql软件只会启动错误日志文件,而其他日志文件则需要手动启动才可以被启动。操作二进制日志 启动日志 如果mysql数据库意外停止,可以通过二进制文件来查看用户执行了哪些操作,对数据库服务器文件做了哪些修改,然后根据二进制日志文件中的记录来恢复数据库服务器。 默认情况下,二进制是关闭的。 通过配置my.ini来实现,具体内容: [mysqld] log-bin[=dir\[filename]] 这个添加不要在my.ini文件头添加,要在中间添加,如下位置: log-slow-queries=mysql-slow.log log-error=mysql.err log-bin=mysql-bin 添加错误有可能导致mysql无法启动。 dir用来指定二进制文件的存储路径;filename用来指定二进制文件的文件名,具体格式为filename.number,其中number的格式为000001、000002...等 在具体启动二进制文件时,如果没有设置参数dir和filename,二进制日志文件将使用默认名字主机名-bin.number,保存在默认目录--数据文件里。 每次重启mysql服务器都会生成一个新的二进制日志文件,这些日志文件的文件名里,filename部分不会改变,但是number的值会不断增加。 filename.index:二进制文件列表。 这个文件会自动添加 查看日志 mysqlbinlog filename.number (这个命令总是执行错误。) 查看发现,二进制日志会记录用户对服务器做了哪些操作,但不包括查询 只查看第一个binlog文件的内容 show binlog events; 查看指定binlog文件的内容 show binlog events in 'mysql-bin.000002'; 查看当前正在写入的binlog文件 show master status\G 获取binlog文件列表 show binary logs; 停止日志 如果再my.ini配置文件中添加了log-bin选项,那么mysql会一直启动二进制日志功能。 如果想停止,只需要删除log-bin选项即可 一种特殊情况,一些操作需要记录在日志中,而一些操作不需要,那么可以使用set命令 如: set SQL_LOG_BIN=0 set sql_log_bin=1 只有拥有super权限的用户,才可以执行set语句 删除日志 reset master 删除所有的二进制文件 purge master logs to filename.number 删除小于编号number的所有二禁止文件 purge master logs before 'yyyy-mm-dd hh:MM:ss' 删除指定时间之前的二进制日志文件操作错误日志 默认是开启的。名称格式一般为hostname.err,保存在数据库数据文件里 配置文件my.ini中的error-bin[=dir\[filename]]可以自定义错误日志的保存路径 启动 如果没有开启,或者关闭了,那么可以在配置文件my.ini里启动, [mysqld] error-bin=[dir\[filename]] 查看 错误日志是以文本文件的形式存储的,所以可以直接打开查看 停止 直接把配置文件里的对应选项注释掉,然后重启 删除 flush logs 执行上述命令,mysql首先会创建一个新的错误日志,然后将旧的错误日志更名为filename.err-old。如果管理员认为不需要保存旧的日志,则可以直接删除操作查询日志 通用查询日志 记录用户关于mysql服务器的所有操作,包含mysql服务器的启动和关闭信息、更新数据记录sql语句和查询数据记录sql语句。 慢查询日志 用来记录执行时间超过指定时间的查询语句 通过该类型日志,可以查找到哪些查询语句的执行效率低,从而进行优化 启动 默认是关闭的 配置my.ini [mysqld] log [=dir\[filename]] 通用查询日志文件的后缀为*.log log-slow-queries[=dir\[filename]] long_query_time=n 慢查询日志文件的后缀为*slow.log 如果没有设置long_query_time,默认为10秒。 我的慢查询日志默认是开启的。 查看 如果想了解用户最近的操作,可以查看通用查询日志; 如果想了解哪些操作超时,可以查看慢查询日志 都是文本文件,可以直接打开。 停止 直接把配置文件里的对应选项注释掉,然后重启 删除 mysqladmin -u root -p flush -logs 执行不成功。
0 0
- mysql学习笔记之十五(日志管理)
- MySQL学习笔记之十五 更新日志文件恢复数据
- MySQL 学习<十五> 日志
- Mysql学习之--Mysql二进制日志管理
- mysql 学习记录(二十五)--mysql日志
- MySQL学习笔记十:日志管理
- MySQL学习笔记(十五)存储过程
- MYSQL学习笔记(十五)数据插入
- MySQL点滴学习之日志管理
- MySQL学习笔记之二十五 撤销用户和授权
- Linux学习日志(十五)
- 黑马程序员——黑马学习日志之二十五 交通灯管理系统
- 学习笔记(十五)
- MySQl Study学习之--MySQl二进制日志管理
- MySQl Study学习之--MySQl二进制日志管理
- Oracle学习(十五)之用户配置文件及用户管理
- MYSQL学习笔记(二十五)数据库维护
- 我的MYSQL学习心得(十五) 日志
- ruby 異常處理:ensure
- 初步了解一下什麼是ruby
- Link in the HTML--Head first into HTML
- 指针学习九
- 背包问题
- mysql学习笔记之十五(日志管理)
- 面试题44:扑克牌的顺子
- Ruby 中一些百分號(%)的用法小結
- rails上傳圖片代碼實例
- VBA第6课 循环判断数据
- APM半实物仿真
- mysql学习笔记之十六(数据库维护)
- Ruby 中$開頭的全局變數、內部變數、隱藏變數介紹
- 数组-13. 螺旋方阵(20)