Background Image

FORUM

조회 수 8888 추천 수 0 댓글 5
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

안녕하세요.


얼마전 운영 중인 CUBRID 서버가 비정상 종료 된 이후 로그 파일을 찾을 수 없다고 나와 복구를 진행했습니다.


[에러 메시지]

Time: 07/28/12 20:19:59.343 - ERROR *** ERROR CODE = -10, Tran = 0, CLIENT = (unknown):(unknown)(-1), EID = 1

Unable to mount disk volume "/var/lib/cubrid822/databases/DATABASE/DATABASE_lgar3379".... No such file or directory


위와 같이 에러가 발생하며 구동이 되지 않아


# cubrid emergency_patchlog DATABASE


명령으로 복구 후 구동이 되었습니다.


INSERT/UPDATE/DELETE 등에 문제가 없는데 다음 명령을 실행하면 에러가 발생합니다.


select * from member_sessions where site_id = 12178


[에러 메시지]

Time: 08/02/12 10:26:48.621 - ERROR *** ERROR CODE = -495, Tran = 6, CLIENT = DATABASE-db3:query_editor_cub_cas_1(6392), EID = 3939

Execute: Query execution failure #9659.


특정 테이블 혹은 데이터에 문제가 생긴 것 같은데 에러코드 확인 방법과 문제 조치 방법에 대한 조언을 부탁드립니다.


감사합니다.

  • ?
    이용미 2012.08.03 00:56

    안녕하세요. 질문 감사 드립니다.

    Emergency_patchlog 이후 정상적으로 구동이 된다고 하셨으니 복구는 정상적으로 완료된 것으로 보입니다.

    해당 오류 자체로는 원인 파악이 어려우므로 오류가 발생한 시간대의 $CUBRID/log/server 디렉토리에 있는 로그파일을 첨부 부탁 드립니다.

  • ?
    freemir 2012.08.03 18:12

    [DB의 데이터베이스가 종료된 시점의 에러 로그]

    Time: 07/28/12 20:09:19.421 - ERROR *** ERROR CODE = -10, Tran = 0, CLIENT = (unknown):(unknown)(-1), EID = 14251

    Unable to mount disk volume "/var/lib/cubrid822/databases/DB_NAME/DB_NAME_lgar3379".... No such file or directory


    Time: 07/28/12 20:09:19.449 - FATAL ERROR *** ERROR CODE = -97, Tran = 0, CLIENT = (unknown):(unknown)(-1), EID = 14252

    Internal error: unable to find log page 17316729 in log archives.


    상기와 같이 에러가 기록되고 있었으며, 로그파일을 찾지 못해 구동이 되지 않는 상태였습니다. csql로 접속도 안되는 상태여서 emergency_patchlog를 실행했습니다.



    [emergency_patchlog 이후 에러 메시지]

    Time: 07/28/12 20:36:52.828 - ERROR *** ERROR CODE = -407, Tran = 2, CLIENT = DB_NAME-db3:broker1_cub_cas_2(6404), EID = 1

    Unknown key {12155, '0', timestamp '12:35:37 PM 07/26/2012', 6963} referenced in B+tree index {vfid: (72022, 4), rt_pgid: 79220, key_type: midxkey}.


    Time: 07/28/12 20:38:45.347 - ERROR *** ERROR CODE = -407, Tran = 2, CLIENT = DB_NAME-db3:broker1_cub_cas_2(6404), EID = 2

    Unknown key {12155, '0', timestamp '12:35:37 PM 07/26/2012', 6963} referenced in B+tree index {vfid: (72022, 4), rt_pgid: 79220, key_type: midxkey}.


    Time: 07/28/12 20:51:52.634 - ERROR *** ERROR CODE = -495, Tran = 2, CLIENT = DB_NAME-db3:broker1_cub_cas_2(6404), EID = 12

    Execute: Query execution failure #9659.


    Time: 07/28/12 20:52:10.730 - ERROR *** ERROR CODE = -407, Tran = 2, CLIENT = DB_NAME-db3:broker1_cub_cas_2(6404), EID = 14

    Unknown key {0, 10657, '0', '0', timestamp '08:09:04 PM 07/28/2012'} referenced in B+tree index {vfid: (34890, 4), rt_pgid: 39500, key_type: midxkey}.


    이후 상기와 같은 에러가 발생되고 있습니다.

  • ?
    이용미 2012.08.04 01:55

    안녕하세요. 첨부해주신 내용 감사 드립니다.

     

    데이터베이스가 비정상 종료되면 로그, Data, Index 등이 손상될 가능성이 높습니다. 질문자님의 경우는 아카이브 로그가 손상되어 정상적인 구동이 어려웠던 것으로 보입니다. 로그가 손상되었을 경우, “emergency_patchlog”를 이용하여 로그 복구는 가능합니다만 Data, Index 등의 손상에 유무에 대해서는 알 수 없습니다. 해당 유틸리티 사용 후, DB가 정상적으로 구동 된 것으로 보아 로그 복구는 완료되었음을 알 수 있습니다.

     

    로그 복구 이후 발생한 407번 오류를 살펴보면 select SQL문 수행 시 잘못된 키가 인덱스를 참조한다고 되어있습니다. 이것으로 보아 비정상적인 종료로 인한 인덱스 손상이 발생한 것으로 보입니다. 데이터 손상에 대해서는 현재 알 수 없습니다.

     

    해결 방법으로는 가능한 빠른 시일 내에 2번 방법을 통하여 복구 하시는 것을 권장하지만 해당 방법의 경우 서비스를 중지시킨 후 작업을 해야 합니다. 그러므로 작업이 바로 불가능하시다면 1번 방법을 이용하여 오류를 해결하신 후 빠른 시일 내에 2번 방법을 통하여 복구하시는 것이 좋습니다.

    1.     cubrid checkdb r DB_NAME

    checkdb 유틸리티는 데이터베이스의 일관성을 확인하는 유틸리티로 “-r” 옵션 사용시 자동 수정 작업까지 포함합니다. checked 유틸리티에 대한 자세한 사항은 매뉴얼(http://www.cubrid.com/online_manual/841/admin/admin_db_check.htm)을 참고하시면 됩니다.

    2.     Unloaddb/Loaddb

    재구성에 대한 자세한 사항은 다음 링크를 참고하시면 됩니다.

    Unloaddb : http://www.cubrid.com/online_manual/841/admin/admin_migration_unload.htm

    Loaddb : http://www.cubrid.com/online_manual/841/admin/admin_migration_load.htm

     

    위의 방법으로도 문제가 해결되지 않으신다면 댓글 부탁 드립니다.
  • ?
    freemir 2012.08.06 09:05

    알려주신 방법 중 1번으로 해보니 처리가 안되는 상태입니다.


    cubrid checkdb -r DB_NAME 으로 복구 진행시


    Time: 08/06/12 00:02:10.301 - ERROR *** ERROR CODE = -40, Tran = 9, CLIENT = DB_NAME-db3:checkdb(32270), EID = 5243

    Internal error: 1730 expected pages, 1616 found pages for file VFID 4|43(volume "/var/lib/cubrid822/databases/DB_NAME/DB_NAME_x004").


    상기와 같이 복구 진행이 안되는 상태입니다.

    실 서비스 중인 데이터베이스라 새벽 시간에 unloaddb / loaddb 로 복구를 진행해보고 결과 말씀드리겠습니다.

    감사합니다.

  • ?
    freemir 2012.08.08 18:46

    unloaddb , deletedb, createdb, loaddb 를 통해 복구했습니다.

    loaddb 시 로그를 보면 특정 object가 없다고 나왔습니다.

    이후 쿼리 수행 시 문제는 없는 상태입니다.

    감사합니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 128
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4476
543 cubrid auto increament 동시성 4 dodev 2021.07.21 210
542 cubrid archive log가 삭제되지 않아서, 강제로 삭제할 수 있는 방안을 모색중입니다. 3 bikehee 2021.07.28 197
541 update 문 권한 관련 문의 2 ots21 2021.07.29 92
540 큐브리드 jdbc URL 해석 1 겸둥이k 2021.08.03 936
539 큐브리드에서 덤프하는 방법 질문하겠습니다. 1 겸둥이k 2021.08.04 1249
538 안녕하세요. 큐브리드 DBA권한계정을 잊어버렸을때 찾는방법이 있을까요? 5 겸둥이k 2021.08.10 331
537 oledb 오토커밋 off 방법 2 ots21 2021.08.12 256
536 저장 함수 호출 오류 3 keem 2021.08.12 504
535 Edit Host 에러 (bad record MAC) 8 file 알고싶어요 2021.08.16 546
534 cubrid.jdbc.jci.UConnection.createJciException 에러가 납니다... 4 순대 2021.08.17 452
533 AUTO_INCREMENT 수동 증가 문의 2 cubrid초보 2021.08.19 728
532 큐브리드 같은 쿼리 연속 조회속도 문제 (캐시) 1 겸둥이k 2021.08.19 149
531 cubrid 함수 한글 깨짐 현상 6 file cubrid초보 2021.08.19 586
530 cmd명령어 cubrid broker status 치면 창이 잠깐 떳다가 꺼집니다. 2 겸둥이k 2021.08.24 154
529 큐브리드 커넥션시 혼자할때는 접속잘되었지만 여러명이 붙는순간 에러 1 겸둥이k 2021.08.24 212
528 cubrid 서버가 실행 될때 javasp(자바 저장 프로시저 서버)가 같이 실행 할 수 있는 방법 1 jungsin 2021.08.24 281
527 ADO.NET Connector 문의 1 까망이 2021.08.31 68
526 mssql 마이그레이션 문의 1 file 둠둠둠 2021.08.31 119
525 큐브리드 빅데이터를 효과적으로 import 시키는방법 1 개1발자 2021.08.31 213
524 큐브리드에 제공하는 파티셔닝 사용후 조회시 문제 5 file 연습용 2021.09.01 169
Board Pagination Prev 1 ... 169 170 171 172 173 174 175 176 177 178 ... 201 Next
/ 201

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales