CentOS에서 MySQL 양방향 마스터-슬레이브 복제 설정하기

사전 준비 사항 이 설정을 시작하기 전에 기본 MySQL 마스터-슬레이브 복제 개념을 숙지해야 합니다. 본 가이드는 기존 단방향 복제 환경을 양방향으로 확장하는 방법을 다룹니다. 환경 구성: 첫 번째 서버: 192.168.153.130 (기존 마스터) 두 번째 서버: 192.168.153.131 (기존 슬레이브) 1. 기존 슬레이브 서버에서 복제 계정 생성 192.168.153.131 서버에 접속 ...

6월 3일 01:18에 게시됨

MyBatis-Plus-Join과 InsCode 플랫폼으로 5분 만에 복잡한 연관 조회 애플리케이션 개발하기

빠른 체험 InsCode(快马) 플랫폼 (https://www.inscode.net)에 접속합니다. 입력창에 다음 내용을 입력합니다: Spring Boot와 MyBatis-Plus-Join을 기반으로 한 사원 관리 시스템을 생성하세요. 시스템에는 부서 테이블과 사원 테이블이 포함되어야 하며, 다음 기능을 구현해야 합니다: 1. 기본적인 부서 CRUD 연산 2. 기본적인 사원 CRUD 연산 3. 부서 조회 시 해당 ...

6월 2일 23:44에 게시됨

MySQL 성능 평가를 위한 Sysbench 기반 압력 테스트 전략

데이터베이스 성능 병목 현상의 핵심 요소 웹 애플리케이션 아키텍처에서 대부분의 구성 요소는 수평 확장(horizontal scaling)을 통해 용량을 쉽게 증가시킬 수 있습니다. 네트워크 대역폭, 애플리케이션 서버 클러스터, 캐시 인프라(Redis, Memcached 등)는 추가 서버를 배포함으로써 즉각적인 성능 향상을 기대할 수 있습니다. 그러나 데이터베이스, 특히 MySQL과 같은 ...

6월 2일 21:45에 게시됨

MySQL 락(Lock) 완벽 가이드: 글로벌 락, 테이블 락, 로우 락 이해하기

MySQL에서는 락(Lock)을 적용하는 범위에 따라 크게 글로벌 락(Global Lock), 테이블 락(Table Lock), 로우 락(Row Lock) 세 가지 유형으로 나눌 수 있습니다. 각 락의 특징과 사용법을 상세히 알아보겠습니다. 1. 글로벌 락 (Global Lock) 글로벌 락 사용법 글로벌 락을 사용하려면 다음 명령어를 실행합니다: FLUSH TABLES WITH READ LOCK; 이 명령 실행 후 데이터베이 ...

6월 2일 21:34에 게시됨

스프링부트와 Vue 기반 문화예술 행사 디지털 홍보 시스템 구현

시스템 개요 및 필요성 현대 사회는 문화 다양성과 예술 접근성에 대한 수요가 급증하고 있다. 글로벌화 속도가 빨라짐에 따라 예술 행사 수가 급격히 증가했지만, 전통적인 홍보 방식인 포스터, 배너, 오프라인 광고 등은 타겟 대상에게 정확하게 도달하기 어렵고, 정보 과잉 상황에서 사용자 관심을 확보하는 데 한계가 있다. 이에 따라 행사 운영자는 높은 홍보 비용, ...

6월 2일 19:11에 게시됨

Keepalived를 활용한 MySQL 이중화 아키텍처 구축

1. 설계 개요 프로덕션 환경에서 MySQL 클러스터는 높은 가용성, 확장성, 관리 용이성 및 낮은 비용을 요구합니다. 이 글에서는 실무에서 자주 사용되는 MySQL Active-Active 복제 아키텍처를 소개합니다. 핵심 아이디어는 MySQL 복제 기술을 사용하여 두 대의 MySQL 서버가 서로를 Master로 인식하고, 동시에 상대방의 Slave 역할을 수행하도록 구성하는 것입니다. 이를 ...

6월 1일 22:44에 게시됨

MySQL 파티션 자동 관리(SpringBoot+MybatisPlus)

1. 개발 환경 SpringBoot MybatisPlus MySQL 2. 개요 이 솔루션은 다음과 같은 기능을 제공합니다: @Scheduled 어노테이션을 사용한 일일 스케줄러를 통해 현재 데이터베이스의 모든 파티션 테이블을 조회합니다(여기서는 시간 범위로 파티셔닝). 남은 파티션 수가 설정된 예비 파티션 수보다 적은 경우(사용자 정의 예비 파티션이 없는 경우 기본 설정 사용), 필요한 ...

6월 1일 22:05에 게시됨

MySQL 문자열, 날짜, 집계 함수 활용 기법

문자열 처리 FIND_IN_SET을 이용한 콤마 구분 값 검색 FIND_IN_SET(substring, str) 함수는 주어진 하위 문자열이 콤마로 구분된 문자열 내에 존재하는지 확인하고, 첫 번째 일치 위치를 반환합니다. 매칭되지 않으면 0을 반환하며, 대상 문자열이 콤마로 분리되지 않은 경우에도 정상 동작하지 않습니다. SELECT FIND_IN_SET('b', 'a,b,c'); -- 결과: 2 SELECT FIND_IN_ ...

6월 1일 21:02에 게시됨

CentOS 7에서 Cacti 모니터링 시스템 설치 및 설정

LNMP 환경 준비 먼저 웹 서버, 데이터베이스, PHP 환경을 구성합니다. 공식 사이트를 통한 자동 설치: https://lnmp.org/install.html 또는 수동 설치: yum 패키지 매니저를 사용하거나 직접 소스 설치 가능 (구글 검색 참고) SNMP 및 그래프 도구 설치 yum install -y net-snmp net-snmp-libs net-snmp-utils net-snmp-devel net-snmp-perl yum install -y rrdtool ...

6월 1일 01:51에 게시됨

Spark SQL에서 Hive 메타스토어 연결 설정 방법

Hive 메타스토어를 사용하는 Spark SQL 환경 구성 Spark SQL을 통해 Hive 테이블에 접근하려면 Spark가 Hive의 메타데이터 저장소(Metastore)에 연결할 수 있도록 설정해야 한다. 이를 위해 MySQL 기반의 Hive Metastore와 Spark 간의 연동을 구성하는 절차를 설명한다. 1. MySQL에 Hive 메타스토어 데이터베이스 생성 Hive가 테이블 스키마 및 파티션 정보를 저장할 수 ...

5월 31일 23:10에 게시됨