DB

[RealMySQL 8.0] Intro

bill's tech log 2025. 7. 2. 10:45

 

 

 

 

Real MySQL 8.0 (1권) | 백은빈 - 교보문고

Real MySQL 8.0 (1권) | MySQL 서버를 활용하는 프로젝트에 꼭 필요한 경험과 지식을 담았습니다!《Real MySQL 8.0》은 《Real MySQL》을 정제해서 꼭 필요한 내용으로 압축하고, MySQL 8.0의 GTID와 InnoDB 클러스

product.kyobobook.co.kr

 

 

 나는 아직 저연차 개발자이지만, 정말 운이 좋게도 회사에서 많은 책임과 권한을 부여받게 되었다.
그 이유는 서비스의 초기 멤버로 합류하여, 기획 단계부터 개발, 출시까지 전 과정을 함께했기 때문이다.

초기 MVP부터 시작하여 1차, 2차 기능 개발을 거쳐 상용화까지 진행한 애플리케이션이 현재 실제 사용자에게 제공되고 있으며, 운영과 유지보수까지 전반을 맡고 있다.


현재 구성된 백엔드 애플리케이션은 일부 Lambda 함수를 제외하고는 모두 ORM 기반으로 구축되어 있다.

ORM을 사용하면서 생산성, 마이그레이션 관리, 반복 로직 추상화 등 많은 편의성을 체감할 수 있었지만, 운영 환경에서는 ORM이 항상 이상적으로만 작동하는 것은 아니라는 점도 느꼈다. 복잡한 비즈니스 로직을 처리하는 과정에서 ORM이 예상과 다르게 동작하거나, 라이브러리에 지나치게 의존하는 구조로 인해 불편함을 겪은 적이 많았다. ( 그렇다고 ORM이 싫다는 이야기는 아니다😅)
복잡한 쿼리를 작성해야 할 경우에는 결국 raw query를 작성하거나 유사한 방식으로 직접 로직을 구현해야 했기 때문이다.

또한, 마이그레이션 과정에서도 몇번의 식은땀을 흘렸던 경험도 있었는데 예를 들어, 단순한 필드 변경을 의도하여 마이그레이션을 시도했으나, ORM이 이를 ALTER가 아닌 DROP - CREATE 방식으로 처리하면서 일부 필드가 날아가는 이슈도 있었다. ( 다행히 밤 시간 때 진행을 했고 RDS에서 1분 단위로 백업을 해두고 있어서 다행히 실질적인 데이터 Loss는 없었다.. ) 


이러한 경험을 통해, 단순히 데이터를 CRUD하는 수준을 넘어서, 실제로 데이터를 안전하게 다루고 효율적으로 저장하는 것의 중요성을 많이 느끼게 되었다. 서비스가 성장함에 따라 대용량 이벤트 처리나 캐시 전략, 애플리케이션 구조 설계등도 중요했지만, 그보다 우선적으로 고려해야 할 것은 데이터베이스 처리 및 관리가 더 중요하다고 느꼈다. 데이터베이스 구조와 성능, 확장성, 운영 전략이 서비스 전체 안정성과 직결된다고 판단했기 때문이다. 

 

이러한 문제의식과 필요성으로 인해 《Real MySQL 8.0》이라는 책을 읽고, 그 내용을 정리하여 블로그에 기록하려고 한다. 단순히 책 내용을 읽기만 하는 것이 아니라, 실무에서 겪은 문제들과 연결하여 실제로 어떻게 활용될 수 있는지를 고민하며 정리하고자 한다.

 

 

'DB' 카테고리의 다른 글

[RealMySQL8.0] 사용자 및 권한  (0) 2025.07.09
[RealMySQL 8.0] 역사 & 설정  (0) 2025.07.08
[TypeORM] cross-env 환경에서 마이그레이션 하기  (0) 2025.04.13
[DB] 뷰(View) 란?  (0) 2024.05.09