MySQL 자동 증분 열이 10개 증가합니다. 왜죠?
개체 ID를 Int 또는 Bigint로 만든 테이블이 몇 개 있는데, 두 경우 모두 자동으로 10씩 증가합니다(즉, 첫 번째 삽입은 개체 ID 1, 두 번째 삽입은 개체 ID 11, 세 번째 삽입은 개체 ID 21 등).두 가지 질문:
왜 그럴까요?
그것이 문제입니까?
변경하지 마십시오.auto_increment_increment
ClearDB는 고의로 이 작업을 수행하고 있습니다.설명서에 설명되어 있습니다.
ClearDB는 순환 복제를 사용하여 마스터 마스터 MySQL 지원을 제공합니다.따라서 모든 경우에 한 마스터가 다른 마스터와 동일한 키를 사용하지 않도록 auto_increment 키(또는 시퀀스)와 같은 특정 항목을 구성해야 합니다.특정 키를 건너뛰도록 MySQL을 구성하고 사용된 각 키에 대해 특정 오프셋을 사용하도록 MySQL을 적용하여 이 작업을 수행합니다.우리가 2가 아닌 10의 값을 사용하는 이유는 향후 개발을 위해서입니다.
자동 증분의 시드 값이 10으로 설정되지 않았는지 확인하려면 이 항목을 선택합니다.
다음을 통해 확인할 수 있습니다.
SELECT Auto_increment FROM information_schema.tables WHERE table_name='the_table_you_want';
다른 곳에서 언급한 것처럼 시스템 변수 @@set_auto_increment_increment를 사용하여 변경할 수 있습니다.
SET @@auto_increment_increment=1;
값을 하나가 아닌 다른 숫자로 시작하려면 다음을 수행할 수 있습니다.
ALTER TABLE tbl AUTO_INCREMENT = 100;
@Jim Fiorato 링크를 제공해 주셔서 감사합니다.
자동 증분 값이 얼마나 증가하는지 확인하려면 다음 쿼리를 사용합니다.
SHOW VARIABLES LIKE 'auto_inc%';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| auto_increment_increment | 10 |
| auto_increment_offset | 4 |
+--------------------------+-------+
자동 증분 값은 MySQL 시스템 변수에 설정됩니다.
다음을 참조하십시오. http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#option_mysqld_auto-increment-increment
레코드가 생성되지 않은 경우 IGNORE 속성과 함께 insert를 사용하는 경우 자동 증분 값이 점프할 수 있습니다.
insert IGNORE into my_table set column=1
언급URL : https://stackoverflow.com/questions/206751/mysql-autoincrement-column-jumps-by-10-why
'source' 카테고리의 다른 글
스프링 지속성 프레임워크를 사용하여 오라클 함수 또는 저장 프로시저를 호출하는 방법은 무엇입니까? (0) | 2023.08.15 |
---|---|
github의 동일한 분기에서 서로 다른 두 커밋을 비교하는 방법은 무엇입니까? (0) | 2023.08.15 |
양식 제출에서 제출 사용 안 함 단추 (0) | 2023.08.15 |
파워셸에서 크롬 개체 인스턴스화 (0) | 2023.08.15 |
CLOB 열에서 Oracle과 함께 GROUP BY를 사용하는 방법은 무엇입니까? (0) | 2023.08.15 |