本次使用 yum 安装 MySQL ,开启
binlog
日志
本次使用MySQL
版本为 5.7.38
1️⃣登陆MySQL查看
mysql -u root -p
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.01 sec)
这里显示没有开启 binlog
日志
注意 server_id 这个配置参数,官网要求在配置 binlog 时必须要有,如果是主从的话,这个 server_id 是不可以相同的
1️⃣ 第一种配置方式
vim /etc/my.cnf
# 添加如下内容
server_id=1
log-bin=/var/lib/mysql/mysql-bin
2️⃣ 第二种配置方式
参考官网:https://dev.mysql.com/doc/refman/5.7/en/replication-howto-masterbaseconfig.html
vim /etc/my.cnf
[mysqld]
log-bin=mysql-bin
server-id=1
mysql> show variables like '%log_bin%';
+---------------------------------+--------------------------------+
| Variable_name | Value |
+---------------------------------+--------------------------------+
| log_bin | ON |
| log_bin_basename | /var/lib/mysql/mysql-bin |
| log_bin_index | /var/lib/mysql/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.00 sec)
💥 踩坑记录
在配置
binlog
时参考网上很多博客内容都是说直接添加如下内容,结果都报错
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
log-bin=/var/lib/mysql/mysql-bin
或者
log_bin=ON
log_bin_basename=/var/lib/mysql/mysql-bin
log_bin_index=/var/lib/mysql/mysql-bin.index
👉 说明:
1️⃣ 第一种方式
经过测试添加 log-bin=/var/lib/mysql/mysql-bin
时必须有 server_id
这个配置参数,详细原因参考官网介绍:https://dev.mysql.com/doc/refman/5.7/en/replication-howto.html
2️⃣ 第二种方式
添加如下内容的,我没有修改成功,没仔细研究错误问题,如果有哪位是成功的,麻烦指点一下,谢谢。
log_bin=ON
log_bin_basename=/var/lib/mysql/mysql-bin
log_bin_index=/var/lib/mysql/mysql-bin.index