需求描述:

  开启mysql的binlog即binary log日志功能,在此记录下.

版本描述:

  •   mysql版本:5.7.21-log

操作过程:

1.修改my.cnf并且将以下参数加入其中,重启mysql实例

server-id=11           #由于bug,所以需要设置该参数.否则无法启动mysql实例
log-bin = mysql-bin #其中mysql-bin代表的是basename就是生成二进制日志文件的前缀部分,默认的位置在datadir目录下,也可以设置为其他的路径

2.查看binlog相关系统参数值

mysql> show variables where variable_name in ('log_bin','log_bin_basename','log_bin_index');
+------------------+-----------------------------+
| Variable_name | Value |
+------------------+-----------------------------+
| log_bin | ON |
| log_bin_basename | /mysql/data/mysql-bin |
| log_bin_index | /mysql/data/mysql-bin.index |
+------------------+-----------------------------+
3 rows in set (0.00 sec)

备注:在my.cnf中设置好log-bin之后,log_bin自动设置为ON,basename设置为mysql-bin,index文件也自动生成,index文件记录的就是所有的二进制文件的名称及位置信息.

3.查看生成的二进制文件在文件系统上的表现形式

[root@testvm data]# ls -ltr mysql-bin.*
-rw-r----- 1 mysql mysql 154 Jul 25 11:17 mysql-bin.000001
-rw-r----- 1 mysql mysql 19 Jul 25 11:17 mysql-bin.index

备注:mysql-bin是设置的basename,点号后面的序号是自动生成的,启动时,自动生成第一个文件,当该文件写满的时候,会写2,然后3,依次类推.

4.查看index文件的内容

[root@testvm data]# cat mysql-bin.index    #如果mysql-bin不在默认的路径,那么index文件中记录的就是绝对路径加文件名
./mysql-bin.000001

5.注意事项

  在官方文档中,说启用binary log只是需要将log-bin=mysql-bin设置即可,但是因为有bug,所以必须要设置server-id否则启动不成功.

官方文档解释如下:

If you specify the --log-bin option without also specifying a --server-id, the server is not allowed to start. (Bug #11763963, Bug #56739) 

6.如果my.cnf中log-bin不加basename

server-id=11
log-bin #后面不接basename

7.重启mysql实例,查看log-bin相关信息

mysql> show variables where variable_name in ('log_bin','log_bin_basename','log_bin_index');
+------------------+------------------------------+
| Variable_name | Value |
+------------------+------------------------------+
| log_bin | ON |
| log_bin_basename | /mysql/data/testvm-bin |
| log_bin_index | /mysql/data/testvm-bin.index |
+------------------+------------------------------+
3 rows in set (0.01 sec)

备注:如果不加basename,那么就是主机名-bin,主机名-bin.index这样的命名方式.

文档创建时间:2018年7月19日15:06:57

mysql中如何开启binlog?开启二进制日志文件?binary log?的更多相关文章

  1. MySQL二进制日志(binary log)总结

    本文出处:http://www.cnblogs.com/wy123/p/7182356.html (保留出处并非什么原创作品权利,本人拙作还远远达不到,仅仅是为了链接到原文,因为后续对可能存在的一些错 ...

  2. MySQL二进制日志文件Binlog的三种格式以及对应的主从复制中三种技术

    二进制日志文件Binlog的格式主要有三种: 1.Statement:基于SQL语句级别的Binlog,每条修改数据的SQL都会保存到Binlog里面. 2.ROW:基于行级别,每一行数据的变化都会记 ...

  3. 使用mysqlbinlog从二进制日志文件中查询mysql执行过的sql语句 (原)

    前提MySQL开启了binlog日志操作1. 查看MySQL是否开启binlog(进mysql操作) mysql> show variables like 'log_bin%';       2 ...

  4. MySQL复制(二)--基于二进制日志文件(binlog)配置复制

    基础环境:   主库 从库 服务器IP地址 192.168.10.11 192.168.10.12 版本 5.7.24 5.7.24 已存在的数据库 mysql> show databases; ...

  5. 实战:mysql检查物理磁盘中的二进制日志文件是否有丢失

    版权声明:日常札记,乐于分享 https://blog.csdn.net/yangzhawen/article/details/32103555 场景:有时候由于磁盘损坏或人为原因错误删除了磁盘中的二 ...

  6. mysql删除二进制日志文件

    一.RESET MASTER 这个语句可以验证首次配置主机备机是否成功.步骤如下: 1. 启动master和 slave,开启replication (即 复制) 注:replication (复制) ...

  7. mysql中redo和binlog的区别

    影响MySQL中redo的配置参数: innodb_log_file_size:指定每个redo日志大小,默认值48MB innodb_log_files_in_group:指定日志文件组中redo日 ...

  8. mysql中删除binlog的方法?mysql中如何删除binlog?

    需求描述: 在mysql中如何删除binlog,因为随着数据库的运行,mysql中产生的binlog会越来越大,有可能把磁盘撑爆了,所以记录下删除 binlog的方法. 操作过程: 1.通过系统参数控 ...

  9. MySQL完全备份脚本:数据+二进制日志+备份日志

    一. 脚本须知 1.mysql数据文件和二进制日志文件最好保存在不同的分区或存储设备上 2.备份完成后注意修改数据的权限以防止泄露重要信息,哪些主机哪些用户可以用来恢复 3. 查看导出的2进制日志文件 ...

随机推荐

  1. Mac OS下 Redis2.6.14部署记录

    Mac OS下 Redis2.6.14部署记录 部署一个Redis作为缓存进行验证,记录部署过程. 官网:http://redis.io/,目前最近稳定版为2.6.14  解压,进入目录.按照READ ...

  2. tomcat出现的PermGen Space问题<转>

    最近做项目碰到了让我纠结的问题,tomcat服务器运行一段时间,总是会自动报异常:java.lang.OutOfmemoryError: PermGen Space 的错误,导致项目无法正常运行. 出 ...

  3. [转]TF-IDF与余弦相似性的应用(一):自动提取关键词

    这个标题看上去好像很复杂,其实我要谈的是一个很简单的问题. 有一篇很长的文章,我要用计算机提取它的关键词(Automatic Keyphrase extraction),完全不加以人工干预,请问怎样才 ...

  4. iOS开发小技巧 - runtime适配字体

    iOS开发小技巧 - runtime适配字体 版权声明:本文为博主原创文章,未经博主允许不得转载,有问题可联系博主Email: liuyongjiesail@icloud.com 一个iOS开发项目无 ...

  5. 关于css定位

    关于定位要弄清一个概念,那就是"文档流" 什到是文档流 说得简单一点 就是 自上而下 从左到右 生成顺序 关于html元素又分为两种 块状元素 内联元素 块状元素:单独占一行 内联 ...

  6. Android Studio错误提示:Gradle project sync failed. Basic functionality (eg. editing, debugging) will not work properly

    Android Studio中出现提示: Gradle project sync failed. Basic functionality (eg. editing, debugging) will n ...

  7. python 调用 C语言函数

    python可以直接调用C语言的函数,本文记录用ctypes调用c语言的方法. test.c #include <stdio.h> int test(char *temp) { print ...

  8. 使用Maven运行单元测试

    要通过Maven运行单元测试,发出此命令: mvn test 这会在你的项目中运行整个单元测试. 案例学习 创建两个单元测试,并通过 Maven 的运行它.参见一个简单的 Java 测试类: pack ...

  9. EF5+MVC4系列(1) Podwerdesigner15.1设计数据库;PD中间表和EF实体模型设计器生成中间表的区别;EF5.0 表关系插入数据(一对多,多对多)

    在上一篇文章中, http://www.cnblogs.com/joeylee/p/3790980.html  我们用 PD15.1 来设计了数据库,并且生成 了sql数据库,现在我们用 vs2013 ...

  10. Lombok简化Java代码的好工具

    lombok 的官方网址:http://projectlombok.org/ 关于lombok 的介绍,有几篇帖子,写得都很好 比如 http://www.blogjava.net/fancydeep ...