오늘만살자

docker swarm mysql5.5 replication 본문

Docker

docker swarm mysql5.5 replication

오늘만살자 2020. 6. 11. 11:20

mysql-replica.yml 

 

version: "3.7"

services:
  master:
    image: mysql:5.5
    ports:
      - "3306:3306"
    volumes:
      - mysql-data:/var/lib/mysql
      - ./mysql/master.cnf:/etc/mysql/conf.d/master.cnf
      - "./mysql/:/docker-entrypoint-initdb.d/"
    environment:
      - TZ=Asia/Seoul
      - MYSQL_ROOT_PASSWORD=XXX
      - MYSQL_DATABASE=XXX
      - MYSQL_USER=XXX
      - MYSQL_PASSWORD=XXX
    deploy:
      mode: replicated
      replicas: 3
      #placement:
        #constraints:
          #- node.hostname == master01

  slave:
    image: mysql:5.5
    ports:
      - "3307:3306"
    volumes:
      - mysql-data:/var/lib/mysql
      - ./mysql/slave.cnf:/etc/mysql/conf.d/slave.cnf
      - "./mysql/:/docker-entrypoint-initdb.d/"
    environment:
      - TZ=Asia/Seoul
      - MYSQL_ROOT_PASSWORD=XXX
      - MYSQL_DATABASE=XXX
      - MYSQL_USER=XXX
      - MYSQL_PASSWORD=XXX
   
    deploy:
      mode: replicated
      replicas: 3
      #placement:
        #constraints:
          #- node.hostname == node01
    
  

volumes:
    mysql-data:
        name: '{{.Service.Name}}-{{.Task.Slot}}-data'
        driver: local
          

 

mysql  폴더 파일들

 

master.cnf

[mysqld]
log-bin=mysql-bin  
server-id=1

slave.cnf

[mysqld]
server-id=2

setup.sql

SET NAMES utf8 ;
CREATE DATABASE IF NOT EXISTS test;
SET character_set_client = utf8mb4 ;
GRANT ALL PRIVILEGES ON *.* TO 'testman'@'%' identified by 'TEST';
set global max_connections=10000;
set wait_timeout=60;
FLUSH PRIVILEGES;

 

master에서

show master status;

 

slave 에서

change master to master_host='master',

master_user = 'root',

master_password = 'XXXXXXXX',

master_log_file = 'mysql-bin.0000004',

master_log_pos = 107;

start slave;

 

show slave status;

 

'Docker' 카테고리의 다른 글

mongodb run  (0) 2020.08.07
mariadb run  (0) 2020.08.07
CentOS 8 docker install  (0) 2020.04.29
Portainer Install  (0) 2020.04.29
docker swarm Monitoring  (0) 2020.04.23
Comments