-
MySQL 미러링 (REPLICATION)개발 2016. 6. 8. 12:39
1. Master DB와 Slave DB에 Mysql 을 설치
2. Master DB와 Slave DB의 Mysql 의 데이터를 일치시킴. (mysqldump 등을 이용)
3. Master DB와 Slave DB의 my.cnf(보통 /etc/my.cnf에 존재) 수정
<<<Master DB>>>
[mysqld]
log-bin
server-id=1
<<<Slave DB>>>
[mysqld]
server-id=2서버자체가 로컬로스트에서만 접속이 가능하다도록 설정되어 있다면 외부에서도 접속할 수 있도록 아래와 같이 옵션을 변경한다. (우부투의 경우)
#bind-address = 127.0.0.1
bind-address = 0.0.0.04. Create a User for Replication
Slave들이 Master에 접근하기위해서 Master의 User계정이 필요하다.
어떤 계정이든 상관없고 REPLICATION SLAVE 권한이 필요하다.
Slave마다 다른 계정을 줄 수도 있고 같은 계정을 줄 수도 있다.
어떤 계정을 따로 만들 필요없지만
master.info에 평문으로 User name과 password가 저장된다는 것을 알고 있어야 한다.
그러므로 Replication 작업만을 위한 계정을 따로 생성할 필요가 있다.마스터에서 등록한다.
mysql> CREATE USER 'repl'@'IP주소 or 호스트이름' IDENTIFIED BY 'slavepass';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%.mydomain.com';
슬레이브에서 등록한다.
mysql > CHANGE MASTER TO MASTER_HOST='192.168.146.134',MASTER_USER='repl',MASTER_PASSWORD='passwd', MASTER_PORT=3306, MASTER_CONNECT_RETRY=30;
mysql > start slave;5. 기타
덤프
$ mysqldump -uroot -p -A > all.sql
복원
$ mysql -uroot -p < all.sql반응형'개발' 카테고리의 다른 글
우분투 호스트명 변경 (0) 2016.06.08 우분투에 HDD 추가하기 (0) 2016.06.08 아파치(2.2) 톰캣 연동 (0) 2016.03.12 AIX 에서 시간 설정하기 (0) 2015.12.10 input 필드에 숫자만 입력받기 (0) 2015.10.26