news 2026/6/10 17:59:51

docker容器单机创建3个节点的MySQLMGR集群

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
docker容器单机创建3个节点的MySQLMGR集群

docker容器单机创建3个节点的MySQLMGR集群

mkdir -p /data/dockerData/mysql1/conf.d mkdir -p /data/dockerData/mysql1/data mkdir -p /data/dockerData/mysql2/conf.d mkdir -p /data/dockerData/mysql2/data mkdir -p /data/dockerData/mysql3/conf.d mkdir -p /data/dockerData/mysql3/data
docker run -d \ --name mysql33011 \ -p 33011:3306 \ --net=mysql-network --ip 172.72.0.15 \ -v /data/dockerData/mysql1/conf.d:/etc/mysql/conf.d \ -v /data/dockerData/mysql1/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=root \ mysql:8.0.43 docker run -d \ --name mysql33012 \ -p 33012:3306 \ --net=mysql-network --ip 172.72.0.16 \ -v /data/dockerData/mysql2/conf.d:/etc/mysql/conf.d \ -v /data/dockerData/mysql2/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=root \ mysql:8.0.43 docker run -d \ --name mysql33013 \ -p 33013:3306 \ --net=mysql-network --ip 172.72.0.17 \ -v /data/dockerData/mysql3/conf.d:/etc/mysql/conf.d \ -v /data/dockerData/mysql3/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=root \ mysql:8.0.43
cat > /data/dockerData/mysql1/conf.d/my.cnf <<"EOF" [mysqld] user=mysql port=3306 character_set_server=utf8mb4 secure_file_priv='' server-id = 33011 default-time-zone = '+8:00' log_timestamps = SYSTEM log-bin = 1 binlog_format=row binlog_checksum=NONE log-slave-updates=1 skip-name-resolve auto-increment-increment=2 auto-increment-offset=1 gtid-mode=ON enforce-gtid-consistency=on default_authentication_plugin=mysql_native_password max_allowed_packet = 500M master_info_repository=TABLE relay_log_info_repository=TABLE relay_log=mgr15-relay-bin-ip15 transaction_write_set_extraction=XXHASH64 loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa" loose-group_replication_start_on_boot=OFF loose-group_replication_local_address= "172.72.0.15:33061" loose-group_replication_group_seeds= "172.72.0.15:33061,172.72.0.16:33062,172.72.0.17:33063" loose-group_replication_bootstrap_group=OFF loose-group_replication_ip_whitelist="172.72.0.15,172.72.0.16,172.72.0.17" report_host=172.72.0.15 report_port=3306 EOF cat > /data/dockerData/mysql2/conf.d/my.cnf <<"EOF" [mysqld] user=mysql port=3306 character_set_server=utf8mb4 secure_file_priv='' server-id = 33012 default-time-zone = '+8:00' log_timestamps = SYSTEM log-bin = 1 binlog_format=row binlog_checksum=NONE log-slave-updates=1 gtid-mode=ON enforce-gtid-consistency=ON skip_name_resolve default_authentication_plugin=mysql_native_password max_allowed_packet = 500M master_info_repository=TABLE relay_log_info_repository=TABLE relay_log=mgr16-relay-bin-ip16 transaction_write_set_extraction=XXHASH64 loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa" loose-group_replication_start_on_boot=OFF loose-group_replication_local_address= "172.72.0.16:33062" loose-group_replication_group_seeds= "172.72.0.15:33061,172.72.0.16:33062,172.72.0.17:33063" loose-group_replication_bootstrap_group=OFF loose-group_replication_ip_whitelist="172.72.0.15,172.72.0.16,172.72.0.17" report_host=172.72.0.16 report_port=3306 EOF cat > /data/dockerData/mysql3/conf.d/my.cnf <<"EOF" [mysqld] user=mysql port=3306 character_set_server=utf8mb4 secure_file_priv='' server-id = 33013 default-time-zone = '+8:00' log_timestamps = SYSTEM log-bin = 1 binlog_format=row binlog_checksum=NONE log-slave-updates=1 gtid-mode=ON enforce-gtid-consistency=ON skip_name_resolve default_authentication_plugin=mysql_native_password max_allowed_packet = 500M master_info_repository=TABLE relay_log_info_repository=TABLE relay_log=mgr17-relay-bin-ip17 transaction_write_set_extraction=XXHASH64 loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa" loose-group_replication_start_on_boot=OFF loose-group_replication_local_address= "172.72.0.17:33063" loose-group_replication_group_seeds= "172.72.0.15:33061,172.72.0.16:33062,172.72.0.17:33063" loose-group_replication_bootstrap_group=OFF loose-group_replication_ip_whitelist="172.72.0.15,172.72.0.16,172.72.0.17" report_host=172.72.0.17 report_port=3306 EOF
docker restart mysql33011 mysql33012 mysql33013
所有MySQL容器中安装MGR插件 //xxx是容器的名称 docker exec -it mysql33011 mysql -uroot -proot INSTALL PLUGIN group_replication SONAME 'group_replication.so'; show plugins; docker exec -it mysql33012 mysql -uroot -proot INSTALL PLUGIN group_replication SONAME 'group_replication.so'; show plugins; docker exec -it mysql33013 mysql -uroot -proot INSTALL PLUGIN group_replication SONAME 'group_replication.so'; show plugins;
在所有节点上创建复制账号 docker exec -it mysql33011 mysql -uroot -proot docker exec -it mysql33012 mysql -uroot -proot docker exec -it mysql33013 mysql -uroot -proot SET SQL_LOG_BIN=0; CREATE USER repl@'%' IDENTIFIED BY 'root'; GRANT REPLICATION SLAVE ON *.* TO repl@'%'; FLUSH PRIVILEGES; SET SQL_LOG_BIN=1; CHANGE MASTER TO MASTER_USER='repl', MASTER_PASSWORD='root' FOR CHANNEL 'group_replication_recovery'; exit;
启动MGR单主模式 在主节点上启动MGR: docker exec -it mysql33011 mysql -uroot -proot SET GLOBAL group_replication_bootstrap_group=ON; START GROUP_REPLICATION; SET GLOBAL group_replication_bootstrap_group=OFF; SELECT * FROM performance_schema.replication_group_members; 剩余节点需要加入MGR,在剩余节点上执行以下操作: docker exec -it mysql33012 mysql -uroot -proot docker exec -it mysql33013 mysql -uroot -proot START GROUP_REPLICATION; SELECT * FROM performance_schema.replication_group_members; exit;
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 7:24:20

iOS微信红包助手终极指南:2025快速配置教程

iOS微信红包助手终极指南&#xff1a;2025快速配置教程 【免费下载链接】WeChatRedEnvelopesHelper iOS版微信抢红包插件,支持后台抢红包 项目地址: https://gitcode.com/gh_mirrors/we/WeChatRedEnvelopesHelper 还在为错过微信红包而烦恼吗&#xff1f;iOS微信红包助手…

作者头像 李华
网站建设 2026/6/10 15:30:34

智能迷你小风扇物联网控制项目实战

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个物联网迷你小风扇控制系统&#xff0c;要求&#xff1a;1. 使用ESP8266微控制器 2. 通过MQTT协议连接云平台 3. 开发手机控制界面(HTML5) 4. 支持三档风速调节 5. 显示实时…

作者头像 李华
网站建设 2026/6/10 15:32:12

Wan2.2-T2V-A14B能否识别并生成特定艺术风格如水彩画

Wan2.2-T2V-A14B能否识别并生成特定艺术风格如水彩画 在AI内容创作迅速演进的今天&#xff0c;一个核心问题逐渐浮现&#xff1a;当用户输入“请生成一段水彩风格的江南春景视频”时&#xff0c;模型究竟是简单地贴上一层滤镜式特效&#xff0c;还是真正理解了“水彩”的视觉语…

作者头像 李华
网站建设 2026/6/9 18:46:59

致那些年我们曾经遇到过的接口测试难题

我们日常的接口测试工作主要是验证接口的功能性&#xff08;入参、出参、边界值等&#xff09;&#xff0c;沐沐在接口测试过程中遇到的一些接口安全性的问题&#xff0c;整理成了通用的测试点&#xff0c;不一定适用于全部的产品&#xff0c;仅做参考。 一、登录接口校验 验证…

作者头像 李华
网站建设 2026/6/10 15:32:49

阅文短剧2025年累计上剧超120部,多部待播剧预约人数破百万

12月11日&#xff0c;阅文短剧发布了2025年度成绩单。2025年&#xff0c;阅文短剧累计产出了超120部短剧&#xff0c;产能显著提升&#xff1b;其中多部作品斩获头部平台“爆剧”认证&#xff0c;现言、古装、年代剧、男频多赛道表现强劲&#xff0c;彰显了其在短剧领域的强大影…

作者头像 李华
网站建设 2026/6/10 13:48:44

Android面试必备:HashMap深度解析与面试攻略

目录 一、HashMap基础:不只是键值对存储 二、底层数据结构演进 JDK 1.8之前: 数组+链表 JDK 1.8之后:数组+链表/红黑树 三、核心工作原理详解 1. put操作流程 哈希计算优化 3.扩容机制 四、面试高频问题深度解析 Q1: HashMap的线程安全问题 Q2:负载因子为什么是0.75? Q3:…

作者头像 李华