开启MySQL的binlog日志

1.判断MySQL是否已经开启binlog

sql 复制代码
SHOW VARIABLES LIKE 'log_bin';

查看MySQL的binlog模式

sql 复制代码
show global variables like "binlog%";

几个关于binlog常用的命令

sql 复制代码
#查看日志开启状态 
show variables like 'log_%';
#查看所有binlog日志列表
show master logs;
#查看最新一个binlog日志的编号名称,及其最后一个操作事件结束点 
show master status;
#刷新log日志,立刻产生一个新编号的binlog日志文件,跟重启一个效果 
flush logs;
#清空所有binlog日志 
reset master;

2.开启MySQL的binlog日志

binlog 就是binary log,二进制日志文件,这个文件记录了mysql所有的dml操作。通过binlog日志我们可以做数据恢复,做主住复制和主从复制等等。对于开发者可能对binlog并不怎么关注,但是对于运维或者架构人员来讲是非常重要的。

my.ini主配置文件中直接添加三行

sql 复制代码
#打开binlog日志
log_bin=ON
#binlog日志的基本文件名,后面会追加标识来表示每一个文件
log_bin_basename=/var/lib/mysql/mysql-bin
#指定的是binlog文件的索引文件,这个文件管理了所有的binlog文件的目录
log_bin_index=/var/lib/mysql/mysql-bin.index

低版本的mysql可以直接添加这句

sql 复制代码
log_bin=ON
log-bin=C:\Program Files (x86)/MySQL/MySQL Server 5.0/log/mysql-bin.log

这些配置完毕之后对于5.7以下版本应该是可以了,但是我们这个时候用的如果是5.7及以上版本的话,重启mysql服务会报错。这个时候我们必须还要指定一个参数

sql 复制代码
server-id=123456

随机指定一个不能和其他集群中机器重名的字符串,如果只有一台机器,那就可以随便指定了

有了上述的配置之后,我们就可以重新启动我们的mysql了

sql 复制代码
service mysqld restart

启动成功之后,我们可以登陆查看我们的配置是否起作用

sql 复制代码
show variables like '%log_%'  

3.mysql查看binlog

查看总共有几个binlog文件

sql 复制代码
show master logs;
sql 复制代码
show binlog events in 'mysql-bin.000001' limit 10
相关推荐
vvvae12345 小时前
分布式数据库
数据库
雪域迷影5 小时前
PostgreSQL Docker Error – 5432: 地址已被占用
数据库·docker·postgresql
bug菌¹6 小时前
滚雪球学Oracle[4.2讲]:PL/SQL基础语法
数据库·oracle
逸巽散人6 小时前
SQL基础教程
数据库·sql·oracle
月空MoonSky6 小时前
Oracle中TRUNC()函数详解
数据库·sql·oracle
momo小菜pa6 小时前
【MySQL 06】表的增删查改
数据库·mysql
向上的车轮7 小时前
Django学习笔记二:数据库操作详解
数据库·django
编程老船长7 小时前
第26章 Java操作Mongodb实现数据持久化
数据库·后端·mongodb
全栈师8 小时前
SQL Server中关于个性化需求批量删除表的做法
数据库·oracle
Data 3178 小时前
Hive数仓操作(十七)
大数据·数据库·数据仓库·hive·hadoop