Loading...
MySQL 9.5 Reference Manual 9.5의 15.3.5 LOCK INSTANCE FOR BACKUP and UNLOCK INSTANCE Statements의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
1LOCK INSTANCE FOR BACKUP 2 3UNLOCK INSTANCE
LOCK INSTANCE FOR BACKUP은 온라인 백업 동안 DML을 허용하면서도 일관성 없는 스냅샷을 초래할 수 있는 작업을 방지하는 인스턴스 수준의 backup lock 을 획득합니다.
LOCK INSTANCE FOR BACKUP 구문을 실행하려면 BACKUP_ADMIN 권한이 필요합니다. BACKUP_ADMIN 권한은 이전 버전에서 MySQL 9.5로 인플레이스 업그레이드를 수행할 때 RELOAD 권한을 가진 사용자에게 자동으로 부여됩니다.
여러 세션이 동시에 backup lock을 보유할 수 있습니다.
UNLOCK INSTANCE는 현재 세션이 보유한 backup lock을 해제합니다. 세션이 종료되면 해당 세션이 보유한 backup lock도 해제됩니다.
LOCK INSTANCE FOR BACKUP은 파일이 생성, 이름 변경, 삭제되는 것을 방지합니다. REPAIR TABLE TRUNCATE TABLE, OPTIMIZE TABLE, 그리고 계정 관리 구문은 블록됩니다. Section 15.7.1, “Account Management Statements”를 참고하십시오. InnoDB redo 로그에 기록되지 않는 InnoDB 파일을 수정하는 작업도 블록됩니다.
LOCK INSTANCE FOR BACKUP은 사용자가 생성한 임시 테이블에만 영향을 미치는 DDL 작업을 허용합니다. 결과적으로, backup lock이 유지되는 동안 사용자가 생성한 임시 테이블에 속한 파일은 생성, 이름 변경, 삭제가 가능합니다. 바이너리 로그 파일 생성도 허용됩니다.
PURGE BINARY LOGS는 해당 인스턴스에 대해 LOCK INSTANCE FOR BACKUP 구문이 효력을 발휘하고 있는 동안에는 발행할 수 없습니다. 이는 서버에서 파일을 제거함으로써 backup lock의 규칙을 위반하기 때문입니다.
LOCK INSTANCE FOR BACKUP으로 획득한 backup lock은 트랜잭션 잠금 및 FLUSH TABLES tbl_name [, tbl_name] ... WITH READ LOCK이 획득하는 잠금과는 독립적이며, 다음과 같은 구문 시퀀스가 허용됩니다:
1LOCK INSTANCE FOR BACKUP; 2FLUSH TABLES tbl_name [, tbl_name] ... WITH READ LOCK; 3UNLOCK TABLES; 4UNLOCK INSTANCE;
1FLUSH TABLES tbl_name [, tbl_name] ... WITH READ LOCK; 2LOCK INSTANCE FOR BACKUP; 3UNLOCK INSTANCE; 4UNLOCK TABLES;
lock_wait_timeout 설정은 LOCK INSTANCE FOR BACKUP 구문이 잠금 획득을 포기하기 전에 대기하는 시간의 양을 정의합니다.
15.3.4 SAVEPOINT, ROLLBACK TO SAVEPOINT, and RELEASE SAVEPOINT Statements
15.3.6 LOCK TABLES and UNLOCK TABLES Statements