学习笔记(04):MySQL数据库运维与管理-02-二进制日志及其管理

立即学习:https://edu.csdn.net/course/play/10084/221708?utm_source=blogtoedu

二进制日志

二进制日志包含所有描述数据库更改的事件(event),如表创建操作或更改表数据。不匹配任何行的DELETE。还包含有关每个语句获取更新数据的时间长度的信息。用于恢复和主从复制。

二进制日志文件作用目的

   1、数据库恢复

   2、主从架构复制

二进制日志文件位置及组成

  1、缺省未开启,缺省文件名为host_name-bin

  2、设置log_bin来设定位置以及文件名,缺省位于datadir目录

  3、由文件名及索引文件组成,如下

mysqlbin.index mysqlbin.000001 mysqlbin.000002

 

开启二进制日志

shell > vim /etc/my.cnf

log_bin=/var/lib/mysql/mysqlbin  ##移除关闭日志

server_id=1   ##需要增加此行,否则Bug#11763963

 

show variables like 'log_bin%';

log_bin   ON

 

二进制日志的切换

切换目的:防止二级制日志文件过大,恢复时方便快速寻找对应二进制文件

切换方式:自动切换,手工切换

mysql> flush binary log;

shell> mysqladmin flush-logs

 

二进制日志的查看

mysql> show {binary | master } logs

mysql> show binlog events

            [IN 'log_name']  [FROM pos] [LIMIT [offset,] row_count]

shell> strings /dir/binlog_name

shell> mysqlbinlog /dir/binlog_name

 

二进制日志的删除

--删除指定的二进制日志

PURGE {BINARY | MASTER}LOGS

{TO ‘log_name’ | BEFORE datatime_expr}

examples:

purge binary logs to 'mysql-bin.010';

PURGE BINARY LOGS BEFORE '2008-04-02 22:46:26';

 

--删除所有的二进制日志

RESET MASTER;

 

二进制日志自动清除

--修改日志保留期限参数

set global expire_logs_days=10;

 

二进制日志的暂停

--会话级别开启及关闭二进制日志

set sql_log_bin=0;

set sql_log_bin=1;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七七powerful

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值