Mariadb(innodb) 트랜잭션 복원에 대해 질문이 있습니다. 0 1 1,363

by 영양재 [MySQL] mysql mariadb innodb transaction recovery [2019.08.07 12:13:57]


안녕하세요

제가 오픈스택의 키스톤을 연구하는 도중 궁금한 것이 생겨서 질문글을 올립니다.

키스톤의 데이터베이스는 Mariadb(innodb)를 사용합니다. 

만약 키스톤이 작동도중 전원이 나가서 데이터베이스에 데이터를 수정 또는 저장하는 트랜잭션이 중간에 멈춘다면 mariadb(innodb)는 디폴트로 트랜잭션을 복원하는 기능이 갖추어져 있나요?

아니면 따로 옵션을 설정해주어야 하나요?

찾아보니 innodb_force_recovery 옵션은 정상적인 상황에서는 사용하지 못하던데

옵션이 필요하다면 어떤 옵션이 필요한지, 아니면 innodb_forece_recovery를 쓰는게 맞는지 궁금합니다.

 

by 타울 [2019.08.16 12:54:22]

mariadb 트랜젝션도 동일하게 ACID 를 지원합니다.

정상적으로 종료되지 않은 트랜젝션은 롤백되고, commit 이 완료된 트랜젝션은 절대 손실되지 않습니다. 

관련 파라미터로 innodb_flush_log_at_trx_commit 이 있습니다.

innodb_force_recovery는 innodb 테이블에 문제가 있어서 기동이 실패했을 때 사용하는 옵션입니다.

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입