1. 데이터베이스 전용 툴
- DB별 SQL 차이: 같은 SQL이라도 DB마다 명령어 차이가 존재합니다.
- 예: MongoDB → 지도 데이터 같은 특수 자료형 제공 → 일반 String 접근 불가
- Migration 정책
- update : 변경된 데이터만 반영 (실무에서 주로 사용)
- create, create-drop : 데이터베이스를 새로 만들거나 싹 밀고 시작
2. MySQL과 MariaDB
- MySQL
- 보수적인 DB로 알려져 있으며 메모리 안정성이 좋음
- Oracle DB
- 상용 서비스에서 많이 활용
- MariaDB
- MySQL에서 발전된 형태
- 기능적으로 진보 + 지도 데이터 같은 특수 데이터 지원
3. 데이터베이스 운영 원칙
- 프로젝트 폴더와 DB는 분리해야 한다.
→ 반드시 외부화/이원화 후 서버 URL로 연결 - DB 환경 분리
- 운영 DB: 실제 사용자 서비스용
- 개발 DB: 개발자 테스트용
- 테스트 DB: 안정화 테스트용
- 백업 DB: 장애 대비
💡 안정성 지표
- DB 안정화율이 **100%**라면 365일 가동
- 50%라면 약 185일 가동
4. 데이터 Export
- DB 데이터를 엑셀로 변환 가능
- 사실상 CSV가 엑셀의 원형(부모격)
- CSV → Excel Spreadsheet 변환 활용
5. 서버와 빌드 개념
- 코드 레벨
- Scan, Compile, Interpret → 파이썬 같은 하이레벨 언어
- 하이레벨 → C 언어 → 로우레벨 순
- Build & Execute
- 빌드 = 파일을 바이너리(010101..)로 변환
- 실행 = 빌드된 결과 수행
- Gradle
- 여러 파일을 묶어 빌드하는 툴
- DB/버전 관리에도 활용
- JDK 안에서 단일 실행이 아닌 전체 빌드를 가능케 함
6. 앱 개발과 DB
- 앱은 프론트엔드와 백엔드가 섞여 있는 느낌
- 앱 개발은 양쪽 모두 경험한 사람이 유리
- Flutter, React Native: 일부 제약 (예: 소셜 로그인 규정 적용 시 한계 있음)
7. 외부 키와 종속 관계
- Foreign Key → 하위 테이블에 설정
- on_delete=models.CASCADE → 부모 모델이 삭제되면 하위 모델도 같이 삭제
✍️ 이번 강의는 데이터베이스 운영의 실무 개념부터 서버 빌드 프로세스, 그리고 앱 개발 시 DB 활용 관점까지 폭넓게 짚어준 시간이었습니다.
특히 MySQL vs MariaDB 비교, Migration 정책, DB 안정성 지표는 실무에서 바로 참고할 수 있는 중요한 내용이었습니다.
'기타' 카테고리의 다른 글
| GitLab Issue (0) | 2026.05.20 |
|---|---|
| Next.js 환경변수 설정, GitLab Runner 등록 (1) | 2026.04.11 |
| 프로그램 기본 개념 2 (OS, 모바일 앱 개발, 시간 복잡도, 데이터 베이스, 깃허브, AI 활용) (8) | 2025.08.17 |
| 프로그래밍 기본 개념 (스레드, 라이브러리, JWT, HTTP...) (5) | 2025.08.10 |
| 파이썬 기초 문법 2 (변수명 규칙, 연산자, 런타임 에러, 컴파일 에러) (0) | 2025.08.10 |