binlog开启和查看
1. 首先需要将mysql的binlog日志打开。默认是关闭的。
参考网址:Windows下Mysql5.7开启binlog步骤及注意事项(https://www.cnblogs.com/wangwust/p/6433453.html)
参考网址:https://blog.csdn.net/zjerryj/article/details/77152226
参考网址:mysql row日志格式下 查看binlog sql语句
参考网址:GTID binlog解析后导入无效
--》 show binary logs; ERROR 1381 (HY000): You are not using binary logging (表示未开启)
※注意: my.ini 存放在 C:\ProgramData\MySQL\MySQL Server 5.7 而非 Program文件目录下,注意ProgramData文件夹默认是隐藏不显示。
Windows下MySQL的配置文件是my.ini 在主目录下
# binlog node log_bin = mysql-bin binlog_format = ROWserver_id=1
注意有可能server_id已经存在,这个ID要唯一,不能和别的slave_id重复。
#修改UTF8
default-character-set=UTF8
character-set-server=UTF8
※ 注意不是UTF-8
由于binlog日志不会自动清除,因此需要手动设置过期删除,防止文件过大占用内存。
expire-logs-days=30
重启mysql57服务。
mysql服务添加到path中则直接在控制台:
--》C:\WINDOWS\system32>net stop mysql57
--》C:\WINDOWS\system32>net start mysql57
此时在mysql Command Line Client:
--> show binary logs; 可查看binlog日志
--> show variables like '%log_bin%'; 这个亦可说明log是否有开启
--> set global expire_logs_days=30; //防止binlog积压,占用内存,设置失效30天
--> show variables like '%expire_logs_days%'; //查看
生成的binlog日志默认就在log_bin 给的文件位置下,如果没有路径就是my.ini对应的data文件夹下。
log_bin = D:\log\mysql\mysql-bin
※注意:对应的文件夹要存在,否则无法启动。
mysql-bin.000001 mysql-bin.index
查看:
--》show binlog events; //获取第一个binlog的日志
--》 show binlog events in 'mysql-bin.000002'; //获取指定的binlog日志
--》 show master status\G; //查看当前正在写入的binlog日志
--》 show binlog events from 219; //根据pos获取日志
在cmd下使用mysqlbinlog转化binlog二进制日志还原为sql:
-》mysqlbinlog -d [schemal] --start-datetime="2018-10-15 8:10:01" --stop-datetime="2018-10-15 18:10:00" d:\log\mysql\mysql-bin.000001 > d:\log\insert.sql
这样就可以还原之前被处理掉的数据。
如果查看到的sql文件中并不能直接看到insert或update,delete语句,而有base64加码的数据,则需要在导出sql时做转化。
-》 mysqlbinlog --base64-output=decode-rows -v -d [schemal] --start-datetime="2018-10-15 8:10:01" --stop-datetime="2018-10-15 18:10:00" d:\log\mysql\mysql-bin.000002 > d:\log\insert2.sql
也可以使用position代替date。
--start-position
--stop-position
可以直接执行binlog进行还原:
--》mysqlbinlog -d [schema] --start-datetime="2018-10-15 8:10:01" --stop-datetime="2018-10-15 18:10:00" d:\log\mysql\mysql-bin.000004 |mysql -u root -p
我们可以直接将还原的sql直接执行。
--》mysql source D:\log\insert4.sql
※ 执行后发现数据并未同步到数据库中,提示信息正常。
打开 insert4.sql发现里面有好多SET @@SESSION.GTID_NEXT= [序列码]
此内容为事务控制用的信息,但这些信息已经被用过了,被记入到Executed_Gtid_Set中,因此执行被跳过。
在导出sql的语句中添加 --skip-gtids=true
转载于:https://www.cnblogs.com/DennyZhao/p/9789809.html
binlog开启和查看相关推荐
- mysql的binlog开启方式,查看方式.三种binlog模式介绍.以及使用binlog恢复数据.删除binlog
判断MySQL是否已经开启binlog SHOW VARIABLES LIKE 'log_bin'; 查看MySQL的binlog模式 show global variables like " ...
- MySQL二进制日志(binlog)开启、查看、截取
mysql二进制日志记录了数据库所有变更类的操作日志主要有2个作用: MySQL主从配置 数据恢复 参数介绍 server_id=3 log_bin=/data/binlog/mysql-bin: / ...
- mysql sql_log_bin怎么看_MySQL数据库之开启和查看mysql的bin-log日志
本文主要向大家介绍了MySQL数据库之开启和查看mysql的bin-log日志 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. [root@VM_0_7_centos data] ...
- phpstudy mysql恢复数据_MySQL_详解MySQL误操作后怎样进行数据恢复,一、开启binlog。
首先查看binlo - phpStudy...
详解MySQL误操作后怎样进行数据恢复 一.开启binlog. 首先查看binlog是否开启 mysql> show variables like "log_bin"; +- ...
- binlog是什么?能做什么?Window下怎么开启binlog?怎么查看binlog日志?利用binlog日志恢复数据
binlog是什么?能做什么?Window下怎么开启binlog?怎么查看binlog日志?利用binlog日志恢复数据 windows如何开启Binlog日志 文档来源 ##1.什么是Binlog日 ...
- mysql修改binlog 位置_查看mysql 的binlog日志存放的位置(转)
首先查看配置文件中是否启用Binlog日志 [Linux ~]#vim /etc/my.cnf my.cnf内容: log-bin = mysqlbin #默认配置 一般放在/var/lib/mysq ...
- mysql二进制日志开启方法_mysql中如何开启binlog?开启二进制日志文件?binary log?
需求描述: 开启mysql的binlog即binary log日志功能,在此记录下. 版本描述: mysql版本:5.7.21-log 操作过程: 1.修改my.cnf并且将以下参数加入其中,重启my ...
- mysql数据库log-bin介绍,开启,查看
一.binlog日志介绍 1)什么是binlog binlog日志用于记录所有更新了数据或者已经潜在更新了数据(例如,没有匹配任何行的一个DELETE)的所有语句.语句以"事件"的 ...
- MySQL的binlog数据如何查看
binlog介绍 binlog,即二进制日志,它记录了数据库上的所有改变. 改变数据库的SQL语句执行结束时,将在binlog的末尾写入一条记录,同时通知语句解析器,语句执行完毕. binlog格式 ...
最新文章
- Debussy的安装
- 初一七年级计算机信息全册教案,初一信息技术教案全一册
- Qt元对象QMetaObject的indexOfSlot等函数获取类方法注意问题
- opencv摄像头速度慢_c++ - 从OpenCV 3切换到OpenCV 4会导致网络摄像头以最高5帧的速度记录,而不是通常的30帧。 - SO中文参考 - www.soinside.com...
- Jni C 与 Java 互调
- git学习(五)分支操作和解决冲突
- 【iOS】iOS8 与以前版本比较,添加的新特性
- Kubernetes基础:Pod中的Pause容器
- android studio sdk samples,qcloud-sdk-android-samples
- Win10 安装Docker 杂记
- [Other]规范的邮件签名格式及HTML代码
- SAP ALV报表开发实战案例(三)
- MySQL数据库————MVCC
- mysql配置jdbc
- 推荐一个界面库:RingSDK
- 如何找到联盟营销人员:招募合适会员的10个方法
- 2014春招CVTE面试经历
- CentOS7配置nexus开机自启动
- 【Python】近似熵,样本熵,模糊熵计算高效版
- 学习笔记(07):OmniPlan项目管理就该这样学-使用时间线记录分配情况