나는 홀리데이 중 발생한 18 개의 숫자가 내 oracle 시퀀스에 있음을 발견했으며 로그 파일에서이 범죄의 흔적을 발견하지 못했습니다. 시퀀스가 업데이트되거나 시퀀스 번호가 사라지는 것을 추적 할 수있는 방법을 알 수 있습니까?오라클에서 시퀀스가 업데이트되었을 때
답변
다른 답변/의견 상태와 마찬가지로 시퀀스는 갭이없는 것으로 보장되지 않습니다. 갭은 다양한 방법으로 발생할 수 있습니다.
시퀀스의 한 가지는 기본값이 CACHE 20
입니다. 즉, 호출되면 NEXTVAL
데이터베이스의 시퀀스 실제로, (20)에 의해 증가되는 값을 반환하고, 다음의 19의 값은 단지 메모리로부터 반환되는 수단 (공유 풀.)
시퀀스라면 공유 풀에서 세월이 지났거나 공유 풀이 플러시되거나 데이터베이스가 다시 시작되면 시퀀스 메모리 캐시의 값은 다음에 시퀀스가 데이터베이스에서 값을 가져 오므로 손실됩니다. 마지막으로.
공휴일에 일어났다고 말하면서 시퀀스에서 메모리의 2 개 값을 사용한 것으로 추정되는데 DBA는 공휴일에 유지 보수를 수행하여 공유 풀을 비울 때까지 남은 18 개 값 시퀀스 메모리 캐시에서 사라집니다.
정상적인 동작과 시퀀스가 빠르게 작동하는 이유입니다. 당신은 NOCACHE NOORDER
에 의해 갭이없는 곳으로 "더 가깝게"갈 수는 있지만 성능이 떨어지며 어쨌든 틈이 생기지 않습니다.
오라클 시퀀스는 기본적으로 NOORDER
입니다. 오라클 설명서 https://docs.oracle.com/cd/B13789_01/server.101/b10759/statements_6014.htm을 참조하십시오. 그러므로 NOORDER
동작은 예상대로 될 수 없습니다. 오라클 시퀀스가 ORDER
에 있는지 여부를 확인할 수 있습니다. 그렇지 않은 경우 다른 문제가 있습니다.
시퀀스는 간격없는 일련의 숫자를 생성하지 않을 수도 있습니다. 다중 사용자 환경에서 확장 성이 뛰어난 일련의 (고유 한) 번호를 생성하는 데 사용됩니다.
응용 프로그램에서 테이블의 숫자 식별자가 간격없이 순차적이어야하는 경우 해당 식별자를 생성하는 다른 방법이 필요합니다.
- 1. 브라우저가 업데이트되었을 때 CSS를 다시로드하도록 강요하십시오.
- 2. PHP - 파일이 업데이트되었을 때 자동 감지
- 3. 오라클에서
- 4. 업데이트되었을 때 iOS 앱이 다운되지만 새로로드되지 않을 때
- 5. 어떻게 오라클에서
- 6. 바운드 목록의 기존 항목이 업데이트되었을 때 ListView를 업데이트하는 방법
- 7. Visual Studio Team Services에는 파일이 업데이트되었을 때 알림 아이콘이 있습니다.
- 8. MySQL 테이블이 마지막으로 업데이트되었을 때 어떻게 PHP 페이지를 표시합니까?
- 9. 열이 업데이트되었을 때 데이터를 삽입하는 mysql 트리거를 생성하십시오.
- 10. 변수 값이 업데이트되었을 때 JavaScript 변수를 HTML5 캔버스에 다시 작성
- 11. ExecuteNonQuery가 1 레코드 만 업데이트되었을 때 값 2를 반환합니다.
- 12. OptaPlanner를위한 최상의 솔루션이 업데이트되었을 때 선택한 이동 방법은 무엇입니까?
- 13. 오라클에서 파티셔닝 테이블을 만들 때 문제가 발생했습니다.
- 14. 오라클에서 Postgres로
- 15. 오라클에서 행
- 16. Facebook 프로필 사진이 업데이트되었을 때받을 수 있습니까?
- 17. 시퀀스가 중복 값을 생성합니다.
- 18. 오라클에서 사용한 데이터 블록보기
- 19. 오라클에서 변수 실행
- 20. 자바 - 이스케이프 시퀀스가 손실되었습니다.
- 21. 지연 시퀀스가 가정됩니까?
- 22. MySQL의 UNIX_TIMESTAMP의 기능은 오라클에서
- 23. 엔터티 또는 해당 관계가 업데이트되었을 때의 추적
- 24. 오라클에서 작동하지 않는 조합
- 25. CLOB에 이스케이프 시퀀스가 보존됩니까?
- 26. 내가 두 시퀀스가 문자열
- 27. Collatz 시퀀스가 4에서 종료됩니다.
- 28. Postgres 시퀀스가 동기화되지 않음
- 29. iframe에서 div 시퀀스가 깨졌습니다.
- 30. 내 스프라이트의 이미지 시퀀스가
아마 18 레코드가 삭제 되었습니까? 해당 테이블에서 일종의 감사 트리거가 있으면이를 해결할 수 있습니다. 그게 왜 "범죄"입니까? – toddlermenot
시퀀스 번호의 갭은 문제가되지 않습니다. 당신은 그것을 무시할 수 있습니다. 시퀀스에 의해 생성 된 값은 전혀 의미가 없으며 42,60,4546, -35345 또는 632023485 값을 사용하면 문제가되지 않습니다. –