일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
- Spring
- minikube
- 티스토리챌린지
- tucker의 go 언어 프로그래밍
- 바이브코딩
- kotlin querydsl
- MySQL
- Linux
- kotlin
- AI
- kotlin coroutine
- Java
- CloudWatch
- aws
- CKA 기출문제
- Kubernetes
- SRE
- APM
- 정보처리기사 실기 기출문제
- golang
- 오블완
- go
- CKA
- Pinpoint
- PETERICA
- 공부
- AWS EKS
- 코틀린 코루틴의 정석
- 기록으로 실력을 쌓자
- 정보처리기사실기 기출문제
- Today
- Total
목록MySQL (6)
피터의 개발이야기
ㅁ 들어가며 대규모 트래픽을 처리하는 서비스나 데이터가 폭발적으로 늘어나는 환경에서는, 데이터베이스의 확장성과 가용성이 무엇보다 중요하다. 오늘은 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 등)구현이 쉽고 직관적, 데이터 쏠림 발생 가..

ㅁ 개요 상황에 따라 GUI가 아닌 터미널에서 SQL 작업을 하게 되는 경우가 있다. 이런 경우 CLI를 통해 직접 SQL를 편집하고 실행하는데, SQL 파일을 통해 편집하여 실행하면 실수나 기존 SQL를 보존하여 더욱 편리하다. 이번 글에서는 맥에 CLI를 설치하고 SQL 파일을 실행하는 과정을 정리하였다. ㅁ Brew를 이용한 mysql과 mysql-client 설치 ㅇ brew 명령어 사용 시 자동완성기능을 이용하면 효율적이다. ㅇ brew install mysql 입력 후 탭 키를 누르면 위의 이미지처럼 install 가능한 목록을 확인 할 수 있다. ㅇ mysql과 mysql-client를 선택한 후 커멘드 실행하면 install이 시작된다. ㅁ 설치 확인 ㅇ 설치 확인을 위해 mysql --v..

데이터의 암호화를 위해 개발하였던 것을 정리하도록 하겠습니다. CryptUtil package com.peterica.swagger.util; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import javax.crypto.Cipher; import javax.crypto.spec.SecretKeySpec; import java.io.UnsupportedEncodingException; import java.math.BigInteger; import java.security.MessageDigest; import org.apache.commons.codec.binary.Hex; @Component @S..

ㅁ 총 연결 connection 수 확인 show status where `variable_name` = 'Threads_connected'; ㅁ 접속 IP별 connection 수 select ip, count(*) cnt from ( select left(HOST,instr(HOST,':')-1) ip from information_schema.processlist where 1 = 1 # and COMMAND = 'Sleep' -- 대기모드 ) temp group by ip order by 2 desc;

내가 자주 사용하는 디비 모니터링 SQL문 정리 디비 부하 시 현재 문제가 되고 있는 프로세스와 SQL을 확인 할 수 있는 쿼리 ############################################################ # 디비 프로세스 확인 ############################################################ select # count(*) * from information_schema.processlist where 1 = 1 # and COMMAND = 'Sleep' and COMMAND != 'Sleep' and ID not in (847, 972) # and HOST like '172.31.21.139%' # and HOST like '1..