지금 내가 접속해 있는 데이터베이스 Connection 상태를 항상 확인해라.
운영 DB인지, 개발 DB인지 알고 있어야 한다.
개발 DB에서 개발을 끝내고, 운영 DB에서 통합 테스트를 하는 경우가 있다.
결국 개발자가 테스트 할 때는 운영 중인 데이터로 최종 확인을 해야 한다.
DB tool에서 접속을 해서 확인할 수도 있고, Application에서 connection 상태를 변경해서 확인할 수도 있다.
이때 내가 운영인지 개발인지 제대로 확인을 안 하고 테스트를 하다간 혼자서 감당하기 힘든 상황이 생길 수 있다.
우선 개발 DB에서는 사실 뭘 해도 상관없다. 개발이니까.
운영 DB에서 실행하려는 모든 작업을 개발 DB에서 문제가 없는지 확인 후 실행해라.
그러나 운영 DB로 직접 붙어서 테스트를 하거나, 쿼리를 직접 조회하는 경우라면 신경을 써야 한다.
그렇다면 운영 DB에서 주의해야 할 것은 무엇일까.
1. 부하를 주는 쿼리인지 플랜을 꼭 확인하자.
개발 DB와 다르게 운영 DB에는 데이터양이 많을 수 있다.
예를 들어 개발에는 1000건 정도가 있었는데, 운영에는 100만 건 정도 있을 수 있다.
이럴 때 개발에는 문제가 없었던 쿼리가 운영에는 문제가 될 수 있다.
검증되지 않은 쿼리라면 플랜을 확인하여 부하가 없는지 체크 후 실행하자.
이력을 쌓는 테이블이라면 꼭 조건에 시간 범위를 줘서 실행할 것을 권한다.
만약 내가 잘못 날린 쿼리로 인하여 DB 리소스를 많이 잡아먹는다면,
운영 중인 다른 부분에 영향을 미칠 수 있기 때문에 항상 주의해야 한다.
2. Delete, Update 할 때 조건을 주었는지 확인하자.
데이터를 업데이트 치거나 삭제할 때는 조건을 주었는지 꼭 확인해야 한다.
조건이 없으면 전체 데이터를 대상으로 업데이트 혹은 삭제가 되기 때문이다.
운영 중인 데이터를 전체 다 변경해 버리면 업무에 영향을 주기 때문에 절대주의를 요한다.
3. Commit, Rollback을 했는지 확인하자.
Commit은 변경 내용을 데이터베이스에 최종 반영하겠다는 명령어이고, Rollback은 원복 하겠다는 명령어이다.
Insert, Delete, Update 후 Commit이나 Rollback을 하지 않으면 변경하고자 하는 테이블에 락이 걸리게 되므로
꼭 commit 하는 습관을 들이자.
4. 운영 환경에 App 배포를 한다면, 운영 DB인지 확인하자.
소스상에서 DB connection 정보를 변경해주는 경우가 있다.
이럴 때 운영환경에 배포를 한다면 꼭 운영 DB로 연결되어있는지 확인해야 한다.
결론적으로 운영 DB를 사용할 때,
누군가 '이 쿼리 누가 실행한 거냐'라고 작업자를 찾고 있다면?
그럼 뭔가 잘못되었다는 것이다...
'회사노하우' 카테고리의 다른 글
[신입사원에게] 회사에서 이것만은 제말 하지마라 (0) | 2022.01.02 |
---|---|
[신입사원에게] 메모하고, 메모하고, 또 메모하라. (0) | 2021.12.31 |
[신입사원에게] 야근을 해야 할 때 (0) | 2021.12.30 |
[신입사원에게] 업무 효율 상승시키는 유용한 도구 추천 7가지 (0) | 2021.12.29 |
[신입사원에게] 회사 준비물 챙기기 (0) | 2021.12.29 |