일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- minikube
- Kubernetes
- CKA
- CloudWatch
- AWS EKS
- 오블완
- CKA 기출문제
- SRE
- Linux
- PETERICA
- 기록으로 실력을 쌓자
- kotlin coroutine
- 바이브코딩
- go
- APM
- 티스토리챌린지
- Java
- golang
- 공부
- kotlin
- 정보처리기사 실기 기출문제
- tucker의 go 언어 프로그래밍
- MySQL
- Pinpoint
- Spring
- kotlin querydsl
- AI
- 정보처리기사실기 기출문제
- 코틀린 코루틴의 정석
- aws
- Today
- Total
목록Database/MySQL (18)
피터의 개발이야기
ㅁ 들어가며 대규모 트래픽을 처리하는 서비스나 데이터가 폭발적으로 늘어나는 환경에서는, 데이터베이스의 확장성과 가용성이 무엇보다 중요하다. 오늘은 MySQL 샤딩 환경에서 읽기 전용 복제본(Read-Only Replica)을 어떻게 활용할 수 있는지, 그 원리와 실무 적용법을 정리해보았다. 비슷하지만 다른 Elasticsearch의 샤딩 vs MySQL의 샤딩 차이도 정리해 보았다. ㅁ Elasticsearch의 샤딩 vs MySQL의 샤딩 차이구분ElasticsearchMySQL샤딩 방식내장 자동 샤딩 – 인덱스를 여러 샤드(Primary Shard)로 분리하고, 클러스터가 자동으로 데이터 분배수동/외부 샤딩 – MySQL 엔진 자체에는 샤딩 기능 없음, 애플리케이션 또는 미들웨어에서 분산Replica..
ㅁ 들어가며ㅇ MySQL의 분산처리를 위한 샤딩(Sharding)에 대해서 정리하였다. ㅁ MySQL 샤딩(Sharding)이란?MySQL 샤딩은 대용량 데이터를 여러 개의 데이터베이스(샤드, shard)에 수평 분산 저장하는 방법이다. 즉, 하나의 거대한 데이터베이스에 모든 데이터를 넣지 않고, 여러 서버에 데이터를 나눠 저장함으로써 성능과 확장성을 높인다. ㅁ 샤딩 방식방식설명장점/단점Modular(모듈러) 샤딩샤딩 키(예: user_id)의 해시값을 샤드 개수로 나눈 나머지로 샤드 결정데이터 분포가 균등, 샤드 추가/제거 시 데이터 이동 필요범위 기반 샤딩샤딩 키의 값 범위로 샤드 결정 (예: ID 1~99999 → A, 100000~199999 → B 등)구현이 쉽고 직관적, 데이터 쏠림 발생 가..

ㅁ 들어가며ㅇ JPA를 사용 중인 프로젝트에서 중복체크 기능을 구현하면서 Exists와 Count의 성능차이를 고민하였다.ㅇ [QueryDSL] fetchFirst()와 fetchOne()의 차이을 정리하면서 Count vs Limit vs Exists 성능 차이에 대해서 정리하였다.ㅇ JPA exists 쿼리 성능 개선을 보고, 이해한 부분을 정리하였다. ㅁ성능 비교ㅇ 대량의 데이터(약 5600만 건)가 있는 테이블에서 COUNT와 EXISTS의 성능을 비교해보면 2배에 가까운 성능 차이가 나타났다.ㅇ 데이터가 1억 건 이상으로 늘어나면 이 차이는 더욱 벌어질 것이다.COUNT: 9.079초EXISTS: 5.278초 ㅁ 원인분석ㅇ 이러한 성능 차이의 원인은 각 쿼리의 동작 방식에 있다- EXISTS: ..

ㅁ 들어가며ㅇ DBA인 동료와 MySQL의 SSL 통신 방법에 대해서 이야기 나누면서 공부한 내용이다.ㅇ MySQL 문서와 AWS 문서를 보며 공부하였다. MySQL에서 TLS 연결은 어떻게 설명하는가?ㅁ MySQL 참조 문서 링크8.3 Using Encrypted Connections 8.3.1 Configuring MySQL to Use Encrypted Connections 8.3.2 Encrypted Connection TLS Protocols and Ciphers 8.3.3 Creating SSL and RSA Certificates and Keys 8.3.4 Connecting to MySQL Remotely from Windows with SSH 8.3.5 Reusing SSL Sessio..

ㅁ 들어가며 PostgreSQL과 MySQL의 차이점을 알아보았다. 아래의 글들을 읽고 정리해보았다. ㅇ AWS - MySQL과 PostgreSQL의 차이점은 무엇인가요? ㅇ 우아한형제들 - Aurora MySQL vs Aurora PostgreSQL ㅁ DBMS 랭킹 PostresSQL의 인기는 날로 높아지고 있는 추세이다. ㅁ PostgreSQL VS MsSQL 비교 카테고리 MySQL PostgreSQL 데이터베이스 기술 순수 관계형 DBMS 객체 관계형 DBMS 기능 보기, 트리거 및 프로시저와 같은 DB 기능을 제한적으로 지원 구체화된 뷰, INSTEAD OF 트리거, 여러 언어의 저장 프로시저와 같은 최고급 데이터베이스 기능을 지원 데이터유형 숫자, 문자, 날짜 및 시간, 공간, JSON 기하..

ㅁ 방법 요약 # root 로컬 접속 mysql -u root -p # 호스트 접속(도메인) mysql -h peterica.iptime.org -P 3307 -u {user} -p # 호스트 Database 접속 mysql -h peterica.iptime.org -P 3307 -u {user} -p {database_name} # 호스트 접속(ip) mysql -h 127.0.0.1 -P 3307 -u {user} -p ㅇ대문자 구분해야 주의!! -P는 대문자다. ㅁ들어가며 사용자 비밀번호 바꾸려면 root로 들어가야 하는데, 맨날 까먹어서 정리해 놓음. docker로 만들어 놔서 docker -> 컨테이너 -> mysql cli로 접속해야 한다. update... [Mysql] brew mysql ..

ㅁ 개요 이전 글인 SQL 연습을 위한 실습 사이트에 대해서 작성하였다. 이번에는 로컬 Docker에서 MySQL 환경을 구성하고 샘플 데이터를 적재하는 과정을 정리하였다. MySQL 5.7 설치과정은 [MySQL] 실습환경 구성하기, Mysql Docker 설치, 5.7을 참조하세요. ㅁ MySQL 설치 $ docker run -d -p 3308:3306 \ # 로컬 3308포트를 컨테이너 3306포트로 맴핑 -e MYSQL_ROOT_PASSWORD=strong-password \ # 비밀번호 설정 -v /Volumes/500GB/data/mysql80:/var/lib/mysql \ # 컨테이너의 mysql폴더를 로컬에 마운트하여 데이터가 삭제되는 것을 예방한다. --name mysql_80 mysql..

ㅁ 들어가면서 MySQL의 용량을 분석하기 위한 쿼리를 정리하였습니다. update... 댓글의 질문 때문에 확인한 결과, 테이블이 뷰인 경유 용량과 건수는 null로 나타난다. ㅁ 데이터베이스 용량 확인 SELECT table_schema AS 'Database', ROUND(SUM(data_length+index_length)/1024/1024, 1) AS 'Size(MB)' FROM information_schema.tables WHERE table_schema not in ('sys', 'mysql', 'information_schema', 'performance_schema') GROUP BY table_schema ORDER BY 2 DESC; ㅁ 전체 용량 확인 SELECT ROUND(SUM..

ㅁ 개요 MySQL을 공부하면서 대용량 샘플 데이터가 필요할 때가 있습니다. 이를 위해 MySQL 홈페이지에서 샘플데이터를 제공합니다. 이번 글에서는 샘플데이터의 종류와 설치 방법에 대해서 정리해 보았습니다. ㅁ Example Databases Title DB Download Guide Page PDF employee data (large dataset, includes data and test/verification suite) GitHub View US Ltr | A4 world database TGZ | Zip View US Ltr | A4 world_x database TGZ | Zip View US Ltr | A4 sakila database TGZ | Zip View US Ltr | A4 ai..