要在不同服务器上部署 Docker Compose 主从 MySQL 集群,您需要以下步骤:

  1. 在每个服务器上安装 Docker 和 Docker Compose。
  2. 创建一个 Docker Compose 文件,其中包含主服务器和从服务器的 MySQL 容器定义。在这个文件中,您需要指定每个容器的 IP 地址和端口。
  3. 在主服务器上启动 MySQL 容器,并将其配置为主服务器。
  4. 在从服务器上启动 MySQL 容器,并将其配置为从服务器。在此步骤中,您需要指定主服务器的 IP 地址和端口。
  5. 测试主从 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_mastermysql_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;

如果一切正常,您将能够在从服务器中看到主服务器上创建的数据库和表。

Docker Compose 部署主从 MySQL 集群 - 不同服务器配置

原文地址: https://www.cveoy.top/t/topic/lFuk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录