什么是binlog日志
1)二进制日志
2)MySQL服务日志文件的一种
3)记录除查询之外的所有SQL命令
4)可用于数据备份和恢复
5)配置mysql主从同步的必要条件
##########################
启用日志
| 配置项 | 用途 |
|---|---|
| server_id=数字 | 指定id值(1-255) |
| log_bin[=目录名/文件名] | 启动binlog日志 |
| max_binlig_size=数值m | 指定日志文件容量,1G |
vim /etc/my.cof
[mysql]
log_bin //启动binlog日志(=/文件目录/名称(指定日志文件及名称))
例子:log_bin=/mylog/llh(mkdir /mylog >> chown mysql /mylog >> 重启服务)
server_id //指定id号
| binlong | 相关文件 |
|---|---|
| 主机名-bin.index | 索引文件 |
| 主机名-bin.000001 | 第1个二进制日志 |
| 主机名-bin.000002 | 第2个二进制日志 |
###############################################################################
| 日志 | 常用命令 |
|---|---|
| show master status; | 查看日志信息 |
| flush logs; | 刷新日志 |
| system 命令 | 使用linux命令 |
| purge master logs to “要删除的日志” | 删除日志 |
清理日志
删除指定编号之前的binlog日志文件:purge master logs to "binlog文件名"
删除所有binlog日志,重建新日志:reset master;
###############################################################################
分析日志
查看日志当前记录格式:show variables like "binlog_format"
修改日志记录格式:vim /etc/my.cnf >> [mysqld] >> binlog_format="名称"
三种记录方式:statement(报表模式)row(行模式)mixed(混合模式)
查看日志内容:mysqlbinlog [选项] binlog日志文件名
| 选项 | 用途 |
|---|---|
| –start-datetime=“yyyy-mm-dd hh:mm:ss” 目录 | 起始时间 |
| –stop-datetime=“yyyy-mm-dd hh:mm:ss” 目录 | 结束时间 |
| –start-position=数字 | 起始偏移量 |
| –stop-position=数字 | 结束偏移量 |
###############################################################################
恢复数据
基本思路:利用mysqlbinlog提取历史SQL操作,通过管道交给mysql命令执行
命令格式:mysqlbinlog 日志文件 | mysql -uroot -p密码
本文深入解析MySQL的Binlog日志,介绍其作用于数据备份、恢复及主从同步的重要性。涵盖Binlog的配置方法、日志文件管理、日志分析与数据恢复流程,为数据库管理员提供实用指南。
956

被折叠的 条评论
为什么被折叠?



