MySQL日志的类型和实现方法_mysql的日志类型及作用
mysql的日志类型及作用
当服务起不来或者报错的时候,我们第一时间想到的就是日志,日志这个东西记载了许多重要的信息,有利于我们排除故障。当然,mysql也有日志。
先来说说,mysql日志的作用,当数据库遭到意外损坏,服务起不来等等,可以通过日志文件来拍错。
还可以利用日志文件来进行数据恢复。
一、日志的分类
1、错误日志:记录了mysql服务的启动,关闭和运行时发生的错误;
2、通用查询日志:记录用户的所有操作,包括启动、关闭服务,插入、查询等语句;
3、二进制日志:以二进制的形式记录了数据库中的操作,但不记录查询语句;
4、慢日志:记录了mysql 所有查询超时的语句
二、日志设置1、除了二进制日志,其他都是文本文件2、日志文件通常存储在Mysql数据目录下3、默认只启动了错误日志功能,其他需要手工启动4、但启动日志功能会降低Mysql的执行速度,因为一条操作写进日志中是要花时间的
二进制日志
以二进制文件的形式记录了数据库的操作,但是不记录查询语句,也叫变更日志
启动与设置二进制日志,在mysql配置文件中添加[root@localhost data]# cat /etc/my.cnf
log-bin = /data/mysql-bin
启动与设置二进制日志:在Mysql的配置文件中,log-bin=DIR/filenameDIR是存放二进制日志的目录;每启动一次Mysql,该目录下就会生成一个filename.00000x的文件;目录下还有一个filename.index的文件,用于存储所有二进制文件清单;如果我们没有设置DIR和filename,则默认在数据目录下以hostname-bin.00000x命名
去到/data目录下查看是否有文件生成
[root@localhost ~]# cd /data/
[root@localhost data]# ls
aria_log.00000001 ibdata1 ib_logfile1 mysql-bin.000001 performance_schema xhk
aria_log_control ib_logfile0 mysql mysql-bin.index test
临时停止与启动二进制日志MariaDB [(none)]> set sql_log_bin=0; 停止
MariaDB [(none)]> set sql_log_bin=1; 启动
注意:二进制日志文件与数据库数据文件最好不要放在同一块硬盘上,如果存放数据文件的硬盘坏了,可以用另一块硬盘的二进制日志来恢复数据
查看二进制日志
[root@localhost data]# mysqlbinlog mysql-bin.000001
删除二进制日志
删除所有MariaDB [(none)]> reset master;
删除00004之前的所有MariaDB [(none)]> purge master logs to 'mysql-bin.000004';
删除指定日期时间之前的所有MariaDB [(none)]> purge master logs to '2016-08-10 15:00:00';
使用二进制日志还原数据库
[root@localhost data]# mysqlbinlog mysql-bin.000001 | mysql -u root -p
[root@localhost data]# mysqlbinlog mysql-bin.000002 | mysql -u root -p
这条命令可以理解为:使用mysqlbinlog读取二进制日志文件然后使用mysql命令还原到数据库中
注意还原时必须是编号小的先还原
还可以制定你想恢复的时间点
[root@localhost data]# mysqlbinlog --start-position="213" sstop-position="456" mysql-bin.000001 | mysql -u root -p
数值为二进制文件中的pos号
========================================================================
错误日志
主要用于记录Mysql服务的开启、关闭和错误信息,若服务启动不成功第一件事应该就是去看这个错误日志
错误日志是默认开启的,且错误日志无法被关闭
设置错误日志:在配置文件中,log-error=DIR/filename[root@localhost ~]# cat /etc/my.cnf
log-error = /data/mysql-error.log
======================================================================
通用查询日志
用来记录用户的所有操作:启动和关闭mysql、更新语句、查询语句
启用和设置通用查询日志:配置文件中,log=DIR/filename
============================================================================
慢查询日志
记录执行时间超过指定时间的执行语句
启动和设置慢查询日志:在配置文件中
log-slow-queries=DIR/filename
long_query_time=n #设置时间为n秒,默认为10s
删除日志
mysqladmin -u root -p flush-logs
MySQL日志的类型和实现方法_mysql的日志类型及作用相关推荐
- 利用mysql上传木马_通过Mysql语句生成后门木马的方法_MySQL
通过Mysql 的语句生成后门木马的方法! SELECT * FROM `vbb_strikes` WHERE 1 union select 2,3,0x3C3F7068702073797374656 ...
- mysql上传木马_通过Mysql语句生成后门木马的方法_MySQL
通过Mysql 的语句生成后门木马的方法! SELECT * FROM `vbb_strikes` WHERE 1 union select 2,3,0x3C3F7068702073797374656 ...
- mysql远程连接数据库的二种方法_mysql 远程连接数据库的二种方法
mysql 远程连接数据库的二种方法 一.连接远程数据库: 1.显示密码 如:MySQL 连接远程数据库(192.168.5.116),端口"3306",用户名为"roo ...
- mysql锁表问题的解决方法_MYSQL锁表问题的解决方法
本文实例讲述了MYSQL锁表问题的解决方法.分享给大家供大家参考,具体如下: 很多时候!一不小心就锁表!这里讲解决锁表终极方法! 案例一 mysql>show processlist; 参看sq ...
- mysql服务器的线程数查看方法_MySQL服务器线程数的查看方法详解
本文实例讲述了MySQL服务器线程数的查看方法.,具体如下: mysql重启命令: /etc/init.d/mysql restart MySQL服务器的线程数需要在一个合理的范围之内,这样才能保证M ...
- mysql死锁的原因及解决方法_mysql死锁的原因及解决方法
大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答. mysql死锁的原因及解决方法如下: 1.一个用户A访问表A(锁住了表A),然后又访问表B:另一个用户B 访问表B(锁住了表B), ...
- xampp修改mysql密码_XAMPP环境下mysql的root用户密码修改方法_MySQL
XAMPP 最近有客户忘记了mysql的root用户密码,使用mysqld_safe无法正常启动mysql,也没有办法按照mysql manual中的方法修改root密码. 网页教学网站长注:今天有学 ...
- mysql int类型需要指定长度_mysql中整数类型后面的数字,是不是指定这个字段的长度?比如int(11),11代表11个字节吗?...
原先对mysql不太理解,但也没有报错.但理解的不够深入.这次补上. 原来以为int(11)是指11个字节,int(10)就是10个字节.我错了. http://zhidao.baidu.com/li ...
- mysql中索引类型索引方法_MYSQL索引的类型和索引的方式
索引的类型: normal:表示普通索引 unique:表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用作索引时,可设置为unique full textl: 表示 全文搜索的索 ...
最新文章
- WPF的Timer控件的使用
- boa支持https_Boa: 在 Node.js 中使用 Python
- java 浮点数精度_Java中浮点数精度问题
- 手机号码、获得当前时间,下拉框,填写限制
- OO第三次博客总结作业
- Python 简单网页爬虫学习
- 网课老师凭什么年薪200万?
- HDU2046 骨牌铺方格【递推】
- Visual Studio配置(4):项目属性页-VC++目录
- Xposed模拟位置
- 查看已有的docker镜像latest的具体版本号
- 日记app(1.0)进展报告
- native react 折线图_【详解】纯 React Native 代码自定义折线图组件(译)
- 如何使用JavaScript导入和导出Excel文件
- 迅时MX8(FXO)8口语音网关连接Elastix+服务器配置
- iOS 微信分享整理 - 自定义分享菜单
- c#语言编写成绩代码是,在C#中的分数
- matlab产生时间数组以月为单位_MATLAB的时间与日期
- Odoo丨如何在Odoo中修改HTML编辑工具栏?
- 虐我千百遍之NS3安装
热门文章
- mysql5.7.11无法启动_macos - mysql 5.7.11 启动报错
- MySQL的reset master
- vim golang 插件
- 《Spring参考手册》中定义了以下几个AOP的重要概念
- 闲话WPF之十八(WPF中的资源 [4] )
- 年薪 37 万+,挪威科技大学(NTNU)招募博士,利用 ML 和 AI 进行钢桥结构健康监测和损伤检测...
- “算法”的茧房,如何破局?
- 致盲目标检测算法,阿里清华发起 “对抗攻击” 挑战赛!
- CVPR 2020丨MAML-Tracker: 用目标检测思路做目标跟踪? 小样本即可得高准确率
- 可怕!微软AI:一张面部照片一段音频,完美生成头像演讲视频