Docker Compose 部署主从 MySQL 集群 - 不同服务器配置
要在不同服务器上部署 Docker Compose 主从 MySQL 集群,您需要以下步骤:
- 在每个服务器上安装 Docker 和 Docker Compose。
- 创建一个 Docker Compose 文件,其中包含主服务器和从服务器的 MySQL 容器定义。在这个文件中,您需要指定每个容器的 IP 地址和端口。
- 在主服务器上启动 MySQL 容器,并将其配置为主服务器。
- 在从服务器上启动 MySQL 容器,并将其配置为从服务器。在此步骤中,您需要指定主服务器的 IP 地址和端口。
- 测试主从 MySQL 集群是否正常工作。
以下是一个示例 Docker Compose 文件,其中包含主服务器和从服务器的 MySQL 容器定义:
version: '3'
services:
mysql_master:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: '<root_password>'
ports:
- '3306:3306'
networks:
mysql_network:
ipv4_address: '<master_ip>'
mysql_slave:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: '<root_password>'
MYSQL_MASTER_HOST: '<master_ip>'
MYSQL_MASTER_PORT: 3306
ports:
- '3307:3306'
networks:
mysql_network:
ipv4_address: '<slave_ip>'
networks:
mysql_network:
ipam:
driver: default
config:
- subnet: '<subnet_ip>'
在此示例中,mysql_master 和 mysql_slave 分别是主服务器和从服务器的 MySQL 容器。<root_password> 是 MySQL 的 root 用户密码。<master_ip> 和 <slave_ip> 是主服务器和从服务器的 IP 地址。<subnet_ip> 是 Docker Compose 网络的子网地址。
要启动主服务器和从服务器的 MySQL 容器,请使用以下命令:
docker-compose up -d
在此命令之后,主服务器和从服务器的 MySQL 容器将在不同的服务器上启动,并在一个 Docker Compose 网络中通信。主服务器将配置为主服务器,而从服务器将配置为从服务器,并连接到主服务器的 IP 地址和端口。
要测试主从 MySQL 集群是否正常工作,请使用以下命令:
docker exec -it <mysql_master_container_id> mysql -uroot -p<root_password>
CREATE DATABASE test;
CREATE TABLE test_table (id INT PRIMARY KEY);
INSERT INTO test_table (id) VALUES (1);
然后,在从服务器上运行以下命令:
docker exec -it <mysql_slave_container_id> mysql -uroot -p<root_password>
SELECT * FROM test.test_table;
如果一切正常,您将能够在从服务器中看到主服务器上创建的数据库和表。
原文地址: https://www.cveoy.top/t/topic/lFuk 著作权归作者所有。请勿转载和采集!