MYSQL日志管理

MySQL日志管理

在数据库保存数据时,有时候不可避免会出现数据丢失或者被破坏,这样情况下,我们必须保证数据的安全性和完整性,就需要使用日志来查看或者恢复数据;

MySQL有几个不同的日志文件,可以帮助你找出mysqld内部发生的事情:

错误日志:记录启动、运行或停止时出现的问题

查询日志:记录建立的客户端连接和执行的语句

二进制日志:记录所有更改数据的语句 主要用于复制和即时点恢复

慢日志:记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询

事务日志:记录InnoDB等支持事务的存储引擎执行事务时产生的日志

1.查看错误日志
SHOW GLOBAL VARIABLES LIKE ‘%log_error%’;
在这里插入图片描述
SHOW GLOBAL VARIABLES LIKE ‘%log_warnings%’;
在这里插入图片描述
2.通用查询日志
启动开关:general_log={ON|OFF}
日志文件变量:general_log_file[=/PATH/TO/file]
全局日志开关:log={ON|OFF} 该开关打开后,所有日志都会被启用
记录类型:log_output={TABLE|FILE|NONE}:

要查询日志需要至少配置general_log=ON,log_output={TABLE|FILE}

general_log_file如果没有指定,默认名是host_name.log。
在这里插入图片描述
在这里插入图片描述
3.慢查询日志
SET GLOBAL slow_query_log=ON;
SHOW GLOBAL VARIABLES LIKE ‘%slow_query_log%’;
在这里插入图片描述
SHOW GLOBAL VARIABLES LIKE ‘long_query_time’;
在这里插入图片描述
4.二进制日志
先在my.cnf里添加log_bin和server_id=1
在这里插入图片描述
然后就可以看到日志已经打开
在这里插入图片描述
查看有哪些二进制日志文件:mysql> SHOW BINARY LOGS
在这里插入图片描述
查看当前正在使用的是哪一个二进制日志文件:mysql> SHOW MASTER STATUS;
在这里插入图片描述
查看二进制日志内容:mysql> SHOW BINLOG EVENTS IN ‘mybinlog.000001’
在这里插入图片描述
##该语句还可以加上Position(位置),指定显示从哪个Position(位置)开始:mysql> SHOW BINLOG EVENTS IN ‘mybinlog.000001’ FROM 203;
删除二进制日志文件
PURGE { BINARY | MASTER } LOGS { TO ‘log_name’ |BEFORE datetime_expr }

MySQL主从复制
1 配置my.cnf
在这里插入图片描述
创建用来传输数据的账号
create user ‘rep’@‘192.168.182.%’ identified by ‘123456’;
给这个账号赋予复制权限
grant replication slave on . to ‘rep’@‘192.168.182.%’;

在这里插入图片描述
flush privileges; 刷新权限
从服务器配置
server-id=2 #设置server-id,必须唯一
在这里插入图片描述
进入库中执行
在这里插入图片描述
#启动从库同步开关
start slave;
#检查状态
show slave status\G
在这里插入图片描述
启动从库,开始复制
start slave;
停止从库复制
stop slave;
重启从库复制
reset slave;
主服务器强制同步数据(从服务器因为某些原因停止了一段时间)
flush master;
查看主服务器状态
show master status\G
查看从服务器状态
show slave status\G

出现从服务器上的master_log_pos 或者 master_log_file和主服务器上的不一致
然后通过对比再去修改从服务器上面连接主服务器的信息
change master to master_log_pos=数值, master_log_file=文件
如:

CHANGE MASTER TO MASTER_LOG_FILE=‘mysql-bin.000003’, MASTER_LOG_POS=0;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值