전체 글 96

mysql 매트릭 값 분석

Connection 부분 지표Connected Threads현재 MySQL 서버에 연결된 총 클라이언트 스레드 수쿼리: mysql_global_status_threads_connected모니터링 포인트: 과도한 연결은 서버 부하를 증가시킬 수 있음Running Threads현재 실행 중인 활성 스레드 수쿼리: mysql_global_status_threads_running의미: 실제로 작업을 수행 중인 스레드 수Max Used Connections최대 동시 연결 수쿼리: mysql_global_status_max_used_connections용도: 피크 로드 시 연결 상태 확인Threads Created서버 시작 후 생성된 총 스레드 수쿼리: mysql_global_status_threads_create..

모니터링 2024.12.09

SHOW SLAVE STATUS

1. Master의 binlog 위치 (Master Log Position)Master 서버에서 실행되는 binlog 파일에 모든 데이터 변경 (예: INSERT, UPDATE, DELETE 쿼리) 정보가 기록됩니다. 복제를 설정할 때, Slave 서버는 이 binlog 파일을 읽어와서 동일한 작업을 수행하게 됩니다.Master_Log_File: 현재 Master에서 사용하는 binlog 파일 이름Read_Master_Log_Pos: Slave가 읽고 있는 Master binlog 파일 내 위치 (바이트 단위)2. Relay 로그 위치 (Relay Log Position)Slave 서버에서는 Relay 로그라는 파일에 Master에서 전달된 binlog 이벤트를 저장하고, 이를 기반으로 SQL 스레드가 ..

Mysql & Maria/admin 2024.12.03

replication 깨진 후 bin log 복구

slave 가 깨지고나서 bin log를 이용해서 복구하는 방법 1. slave 깨짐 확인 - 1032 error 발생 : 키 없음 오류  2. slave 복제 중지 및 master binlog 확인2.1  [slave server] stop slavemysql> stop slave; Query OK, 0 rows affected (0.00 sec)  2.2  [master server] mysql> show master status; +------------------+----------+--------------+------------------+-------------------+ | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | ..

Mysql & Maria/admin 2024.12.03

grafana + prometheus

구성도 환경정보192.168.100.128cent os 7.9그라파나 서버  node_exporter192.168.100.128cent os 7.9프로메테우스 서버  node_exporter192.168.100.128cent os 7.9mha 서버  node_exporter192.168.100.179cent os 7.9DB서버 mysql 5.7masternode_exportermysqld_exporer192.168.100.129cent os 7.9DB서버 mysql 5.7slavenode_exportermysqld_exporer node exporter는 서버당 한개, db exporter는 db 인스턴스별로 설치1. prometheus 설치https://prometheus.io/download/ 설치할..

모니터링 2024.11.24

그라파나 설치

OScentOS 7.9admin/kmlee!231https://grafana.com/grafana/download Download Grafana | Grafana LabsOverview of how to download and install different versions of Grafana on different operating systems.grafana.com 위 페이지 접속해서 원하는 버전, 환경 선택 후 설치방법 스크립트 확인     그라파나 기본 포트 3000 방화벽 해제  그라파나 실행# systemctl start grafana-server.service그라파나 자동 실행 등록# systemctl enable grafana-server.service그라파나 중지# systemctl st..

모니터링 2024.11.24

percona toolkit (pt-table-checksum)

master 와 slave 간데이터 일관성 체크를 위한 툴중 하나로 해당 툴 테스트 진행내역 공유한다. 부하 발생이 있을 수 있으므로 운영시간 외에 실행을 권장한다.일반적으로 master DB에서 실행해야 한다. 실행 원리 자체가마스터에서 실행하여 모든 테이블의 체크섬을 계산슬레이브로 복제를 통해 체크섬 비교 slave DB에서는 역방향으로 체크할 수 없다. 기본 실행 명령# 기본실행 명령어pt-table-checksum \ -h 마스터호스트 \ -u 사용자 \ -p 패스워드 # 특정 데이터베이스만 체크pt-table-checksum \ --databases=mydb \ --tables=users,orders# 대규모 데이터 최적화pt-table-checksum \ ..

Mysql & Maria/admin 2024.11.19

mysql 5.7 replication 구성

mysql 5.7 버전 2대 생성 server 1, 2  - mysql 5.7 설치되어 있음  1. my.cnf 에 server-id ,log_bin 설정 후 restart2. 재부팅 후 server id 확인   3. master DB 에서 replication 용 계정 생성 grant replication slave, replication client on *.* to repl@'192.168.100.%' identified by 'Repl!231';   4. slave DB read_only replay log 설정  5. repliation 설정CHANGE MASTER TO MASTER_HOST = '192.168.100.179', MASTER_USER='repl', MASTER_PASSWORD ..

Mysql & Maria/admin 2024.11.19

VACUUM type 에 따른 redo 발생량 차이

일반적으로 다음과 같은 순서로 REDO 로그량이 많이 발생합니다:VACUUM FULL > VACUUM > VACUUM FREEZE [테스트 시나리오]데이터 준비100만 건의 초기 데이터 생성각 VACUUM 테스트 전에 서로 다른 패턴으로 데이터 업데이트/삭제각 VACUUM 유형별 특징VACUUM FULL: 테이블 전체 재작성으로 가장 많은 REDO 발생일반 VACUUM: 삭제된 레코드 정리VACUUM FREEZE: 트랜잭션 ID 에이징 처리측정 방법pg_current_wal_lsn() 함수로 WAL 위치 측정pg_wal_lsn_diff() 함수로 발생한 REDO 로그량 계산pg_size_pretty() 함수로 읽기 쉽게 포맷팅결과 분석각 VACUUM 유형별 REDO 로그 발생량 비교 제공VERBOSE 옵..

Postgresql/admin 2024.11.13

PostgreSQL architecture (Local Memory)

Local Memory ㄴ 세션별로 독립적인 메모리 공간ㄴ 작업 유형에 따라 동적 할당ㄴ 성능 최적화 고려사항 큰 정렬 작업이 많은 경우 work_mem 증가대규모 vacuum 작업 시 maintenance_work_mem 조정- maintenance_work_mem: VACUUM, INDEX 생성, 테이블 변경, FK추가 등 관리 작업에 사용- work_mem: 정렬, 해시 테이블 등의 작업에 사용- temp_buffers: 임시 테이블을 위한 버퍼- catalog_cache: system catalog 메타데이터 사용공간 -- 현재 세션의 메모리 사용량 확인SELECT * FROM pg_stat_activity WHERE pid = pg_backend_pid(); [TEST] 동시접속자 10명이 트랜..