首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用组复制设置中的所有内存和交换区的MySQL

问使用组复制设置中的所有内存和交换区的MySQL
EN

Server Fault用户
提问于 2020-03-06 15:13:12
回答 1查看 194关注 0票数 0

我在组复制(多主)基础结构中使用MySQL 8.0.18。目前有4台主服务器相互连接,一切似乎都正常,但在大约2周的时间里,所有服务器上的所有mysqld进程都耗尽了所有交换。ram的使用保持在800 job,因为我怀疑innodb_log_buffer_size正在做它的工作。

服务器规范:

Debian 10

1Gb RAM

3GB交换

20 ssd

Mysql.cnf:

max_connections=20

innodb_log_buffer_size=800M

key_buffer_size=50M

super_read_only=off

gtid_mode = ON

enforce_gtid_consistency = ON

master_info_repository =表

relay_log_info_repository =表

binlog_checksum =无

log_slave_updates = ON

log_bin = binlog

binlog_format =行

transaction_write_set_extraction = XXHASH64

松散组复制_引导组= OFF

松散组复制_启动启动= OFF

松散组复制_ssl_mode=必需

松散组复制_恢复_use_ssl=1

loose-group_replication_unreachable_majority_timeout=80

松散组-复制-自动重新连接-尝试=2015

loose-group-replication-transaction-size-limit=0

相关OS配置:

vm.swappiness=5

我如何使mysql停止使用如此多的交换?

EN

回答 1

Server Fault用户

发布于 2020-03-14 17:12:48

你要把这些压缩到1.0GB吗?

  • 操作系统
  • mysqld
  • innodb_log_buffer_size (0.8GB)
  • key_buffer_size=50M,尽管MyISAM已经走了

怪不得它在交换。

返回到默认的innodb_log_buffer_size (8M)。这可能足以解决你的问题。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1005883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档