목록mysql&mariadb (26)
전산쟁이의 기억노트
DBMS교체(Mysql → Mariadb)를 추진하면서 이중화 구성을 replication 에서 galera_cluster로 전환하기 위해 구축하기 위한 문서 시스템 소개 Replication 기반의 데이터 동기화 방식 WEB/WAS → DB#1 DDL 유입 (insert / modify / delete / ...) DB#1서버는 binlog에 저장. DB#2 서버는 IO Thread가 master서버로 접속해서 변경내용 확인 후 변경사항이 있으면 replication 로그에 저장 1*.DB#2 서버는 SQL Thread가 replication 로그를 읽어서 변경사항 저장 Galera Cluster기반의 데이터 동기화 wsrep api를 통해 DB#1, DB#2 접속 및 데이터 복제하기 위한 인터페이스 ..
DB이중화 구성 DB 모니터링을 위한 스크립트 설치 $> vi /etc/init.d/db_check #!/bin/bash case "$1" in "start") echo "start" ;; "stop") echo "stop" ;; "status") mysql --connect-timeout 2 -u monitor -p'모니터 계정패스워드' -h localhost -Nse 'select now()' result_code=$? if [[ $result_code -eq 1 ]] then echo "[$(date +%Y-%m-%d-%H:%M:%S)] DB Connection Error" >> /var/log/db_check pcs resource move DB_GROUP {{ 상대방IP }} fi ;; *) e..
시스템 구성도 서버정보 로드밸런싱 종류 알고리즘 종류 알고리즘 설명 설정값 라운드 로빈 하나씩 분배 rr 가중치 라운드 로빈 가중치가 큰 서버로 분배 wrr 최소 연결 접속수가 적은 서버로 분배 lc 가중치 최소연결 (접속수+1)/가중치 로 최소값 서버로 분배 wlc 지역 최소연결 접속수가 가중치를 넘기기전까지 한서버만 분배 lblc 복제기반의 지역 최소연결 가중치를 넘고 있을때 접속수가 가장 적은 서버 선택 (기본작동은 lblc와 동일) lblcr 목적지 해시 목적지 IP로 부터 해시값 계산해서 분배 dh 소스 해시 소스 IP로 부터 해시값 계산해서 분배 sh 응답속도 응답속도(Short Expected Delay)가 가장 짧은 서버로 분배 (실제로는 접속수가 가장 적은 서버로 분배) sed 큐 없음 ..
소 개 서비스 구동중에 Mysqldump를 이용한 백업 수행시 table lock이 발생하기 때문에 서비스 장애 가능성 존재. 대용량 DB의 경우 raw단위로 backup을 수행하기 때문에 수십분 ~ 수시간 소요 설치 & 실행 1차 서버는 정상, 2차 서버는 추가로 구성한 서버라고 가정하고.. 전체서버대상 - extra backup 패키지 설치 - https://www.percona.com/downloads/Percona-XtraBackup-2.4/LATEST/ 1차 서버 - 백업한 데이터 저장용 디렉토리 생성 $ mkdir /tmp/db_backup 1차 서버 - Full backup으로 백업 수행시 $ innobackupex ~-~-defaults-file=/etc/my.cnf ~-~-user roo..
설정예시 - 1개당 바이너리 로그는 500M가 최대크기이고, 30일동안 보관 후 자동 삭제 $> vi /etc/my.cnf ... log-bin = mysql-bin log-bin-index = mysql-bin expire_logs_days = 30 max_binlog_size = 500M ... 출처 - http://igoni.kr/books/dbms/page/mycnf-mysql my.cnf를 이용한 mysql바이너리 ... | igoni.kr 설정예시 - 1개당 바이너리 로그는 500M가 최대크기이고, 30일동안 보관 후 자동 삭제 $> vi /etc/my.cnf... igoni.kr
mysql 5.7을 컴파일 하기 위해서는 boost 1.5.9이상이 설치되어야 합니다. centos6 기본 리포지터리에 설치된 boost버전은 1.4버전이기 때문에 boost1.5.9버전을 내려받아서 설치해야 합니다..ㅎㅎ boost내려받기 $> wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz $> tar -zxvf boost_1_59_0.tar.gz $> cd boost_1_59_0. $> ./configure; make; make install mysql 컴파일 $> tar -zxvf mysql-5.7.9.tar.gz $> cd mysql-5.7.9 $> cmake -DCMAKE_INSTALL_PREFI..