일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- DATABASE
- 보안취약점
- 개발
- sql
- 쿼리
- EXTJS
- restapi
- GIT
- reactjs
- Intellij
- Vue
- 자바
- table
- jdk
- 개발공부
- JS
- 스프링부트
- Spring
- 데이터베이스
- springboot
- crud
- 컴포넌트
- java
- React
- javascript
- 리액트
- mssql
- 자바스크립트
- 스프링
- component
- Today
- Total
목록기본키 (2)
준준의 기록일지
이번에 고객사 운영서버에서 직접 쿼리 작업을 진행하다가 대형사고를 냈다. 2021년 1월 14일.. 백업 및 접속이력 테이블에 데이터가 실제로 insert되는 시간을 확인하기 위해 temp table에 데이터생성일자 컬럼을 추가했고, 데이터를 쌓고 있었다. 이 문제는 어려움 없이 해결했는데, 아무래도 고객사 DB기 때문에 3시간에 한번씩은 데이터를 비워주는 작업이 필요했다. 이 부분을 해결하기 위해서 datediff, dateadd between등 다양한 시도를 했고, 일이 터졌다. 해당 부분을 계속 테스트하기 위해서 where절에 최신 데이터만 insert해주는 조건을 빼버린 것.. 얼마나 멍청했는지, 스케줄러는 1분마다 도는데, 1분마다 30,000개의 데이터가 누적된 것이다. 3시간뒤 약 5백만개...
이번에 고객사 운영서버에서 직접 쿼리 작업을 진행하다가 대형사고를 냈다. 2021년 1월 14일.. 백업 및 접속이력 테이블에 데이터가 실제로 insert되는 시간을 확인하기 위해 temp table에 데이터생성일자 컬럼을 추가했고, 데이터를 쌓고 있었다. 이 문제는 어려움 없이 해결했는데, 아무래도 고객사 DB기 때문에 3시간에 한번씩은 데이터를 비워주는 작업이 필요했다. 이 부분을 해결하기 위해서 datediff, dateadd between등 다양한 시도를 했고, 일이 터졌다. 해당 부분을 계속 테스트하기 위해서 where절에 최신 데이터만 insert해주는 조건을 빼버린 것.. 얼마나 멍청했는지, 스케줄러는 1분마다 도는데, 1분마다 30,000개의 데이터가 누적된 것이다. 3시간뒤 약 5백만개...