jjzjj

mysql - 错误 : Binlogging on server not active when setting up Master Slave replication on one machine

coder 2023-10-03 原文

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

我快要结束了,但是当我尝试使用 --master-data=2 运行 mysqldump 时,我得到了一个错误

mysqldump: Error: Binlogging on server not active

我遇到的所有解决方案都说要将 log_bin =/var/log/mysql/mysql-bin.log 添加到 my.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/

最佳答案

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

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

我假设您只是为了实验而在单个服务器上设置 M-S?对生产这样做几乎没有用。

关于mysql - 错误 : Binlogging on server not active when setting up Master Slave replication on one machine,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45210078/

有关mysql - 错误 : Binlogging on server not active when setting up Master Slave replication on one machine的更多相关文章

随机推荐