728x90

MariaDB 9

[Keepalived] failover 테스트

이전 글에서 구축한 서버 3대의 Master-backup이 정상적으로 failover가 이루어지는 지 확인을 위해 galera cluster로 연동된 mariaDB에서 간단한 테스트를 진행해보았다.Master : 3호기 (192.168.174.130) / backup : 1~2호기 (192.168.174.128~129) failover 테스트 시나리오각 서버에서 쉘 스크립트를 통해 10초에 1번씩 heartbeat 개념의 insert(write)를 실행한다.(heartbeat.sh)INSERT INTO keepalived_test.heartbeat (note) VALUES ('heartbeat from $(hostname) server..'); 이때, DB 접속호스트는 vip로 지정한다. (1~3호기 ..

keepalived 2025.04.08

Deadlock found when trying to get lock; try restarting transaction 오류

데드락은 데이터베이스에서 두 개 이상의 트랜잭션이 서로 자원을 점유한 상태에서, 상대방이 점유한 자원을 요청하며 무한 대기 상태에 빠지는 상황을 말합니다.결과적으로 이 상태에서는 트랜잭션이 진행되지 못하며, 데이터베이스는 교착 상태를 해결하기 위한 조치를 취하지 않으면 정상 작동에 장애가 발생합니다.Deadlock 발생 과정트랜잭션 A와 B의 동시 실행:트랜잭션 A가 자원 X를 잠그고, 이후 자원 Y를 요청.동시에 트랜잭션 B가 자원 Y를 잠그고, 이후 자원 X를 요청.자원 충돌:트랜잭션 A는 자원 Y를 점유한 트랜잭션 B를 기다리고,트랜잭션 B는 자원 X를 점유한 트랜잭션 A를 기다립니다.Deadlock 발생:두 트랜잭션이 서로 상대방의 자원을 기다리며 대기 상태에 빠지고, 진행이 불가능해집니다.   ..

[MariaDB] InnoDB 성능 모니터링

MariaDB에서 InnoDB 엔진은 데이터 무결성, 트랜잭션 관리, 잠금 및 동시성 제어 등 고성능의 DB 운영을 위해 필수적인 요소입니다. InnoDB 설정 관련하여 성능을 모니터링할 수 있는 주요 요소들은 시스템 자원의 사용 현황과 데이터 처리 효율을 확인하는 데 도움이 되며, 이를 통해 잠재적인 성능 문제를 진단하고 최적화할 수 있습니다. 아래는 MariaDB에서 InnoDB 성능을 모니터링할 때 중요한 요소들입니다.1. InnoDB Buffer Pool 사용 현황InnoDB는 버퍼 풀(Buffer Pool)을 사용해 디스크 I/O를 최소화하고, 데이터를 메모리 상에 캐싱하여 성능을 향상시킵니다. InnoDB의 성능은 버퍼 풀이 얼마나 효과적으로 작동하는지에 크게 의존하므로, 다음 요소들을 중점적..

DB/MariaDB 2024.11.08

[MariaDB] MySQL 성능 모니터링

* MySQL 운영 환경에서 성능 저하를 방지하고 리소스를 효율적으로 모니터링하기 위한 다양한 명령어들이 있습니다.* 각 명령어는 서버의 상태를 특정 측면에서 분석하며, 주로 트랜잭션 처리량, 메모리 사용량, 잠금 현황 등 성능에 직접적인 영향을 미치는 요소를 모니터링하는 데 사용됩니다.MySQL 성능 모니터링을 위한 주요 명령어SHOW STATUSSHOW STATUS 명령어는 MySQL 서버의 일반적인 상태를 확인할 수 있게 해줍니다. 예를 들어 Connections(연결 수), Uptime(운영 시간), Questions(질의 수) 등의 지표를 제공하여 서버의 전체 상태를 파악하는 데 유용합니다. 특히 쿼리 수와 같은 요청 처리 빈도를 확인하여, 특정 시점에서의 부하 정도를 파악할 수 있습니다.Mar..

DB/MariaDB 2024.11.04

[MariaDB] Galera Cluster 구성변경 테스트 (gcomm 설정)

클러스터 DB서버 정보1번 서버 - 192.168.59.134 maria12번 서버 - 192.168.59.135 maria23번 서버 - 192.168.59.136 maria3예상 테스트 시나리오1~3번 서버 기존 mysql 서비스 stop1번 서버 galera.cnf 수정 (gcomm)2,3번 서버 galera.cnf 수정 (gcomm)1번 노드 재기동, 에러 발생1번 서버 galera_new_cluster 명령 입력1번 서버 mysql start, 성공 시 2,3번 서버 mysql 서비스 startstatus 체크 후 data insert 테스트 진행(1번 → 2번 / 2번 → 1,3번 / 3번 → 1,2번) 형태의 클러스터 구축 성공 (로컬에서 운영 환경으로 테스트)1. 1~3번 서버 mysql ..

DB/MariaDB 2024.08.30

[MariaDB] Mysql 디렉토리 접근 사용자/그룹 권한 장애 테스트

테스트서버 목록192.168.59.134 maria1 (1번 노드)192.168.59.135 maria2 (2번 노드)권한 mysql → root로 일괄 변경 후 서비스 restart[root@maria1 data]# chown -R root:root mysql/ //mysql 디렉토리 하위 포함 root 권한으로 일관 변경[root@maria1 mysql]# systemctl restart mysql //mysql 서비스 재시작permission denied 에러 발생으로 서비스 기동 불가[ERROR] mysqld: File '/data/mysql/mysql_binary_log.index' not found (Errcode: 13 "Permission denied") 2,3번 서버는 galer..

DB/MariaDB 2024.08.26

[MariaDB] 서버 장애테스트

테스트서버 목록192.168.59.134 maria1 (1번 노드)192.168.59.135 maria2 (2번 노드)192.168.59.136 maria3 (3번 노드) 1~3번 MariaDB 서버 Galera Clustering 정상 구축 완료 전제1번 서버의 mysql 서비스가 갑자기 중지되는 상황 부여2번 서버에서 클러스터 사이즈 확인클러스터에 연결된 노드의 수를 나타내는 wrsep_cluster_size의 value=2 확인→ 이는 1번 서버의 mysql 서비스 중단으로 인해 클러스터링이 깨진 상황 1번 서버 shutdown 상황1번 서버의 전원을 종료시킨 후 테스트 진행이후 2대 서버의 mysql 서비스는 정상 동작, 클러스터링 또한 정상 (2-3번 서버만)원복을 위해 1번 서버의 전원 onm..

DB/MariaDB 2024.08.26

MariaDB?

오픈 소스 데이터베이스 관리 시스템(DBMS)으로, MySQL을 기반으로 개발대규모 데이터베이스 환경에서 안정성과 성능을 제공하는 동시에 호환성과 사용 편의성을 유지다양한 플랫폼에서 사용할 수 있으며, 데이터베이스 관리 및 쿼리 작성을 위한 다양한 기능과 도구를 제공오픈 소스 커뮤니티에 의해 개발되고 유지커뮤니티의 참여와 기여를 통해 지속적으로 발전 중 MariaDB Install설치환경 : Centos 7.9MariaDB-backup-10.4.22-1.el7.centos.x86_64.rpm으로 설치 진행 Pre-installmkdir -p /var/tmp/cp repo/.repo /etc/yum.repos.d/cp package/.gz /var/tmp/cp rpm/* /var/tmp/ Instally..

DB/MariaDB 2024.08.26

[Prometheus] mysqld_exporter 연동 (Linux)

prometheus에서 MariaDB galera cluster 환경을 모니터링하기 위해서는 mysqld_exporter가 필요하며, 연동 작업이 필요하다. mysqld_exporter 다운로드wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.0/mysqld_exporter-0.15.0.linux-amd64.tar.gz→ 다운로드 링크 : https://github.com/prometheus/mysqld_exporter 압축해제tar xzvf mysqld_exporter-0.15.1.linux-amd64.tar.gz  my.cnf 수정vi /etc/my.cnf //mariaDB에 접속 후 데이터 스크래핑을 위한 계정정..

Prometheus 2024.08.26
728x90