2010년 7월 28일 수요일

Replication : Slave에서의 설정과 조작 5

  • SHOW WARNINGS: Replication에러가 나왔을 경우 에러 메세지를 볼 수 있다.
  • SET GLOBAL SQL_SLAVE_SKIP_COUNTER:  지정된 수만큼 이벤트의 실행을 건너뛴다. 
  • SELECT MASTER_POS_WAIT() : 지정된 바이너리 로그파일의 위치까지의 이벤트를  SQL스레드가 실행할 때까지 대기한다. SQL함수인 것을 주목하자.  다음과 같이 사용한다. SELECT MASTER_POS_WAIT('Master 바이너리로그 파일명', 바이너리로그 파일의 위치 [,타임아웃] ) 타임아웃은 0보다 큰 숫자를 지정한 경우, 지정된 초수를 넘어서 기다리게 되는 경우 에러를 낸다.  지정이 없으면 계속 기다린다.   반환되는 값은 이벤트의 수이다. NULL은  SQL스레드가 움직이고 있지 않던가 인수에러이던지 지정된 파일이 존재하지 않던지 하는 경우이다.  -1은 타임아웃이 발생한 상태이다.
  • START SLAVE (IO_THREAD|SQL_THREAD):  Slave를 시작한다. 
  • STOP SLAVE (IO_THREAD|SQL_THREAD):Slave를 정지시킨다.
  • RESET SLAVE:  Slave정보를 삭제한다. master.info, relay-bin.#, relay-bin.index, relay-log.info가 삭제되어 초기상태로 된다. 
  • LOAD DATA FROM MASTER:  Master데이터의 복사.  현재는 비추천기능. mysqldump등의 백업툴을 사용할 것을 추천한다.  MyISAM테이블만이 대상으로  그 외의 것은 Net error reading from master라는 에러메세지가 나온다. 또 데이터양이 많은 경우 타임아우이 발생할 가능성이 있다. 
  • LOAD TABLE 테이블명 FROM MASTER: Master의 테이블 복사.  이것도 현재 비추천기능.