概念
MySQL 的二进制日志 binlog
可以说是 MySQL 最重要的日志,它记录了所有的 DDL 和 DML 语句(除了数据查询语句select、show等),以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型
的。binlog 的主要目的是复制和恢复。
作用
- MySQL主从复制:MySQL Replication在Master端开启binlog,Master把它的二进制日志传递给slaves来达到master-slave数据一致的目的
- 数据恢复:通过使用 mysqlbinlog工具来使恢复数据
启用binlog
先进入mysql,查看是否启用
mysql> show variables like 'log_bin';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin | OFF |
默认没有配置,修改配置文件,位置在/etc/my.cnf
加入如下设置
log-bin=/var/lib/mysql/mysql-bin
server-id=123454
重启mysql服务,再次查询
service mysqld stop
service mysqld start
mysql> show variables like 'log_bin';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin | ON |
+---------------+-------+
binlog用途
1 实现读写分离
2 数据恢复
3数据一致性