일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- table
- 데이터베이스
- springboot
- DATABASE
- javascript
- reactjs
- restapi
- GIT
- java
- crud
- 자바
- Spring
- 보안취약점
- 컴포넌트
- Vue
- 리액트
- Intellij
- 쿼리
- component
- sql
- React
- 스프링부트
- 개발
- jdk
- mssql
- EXTJS
- JS
- 자바스크립트
- 개발공부
- 스프링
- Today
- Total
목록sql (10)
준준의 기록일지
상기 에러가 발생했을때 sql 연결을 재설정 하도록 수정해야했다. DB에 접속중인 세션을 오랫동안 사용하지 않거나, 네트워크에 문제가 발생하는 경우 DB 세션이 끊어질 수 있다고 한다. DB 세션이 끊어지는 경우 App 입장에서는 재접속 처리를 해주어야 다시 정상적인 서비스가 가능해진다. 팀에서 요청한 에러 발생 시 sql 연결 재설정의 경우 아래 방법을 따르면 될 것으로 보인다. JDBC, autoReconnect = true 옵션을 준다. 해당 옵션은 쿼리를 수행한 다음 DB 세션에 문제가 있으면 단순히 SQLException을 리턴한 후 재접속 처리를 한다. 문제는 트랜잭션 구동 환경에서 수행중이던 트랙잭션은 롤백되어야 하고, 남은 트랜잭션은 수행이 되지 않아야 하는데, autoReconnect 옵..
이번에 고객사 운영서버에서 직접 쿼리 작업을 진행하다가 대형사고를 냈다. 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백만개...
SELECT CONNECTIONPROPERTY('net_transport') AS net_transport, CONNECTIONPROPERTY('protocol_type') AS protocol_type, CONNECTIONPROPERTY('auth_scheme') AS auth_scheme, CONNECTIONPROPERTY('local_net_address') AS local_net_address, CONNECTIONPROPERTY('local_tcp_port') AS local_tcp_port, CONNECTIONPROPERTY('client_net_address') AS client_net_address 여기서 client_net_address가 보통 ip주소다. vip를 사용하는 경우 loca..