• 【MySQL解惑笔记】Mysql5.7.x无法开启二进制日志


    一、开启二进制日志

    1)未开启二进制日志之前:

    mysql> show variables like 'log_bin';
    +---------------+-------+
    | Variable_name | Value |
    +---------------+-------+
    | log_bin       | ON    |     #二进制日志是关闭的
    +---------------+-------+
    1 row in set (0.00 sec)
    
    mysql> 

    2)开启二进制日志

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

    log_bin=mysql-bin  #其中mysql-bin代表的是basename就是生成二进制日志文件的前缀部分,默认的位置在datadir目录下,也可以设置为其他的路径
    server-id=11   #由于bug问题必须设置这个id,数字随便写
    
    datadir=/var/lib/mysql   #默认指定文件存放位置,可修改,但是要注意权限

    重启服务器:

    systemctl restart mysqld

    3)查看开启状态;

    mysql> show variables like 'log_bin';
    +---------------+-------+
    | Variable_name | Value |
    +---------------+-------+
    | log_bin       | ON    |
    +---------------+-------+
    1 row in set (0.00 sec)
    
    注:在my.cnf中设置好log-bin之后,log_bin自动设置为ON,basename设置为mysql-bin,index文件也自动生成,index文件记录的就是所有的二进制文件的名称及位置信息.
    mysql
    > show variables where variable_name in ('log_bin','log_bin_basename','log_bin_index'); +------------------+--------------------------------+ | Variable_name | Value | +------------------+--------------------------------+ | log_bin | ON | | log_bin_basename | /var/lib/mysql/mysql-bin | | log_bin_index | /var/lib/mysql/mysql-bin.index | +------------------+--------------------------------+ 3 rows in set (0.01 sec) mysql>

    4)注意事项

    在官方文档中,说启用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) 

    参考博客:https://www.cnblogs.com/chuanzhang053/p/9335924.html

  • 相关阅读:
    java面向对象,封装和继承之电子宠物应用
    java之面向对象及定义一个计算器
    java之练习字符串的处理
    java编译变量的正确写法和控制台输入
    java基础类型及运算符
    JS之表单验证及职业素养
    JS实例之左侧菜单下拉效果,实现左侧菜单栏点击打开关闭效果
    JS实例之列表选中,实现类似好友列表选中效果
    idea激活码+方法 亲测有效
    恶意软件关不掉,老是弹出来
  • 原文地址:https://www.cnblogs.com/yangleitao/p/9675434.html
Copyright © 2020-2023  润新知