안녕하세요.
현재 5.0에서 replication을 구성하여 사용하고 있습니다.
구성한지는 한달좀 더 됬구요
처음에는 Data 동기화가 잘 되는 듯하다가 현재는 잘 안되고 있습니다.
로그가 10G 정도 쌓여 있다고 하는데 로그를 지우고 다시하면 잘 된다고 합니다.
로그의 양이 커지면 동기화에 문제가 생길 수 있나요?
흠 복제기능을 써본지가 어언...-.ㅡ;;;
질문내용이 부족합니다. 잘 안된다는게 슬레이브 서버에 데이터가 누락이 된다는건지..아니면 값이 맞질 안다는건지...슬레이브와 마스터와 싱크가 안맞는다면 전체 테이블에 대해서 맞질 않는건지 아니면 특정한 데이블에 한정된건지...
로그의 양과 동기화의 관계는 잘 모르겟습니다만...마스터 서버의 바이너리 로그를 읽어서 슬레이브에 복제하는것으로 알고 있습니다만 뭐 하나의 파일로 로그가 생성되어진다면...속도에 좀 문제가 있을까요? 흠...
지우고 다시 하면 잘되신다면...흠 복제기능을 끄고 로그삭제후 다시 복제를 시작하신것인가요? 로그를 삭제 하지 않더라도 단순히 복제를 껏다가 시작하는것만으로는 안되는것인지...
흠...
show slave status;
해보시고 에러 내용을 먼저 살펴 보세요.
master 에서 insert 한 키값이 slave에 존재하거나
update 된 레코드가 slave에 없거나 할때 문제가 생길 수 있습니다.
문제가 생긴 레코드가 상관이 없다면..
<---
slave서버에서 멈춘 위치 확인(Exec_master_log_pos: 1033756136)
mysql> show slave status\G
master서버에서 멈춘 위치근처에 어떤 쿼리들이 있는지 확인
mysql> show binlog events in 'MASTERSERVER-bin.012' from 1033756136 limit 3\G
오류가 발생한 쿼리는 필요없으므로 다음 쿼리로 이동
mysql> slave stop;
mysql> change master to master_log_file='MASTERSERVER-bin.012', master_log_pos=1033756434;
mysql> slave start;
--> 이부분은 다른 님이 다른곳에 쓰신글..
하거나.. 아니면
mysql> SET GLOBAL SQL_SLAVE_SKIP_COUNTER = N;
mysql> START SLAVE;
이런식으로 건너 뛰세요..