mysql-二进制日志-理解与应用
来源:互联网 发布:mac虚拟机安装office 编辑:程序博客网 时间:2024/06/11 09:01
mysql-二进制日志-理解与应用
1 二进制日志的两大作用
用于恢复;
用于复制;
2 二进制日志的开启与关闭
配置以下选项:
log_bin[=on|file_name]
server_id=1
3 其他配置选项
3.1 max_binlog_size
设置单个二进制日志文件的最大值,默认值为1G
3.2 binlog_cache_size
设置二进制日志的缓冲大小;这个值是基于session的,不能设的太大;但也不能设的太小,否则会使用临时文件写二进制日志;
设置依据:查看status中的binlog_cache_use和binlog_cache_disk_use
show global status like 'binlog_cache%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| Binlog_cache_disk_use | 0 |
| Binlog_cache_use | 34 |
+-----------------------+-------+
当Binlog_cache_disk_use的比例较大时,说明binlog_cache_size设置的有点小了;
3.3 sync_binlog
设置二进制日志同步到磁盘的方式,可以理解为缓冲写;取值为n,表示每写缓冲多少次就同步到磁盘;
0 默认值,表示不使用缓冲,这个会对性能稍有影响,在主服务器上或为了高可用性,建议设为0
1 表示采用同步写磁盘的方式来写二进制日志,不使用操作系统的缓冲机制;可能发生的问题,当事务commit之前,二进制日志会写入磁盘,但未提交时发生宕机,则下次启动时该事务不能被回滚(因为日志已记录了该事务记录);解决方法,同时设置innodb_support_xa=1
3.4 binlog-do-db和binlog-ignore-db
设置需要写入或忽略写入哪些库的日志
3.5 log-slave-update
设置从服务器是否写入自己的二进制日志;
3.6 binlog_format
设置二进制文件的格式
取值:statement, row, mixed
mixed模式下,默认采用statement格式,在一些特殊情况下会自动使用row格式;建议设置为mixed模式,保证复制的实时性和正确性;
row模式,虽然对于复制是最完整的模式,但带来的问题是:对一些影响行数较多的操作,会引起二进制日志文件的快速增长,从而对复制的网络传输有影响;
1 二进制日志的两大作用
用于恢复;
用于复制;
2 二进制日志的开启与关闭
配置以下选项:
log_bin[=on|file_name]
server_id=1
3 其他配置选项
3.1 max_binlog_size
设置单个二进制日志文件的最大值,默认值为1G
3.2 binlog_cache_size
设置二进制日志的缓冲大小;这个值是基于session的,不能设的太大;但也不能设的太小,否则会使用临时文件写二进制日志;
设置依据:查看status中的binlog_cache_use和binlog_cache_disk_use
show global status like 'binlog_cache%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| Binlog_cache_disk_use | 0 |
| Binlog_cache_use | 34 |
+-----------------------+-------+
当Binlog_cache_disk_use的比例较大时,说明binlog_cache_size设置的有点小了;
3.3 sync_binlog
设置二进制日志同步到磁盘的方式,可以理解为缓冲写;取值为n,表示每写缓冲多少次就同步到磁盘;
0 默认值,表示不使用缓冲,这个会对性能稍有影响,在主服务器上或为了高可用性,建议设为0
1 表示采用同步写磁盘的方式来写二进制日志,不使用操作系统的缓冲机制;可能发生的问题,当事务commit之前,二进制日志会写入磁盘,但未提交时发生宕机,则下次启动时该事务不能被回滚(因为日志已记录了该事务记录);解决方法,同时设置innodb_support_xa=1
3.4 binlog-do-db和binlog-ignore-db
设置需要写入或忽略写入哪些库的日志
3.5 log-slave-update
设置从服务器是否写入自己的二进制日志;
3.6 binlog_format
设置二进制文件的格式
取值:statement, row, mixed
mixed模式下,默认采用statement格式,在一些特殊情况下会自动使用row格式;建议设置为mixed模式,保证复制的实时性和正确性;
row模式,虽然对于复制是最完整的模式,但带来的问题是:对一些影响行数较多的操作,会引起二进制日志文件的快速增长,从而对复制的网络传输有影响;
- mysql-二进制日志-理解与应用
- 浅析MySql二进制日志的应用
- 浅析MySql二进制日志的应用
- 浅析MySql二进制日志的应用
- 浅析MySql二进制日志的应用
- 浅析MySql二进制日志的应用
- 浅析MySql二进制日志的应用
- 浅析MySql二进制日志的应用
- mysql日志-二进制日志
- MySQL日志——配置与查看二进制日志
- Mysql 重做日志及与二进制日志的区别
- 清除 MySQL 二进制日志
- mysql 二进制日志文件
- mysql 二进制日志
- 浅析MySQL二进制日志
- 查看Mysql二进制日志
- mysql二进制日志分析
- MySQL复制 二进制日志
- 七夕,你拿什么拯救你的爱人?
- Java与C底层数据类型转换
- Spring JDBC最佳实践(3)
- 我怀念的是
- 收集的一些软件工具
- mysql-二进制日志-理解与应用
- 目标检测的图像特征提取之(一)HOG特征
- 从官方原生ROM(system.img)定制update.zip刷机包
- NSDictionary类使用
- SQL SERVER2012 新增的14个内置函数
- 关于Socket粘包问题
- video4linux(v4l)使用摄像头的实例基础教程与体会
- socket实现图片上传
- Which I/O Strategy Should I Use?