我们最近对我们的基础设施进行了一些更改,现在我无法保持 MySQL 复制运行。奴隶抱怨二进制日志损坏,重置它无济于事。我一直在我的主日志中看到这样的条目:
二进制日志' WFxKTRNJAAAAPwAAAKY/YwAAABsAAAAAAAEACHdlYmVkaTMwAA1QYXJ0bmVyQ29uZmlnAAQICA8P BC0AYwAA WFxKTRhJAAAAXAAAAAAJAYwAAABsAAAAAAAEABP//8BoSAAAAAAAAAAggMAAAAAAAAJUEFDS0NPVU5U Azc3MfAaEgAAAAAAAIIDAAAAAAAACVBBQ0tDT1VOVAM3NzI= '/*!*/;
在从属日志中,这只是作为“未知事件”出现,并且复制在该位置失败。
这是我给主人的 my.cnf:
[mysqld] datadir=/data/mysql-data 套接字=/tmp/mysql.sock 用户=mysql 日志错误=/var/log/mysqld.log binlog-do-db = db1 binlog-do-db = db2 binlog-do-db = db3 binlog-do-db = db4 binlog_format = '混合' log-bin = /data/mysql-binlogs/mysql-bin.log 服务器 ID=73 报告主机=thisserver.mydomain.com 线程缓存大小 = 30 key_buffer_size = 700M myisam_sort_buffer_size = 300M table_cache = 256 sort_buffer_size = 4M read_buffer_size = 1M innodb_data_home_dir = /data/mysql-data/ innodb_data_file_path = InnoDB:100M:autoextend 设置变量 = innodb_buffer_pool_size=500M 设置变量 = innodb_additional_mem_pool_size=10M 设置变量 = max_connections=500 innodb_log_group_home_dir = /data/mysql-data 设置变量 = innodb_log_file_size=20M 设置变量 = innodb_log_buffer_size=8M …
我在 ubuntu 机器上运行了 mysql-5.1.41 master-master 设置,下面是 master 的配置:
skip-host-cache
skip-name-resolve
event_scheduler = ON
max_connections = 500
max_connect_errors = 1000
server-id = 10
replicate-same-server-id = 0
auto-increment-increment = 10
auto-increment-offset = 1
master-host = 192.168.1.106
master-user = repli
master-password = secret
master-connect-retry = 60
binlog-format = MIXED
binlog-ignore-db = information_schema
binlog-ignore-db = lb1
log-bin = /var/log/mysql/mysql-bin
log-bin-index = /var/log/mysql/bin-log.index
log-slave-updates
report-host = 192.168.1.105
replicate-ignore-db = information_schema
replicate-ignore-db = lb2
relay-log = /var/log/mysql/relay.log
relay-log-index = /var/log/mysql/relay-log.index
Run Code Online (Sandbox Code Playgroud)
日志文件似乎每天都在增长。有谁知道我应该在上面的配置中包含什么参数来自动删除/刷新旧的不必要的日志,并具有适当的值,不会损坏同步?。