mysql> select version(); +-----------+ | version() | +-----------+ | 5.7.24 | +-----------+ 1 row in set (0.05 sec)
mysql> show variables like '%log_bin%'; +---------------------------------+-------+ | Variable_name | Value | +---------------------------------+-------+ | log_bin | OFF | | log_bin_basename | | | log_bin_index | | | log_bin_trust_function_creators | OFF | | log_bin_use_v1_row_events | OFF | | sql_log_bin | ON | +---------------------------------+-------+ 6 rows in set (0.05 sec)
上面输出中 log_bin 为 OFF,表示该 MySQL 未开启 binlog。
(1)添加 log_bin 和 binlog-format 配置,如下:
# Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin log_bin=1# 开启logbin log_bin=mysql-bin# 指定文件名和路径,这里是默认路径 binlog-format=Row # 文件类型
(2)添加 server-id,如下:
# These are commonly set, remove the # and set as required. # basedir = ..... # datadir = ..... # bind-address = 127.0.0.1 port = 3306 # server_id = ..... server-id = 1 # 服务ID
可以通过 “服务” 重启 MySQL,也可以使用 “net start mysql” 命令重启,注意:命令后面的 mysql 为你 mysql 的服务名。
mysql> show variables like '%log_bin%'; +---------------------------------+----------------------------------------------------+ | Variable_name | Value | +---------------------------------+----------------------------------------------------+ | log_bin | ON | | log_bin_basename | D:\server\mysql-5.7.24-winx64\data\mysql-bin | | log_bin_index | D:\server\mysql-5.7.24-winx64\data\mysql-bin.index | | log_bin_trust_function_creators | OFF | | log_bin_use_v1_row_events | OFF | | sql_log_bin | ON | +---------------------------------+----------------------------------------------------+ 6 rows in set (0.07 sec)
上面 log_bin 为 ON,表示 logbin 开启成功,log_bin_basename 指定二进制日志文件名,log_bin_index 指定二进制的索引文件名。