Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 친절한 SQL 튜닝
- 인덱스
- 메소드
- 서버
- 클래스
- 친절한 sql튜닝
- 카카오코딩테스트
- 컬렉션프레임워크
- java
- DBA
- Undo
- 멀티쓰레드
- Spring
- DB
- springboot
- 인덱스 튜닝
- 클라이언트
- SQL
- 오라클
- socket
- 깃허브
- db버퍼캐시
- 인스턴스
- 생성자
- Oracle
- 자바
- SQLP
- 백준
- Swing
- 상속
Archives
- Today
- Total
프리 정보 컨텐츠
PostgreSQL 운영 서버 운영 중 인덱스 추가 방법 본문
반응형
PostgreSQL에서는 인덱스를 생성하는 동안에는 해당 테이블에 읽기전용 Lock (잠금)이 적용됩니다.
그래서 실제 서비스 운영 중에 인덱스를 적용하게 되면, 조회 기능외에는 작동하지 않아 서비스 장애가 발생할 수 있습니다.
그래서 읽기 Lock을 회피하기 위해 CONCURRENTLY 옵션을 추가해서 실행하면 읽기 Lock 없이 인덱스를 추가/삭제 할 수 있습니다.
(단, DDL은 여전히 막혀있습니다.)
CREATE INDEX CONCURRENTLY idx_pay_1 ON pay (pay_method);
다만, 이렇게 할 경우 기존 인덱스 추가 방식 보다는 훨씬 더 오랜 시간동안 인덱스 추가 작업이 진행되는 점을 유의해야 합니다.
반응형