* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
CentOS 6.6 | |
CUBRID 9.3 (9.3.0.0206) (64bit release build for linux_gnu) (May 14 2014 23:29:33) | |
[도움말]-[버전정보] 확인 | |
java, php, odbc 등 입력 |
* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 | 재현 가능한 Source와 SQL |
관련 테이블(인덱스, 키정보 포함) 정보 | CUBRID 홈 디렉토리 아래 log 디렉토리 압축 |
-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
2대의 서버에 데이터베이스를 HA구성하여 사용하고 있습니다.
그런데 어느순간부터 copylogdb의 데이터 복제가 잘 되지 않아서
standby에 있는 문제가 되는 노드를 deletedb로 삭제하고
active에서 백업 후 standby에 복구하였습니다.
그런데 active 서버의 copylogdb.err 에러로그에서
Time: 05/25/16 17:35:45.971 - ERROR *** file ../../src/transaction/log_writer.c, line 1341 ERROR CODE = -1039 Tran = 2, EID = 1
log writer: log writer started. mode: 3.
*** The previous error message is the last one. ***
c/transaction/log_writer.c, line 576 ERROR CODE = -89 Tran = 2, EID = 2
Log "/usr/local/CUBRID/databases/lf_cn_usdb4/lf_cn_lgat" does not belong to the given database.
이런 에러가 계속 뜹니다.
데이터베이스가 일치하지 않는다는 에러 같은데
복구할 때 데이터베이스 위치 디렉토리를 모두 생성했고(active 서버와 똑같이)
databases.txt 파일에 active 서버와 똑같이 작성 후 복구하였습니다
standby서버에서 큐브리드를 실행하면
++ cubrid server start: success
@ copylogdb start
++ copylogdb start: success
@ applylogdb start
++ applylogdb start: success
++ HA processes start: success
++ cubrid heartbeat start: success
여기까지 모두 정상적으로 되는데 active 서버에서 cub_admin copylogdb -L ~
부분이 나오지 않습니다.
어떻게 해야 할까요?
감사합니다.
안녕하세요
문제가 되었던 데이터가 슬레이브에도 잘 있는지 csql로 확인해 보시고,
슬레이브 서버에서 applyinfo를 확인해주시기 바랍니다.
cubrid applyinfo –L /DB_PATH_nodeA -r nodeA –a -i 3 DB_NAME
[option] –a : Applied Info 정보를 출력. / -r 대상 노드의 이름. / -i 인터벌 refresh
참조 메뉴얼 : http://www.cubrid.org/manual/ko/9.3.0/ha.html#cubrid-applyinfo