본문 바로가기

DB

(3)
커버링 인덱스를 적용한 조회 성능 개선 조회 성능 개선하면서 커버링 인덱스를 적용하여 조회 성능을 향상한 내용입니다. 현재 프로젝트에서 게시글 조회기능의 쿼리는 다음과 같습니다.select b1_0.id, b1_0.content, b1_0.created_at, b1_0.created_date, b1_0.deleted, b1_0.highest_temperature, b1_0.like_count, b1_0.lowest_temperature, b1_0.member_id, b1_0.open, b1_0.place, b1_0.ranking, b1_0.road_condition, b1_0.updated_at, ..
NCP를 활용한 데이터베이스(MySQL) Replication 구성 개요 개인 프로젝트에 데이터베이스 Replication을 적용해 보자 NCP를 사용하여 환경 구축 이번 프로젝트에서는 NCP를 활용하여 데이터베이스 서버를 구성하였습니다. NCP로 Master 서버 1개와 Slave 서버 1개를 준비하였습니다. 스펙은 다음과 같습니다. DBMS: 이미지 MySQL 5.7 OS: ubuntu-14.04 서버 사양: Compact 1 vCPU, 2GB Mem, 50GB Disk 서버 인코딩 설정 Mysql 서버를 처음 생성하였을 때 기본 CharacterSet이 latin1입니다. 이걸 UTF8로 변경하지 않으면 한글이 깨져서 보입니다. my.cnf 파일을 열어 인코딩 설정을 해야 합니다. 파일 위치를 제대로 찾지 못하여 헤매었습니다. 다음의 명령어로 my.cnf의 위치를 ..
데이터베이스 클러스터링과 리플리케이션 개요 데이터베이스를 개인프로젝트를 하면서 한 개를 사용한다. 훗날 사용자가 많아지는 것을 가정하여 데이터 베이스를 확장해야 할 때 선택할 수 있는 방법 중 Replication과 Clustering에 대해 알아보고자 합니다. Clustering 클러스터링은 하나의 데이터베이스를 여러 개의 서버를 수평적으로 구성하여 사용하는 것을 말합니다. 한 개의 서버만 사용한다면 서버에 문제가 생겼을 때 전체 서비스에 문제가 생기는 것을 방지할 수 있습니다. 하나의 서버의 문제가 생기더라도 다른 서버를 사용하여 서비스를 운영할 수 있습니다. 서버 이중화 방법 서버를 이중화하는 방법은 널리 쓰이는 방법으로 Active & Active 방식과 Active & Stand-By 방식이 있습니다. Active & Active ..