错误:在一台计算机上设置主从复制时,服务器上的Binlogging未激活

Chr*_*ing 6 mysql mysqlbinlog

我正在尝试使用本教程在本地计算机上设置主从复制.

我接近结束但当我尝试mysqldump使用时,--master-data=2我得到一个错误

mysqldump: Error: Binlogging on server not active
Run Code Online (Sandbox Code Playgroud)

我遇到的所有解决方案都表示要添加log_bin = /var/log/mysql/mysql-bin.logmy.cnf我已经做了,它似乎并没有解决这个问题.

这是我的my.cnf档案:

[client]
port            = 3306
socket          = /var/run/mysqld/mysqld.sock

[mysqld_safe]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
nice            = 0

[mysqld_multi]
mysqld      = /usr/bin/mysqld_safe
mysqladmin  = /usr/bin/mysqladmin
user        = multi_admin
password    = multipass

[mysqld2]
user            = mysql
pid-file        = /var/run/mysqld/mysqld_slave.pid
socket          = /var/run/mysqld/mysqld_slave.sock
port            = 3307
basedir         = /usr
datadir         = /var/lib/mysql_slave
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
explicit_defaults_for_timestamp
server-id   = 2
relay-log   = /var/log/mysql_slave/relay-bin
relay-log-index = /var/log/mysql_slave/relay-bin.index
master-info-file = /var/log/mysql_slave/master.info
relay-log-info-file = /var/log/mysql_slave/relay-log.info
read_only   = 1

[mysqld1]
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3305
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
explicit_defaults_for_timestamp
server-id   = 1
log_bin     = /var/log/mysql/mysql-bin.log
innodb_flush_log_at_trx_commit = 1
sync_binlog = 1
binlog-format = ROW

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 0.0.0.0

log-error       = /var/log/mysql/error.log

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

# * IMPORTANT: Additional settings that can override those from this file!
#   The files must end with '.cnf', otherwise they'll be ignored.

!includedir /etc/mysql/conf.d/
Run Code Online (Sandbox Code Playgroud)

Ric*_*mes 1

我可以建议你放弃 mysql_multi 并使用 Docker 解决方案。这使您可以拥有单独的 my.cnf 文件,这可能是问题的一部分。

甚至可能已经为 Master 和 Slave 设置了一对 Docker 镜像。我很确定 Galera 聚类是有的。

我猜你只是为了实验而在一台服务器上设置 MS?这样做对于生产来说实际上是没有用的。