문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 | ||
database:mysql:sequence [2014/07/18 16:31] kwon37xi 만듦 |
database:mysql:sequence [2015/12/13 00:58] kwon37xi [InnoDB 기반 Sequence] |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== MySQL Sequence 시퀀스 ====== | ====== MySQL Sequence 시퀀스 ====== | ||
+ | |||
+ | ===== MyISAM 기반 Sequence ===== | ||
+ | |||
Real MySQL 1판 922페이지 | Real MySQL 1판 922페이지 | ||
+ | < | ||
create table jpa_sequences ( name varchar(16) NOT NULL, curval bigint not null, primary key(name)) ENGINE=MyISAM; | create table jpa_sequences ( name varchar(16) NOT NULL, curval bigint not null, primary key(name)) ENGINE=MyISAM; | ||
줄 21: | 줄 25: | ||
return (Long)nextSequenceObject; | return (Long)nextSequenceObject; | ||
+ | </ | ||
+ | **MyISAM과 InnoDB를 섞어서 사용할 경우 Bakcup/ | ||
+ | * [[https:// | ||
+ | ===== InnoDB 기반 Sequence ===== | ||
+ | * InnoDB 기반 시퀀스는 **시퀀스마다 별도의 테이블**을 만들고 '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * 비록 숫자만 저장하는 테이블이지만 tablespace 크기가 매우 증가할 수 있다. 지속적으로 데이터를 삭제해줘면 삭제된 공간을 재사용해서 증가하지 않게 된다. | ||
+ | ===== InnoDB 기반 Multi Sequence ===== | ||
+ | * [[http:// | ||
+ | * Storage Procedure가 필요하다. | ||
+ | * ISOLATION Level ([[database: | ||
+ | * **Transaction 이 길어질 경우에 무슨 사태가 발생하는지 철저한 테스트가 필요하다.** |