[MySQL] How to swap PK?
서론 가끔 실제 환경에서 Database가 다운되거나 혹은 서버가 다운되거나 등의 이유로 DB의 무결성이 깨지게 되는 케이스가 존재한다. 임시방편적으로 무결성이 깨진 부분을 복구하는 건 서버 개발자 혹은 DBA의 몫인데, 그 과정에서 Record를 삽입하게 되고, 삽입한 레코드의 순서가 맞지 않는 상황이 발생하게 된다. 이런 상황을 맞닥뜨렸을 때 어떻게 대응할 것인가? 나는 처음 생각한 방법으로, PK를 swap하는 방법을 생각했다. 참고로 필자는 MySQL 5+, 엔진으로는 InnoDB를 사용했다. 미리 보는 결론 더보기 그리고 이 방법은 아주 처참하게 실패했다. 적어도 MySQL에서는. 간단히 말하자면, swap을 PK할 수는 없다. 그렇기 때문에 PK를 제외한 다른 컬럼들의 값을 swap해주면 PK..
Log.Develop/DB
2020. 9. 16. 19:37