news 2026/8/23 23:51:14

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/8/24 11:21:26

系统提示找不到msvcp140_codecvt_ids.dll文件 无法运行程序 下载修复

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

作者头像 李华
网站建设 2026/8/24 13:28:13

超细整理,性能测试如何做?怎么做?性能压力负载(汇总二)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 性能测试结果分析…

作者头像 李华
网站建设 2026/8/23 16:21:38

C++的第十四天笔记

存储持续性、作用域和链接性C使用三种&#xff08;C11四种&#xff09;不同方案存储数据。这些方案的区别在于数据保留在内存中的时间。自动存储持续性&#xff1a;在函数定义中声明的变量&#xff08;包括函数参数&#xff09;&#xff0c;程序执行所属函数 / 代码块时创建&am…

作者头像 李华
网站建设 2026/8/24 11:38:59

874-LangChain框架Use-Cases - 基于智能体的动态槽位填充系统 - 案例分析

1. 案例目标 本案例旨在构建一个基于智能体的动态槽位填充系统&#xff0c;实现智能对话系统&#xff0c;能够分析用户请求并自动收集必要信息&#xff0c;通过对话补充缺失信息。 系统主要实现以下目标&#xff1a; 实现动态槽位填充功能&#xff0c;自动识别并收集必要信息…

作者头像 李华
网站建设 2026/8/24 7:37:19

ops-nn算子库生态纵览 - 构建健壮的AI算力基石

目录 &#x1f3af; 摘要 1. ops-nn&#xff1a;CANN神经网络计算的中枢神经系统 1.1 &#x1f504; 算子库的定位与演进轨迹 1.2 &#x1f4ca; 矩阵计算&#xff1a;AI算力的本质洞察 2. NPU硬件架构&#xff1a;算子设计的物理基础 2.1 &#x1f527; AI Core微架构深…

作者头像 李华