JH 개인 블로그
close
프로필 배경
프로필 로고

JH 개인 블로그

  • All (143)
    • Cloud (18)
      • AWS(Amazon Web Service) (4)
      • NCP(Naver Cloud Platform) (8)
      • OCI(Oracle Cloud Infrastruc.. (6)
    • DataBase (78)
      • Oracle (14)
      • MySQL & MariaDB (43)
      • PostgreSQL (8)
      • MSSQL (13)
    • DataBase Admin (14)
      • DB Admin (8)
      • Trouble shooting (6)
    • Others (31)
      • DB Monitoring (15)
      • Opensource Tool (16)
    • 여가 생활 (2)
      • 해외 여행 (0)
      • 맛집 탐방 (2)
      • 호캉스 (0)
  • 홈
  • 태그
  • 방명록
[MySQL - Transaction Isolation Levels]

[MySQL - Transaction Isolation Levels]

■ MySQL 격리 수준(from Real MySQL 8.0) 여러 트랜잭션이 동시에 처리될 때 특정 트랜잭션이 다른 트랜잭션에서 변경하거나 조회하는 데이터를 볼 수 있게 허용할지 말지를 결정하는 것 크게 "READ UNCOMMITTED" "READ COMMITTED" "REPEATABLE READ" " SERIALIZABLE"로 나뉜다. 하지만 일반적인 데이터베이스에서 READ UNCOMMITTED는 거의 사용하지 않고, SERIALIZABLE또한 동시성이 중요한 데이터베이스에서는 거의 사용되지 않는다. 격리 수준이 높아질수록 성능 개선이나 저하는 발생하지 않는다. ※ 일반적인 온라인 서브스 용도에서는 READ COMMITTED와 REPEATABLE READ 중 하나를 사용합니다. READ UNCOMM..

  • format_list_bulleted DataBase Admin/DB Admin
  • · 2023. 2. 10.
  • textsms
[MySQL - 강제 복구 모드 innodb_force_recovery]

[MySQL - 강제 복구 모드 innodb_force_recovery]

테이블 손상이 발생할 수 있는 경우 1. InnoDB 테이블이 손상되는 경우는 상당히 희박 - Double write, Checksum 그리고 기타 Validation 로직들과 버그 보완으로 인해서, 실제로 MyISAM에 비해서 InnoDB 테이블 스페이스 및 데이터 파일은 상당히 안정적이다. 2. 대부분의 손상은 인덱스에서 발생 - 많은 사람들이 경험하는 InnoDB 데이터 파일의 손상은 80~90% 정도가 InnoDB 인덱스 (Secondary index)에 발생한 손상인 경우이며, 이 경우에는 단순히 ALTER TABLE 또는 데이터 덤프 및 재 적재만으로 해결된다. 복구 모드 "1 ( SRV_FORCE_IGNORE_CORRUPT )" 참조. 3. 이외 - InnoDB 테이블의 문제점들의 경우는 덤..

  • format_list_bulleted DataBase Admin/DB Admin
  • · 2023. 2. 10.
  • textsms
[MySQL - Online DDL] use. Gh-ost

[MySQL - Online DDL] use. Gh-ost

Gh-ost란, MySQL에서 online alter 기능이 있지만 아직 완벽하지는 않습니다. 이를 보완하기 위해 percona 의 pt-online-schema-change 스크립트를 사용하기도 하는데요, 원본과 복사본 테이블의 sync 를 trigger 기반으로 맞춘다는 단점이 있습니다. 특수 케이스에서는 일관성 문제도 야기될 수 있고, trigger 가 유발할 수 있는 Lock 으로 인해서 마지막에 swap 할 때 쿼리들이 실패하기도 합니다. 이러한 컨셉은 2009년부터 이어져왔고 큰 변화가 없었습니다. gh-ost 가 이러한 단점을 보완해서 pt-online-schema-change 를 대체할 수 있을지 조심스레 살펴보고 있습니다. 원본과 복사본(ghost table) 간의 sync 를 맞추는데 ..

  • format_list_bulleted Others/Opensource Tool
  • · 2023. 2. 5.
  • textsms
[MySQL - Orchestrator Takeover & Failover 테스트] part 2

[MySQL - Orchestrator Takeover & Failover 테스트] part 2

Orchestrator 구축 이후 Takeover 및 Auto Failover를 설정하겠습니다. Orchestrator 구축 1편 : https://jhdatabase.tistory.com/134 [MySQL - Orchestrator 구축] part 1 Orchestrator란? MySQL용 복제 토폴로지 관리자로써 고가용성 및 복제 관리 툴입니다. 체인을 위아래로 훑으면서 마스터와 슬레이브를 찾아 MySQL 환경의 복제 토폴로지를 검색하는 기능을 제공합니다 jhdatabase.tistory.com Takeover Test ■ Master 확인 현재 Master -> 192.168.100.35 (DB 1번) mysql> show slave status\G; *************************..

  • format_list_bulleted DataBase/MySQL & MariaDB
  • · 2023. 2. 5.
  • textsms
[MySQL - Orchestrator 구축] part 1

[MySQL - Orchestrator 구축] part 1

Orchestrator란? MySQL용 복제 토폴로지 관리자로써 고가용성 및 복제 관리 툴입니다. 체인을 위아래로 훑으면서 마스터와 슬레이브를 찾아 MySQL 환경의 복제 토폴로지를 검색하는 기능을 제공합니다. 또한 GUI를 통해 복제 토폴로지를 리팩터링하는 데도 사용할 수 있는데, 드래그 앤 드롭 인터페이스를 사용해서 슬레이브를 마스터로 승격할 수 있습니다. 상태 개념을 사용해서 올바른 복구 방법을 지능적으로 선택하고 사용할 적당한 마스터 승격 프로세스를 결정하므로 노드에 장애가 발생할 경우 복구를 지원합니다. Orchestrator 기능 복제 트리의 토폴로지 및 상태를 자동으로 감지하고 모니터링합니다. GUI, CLI 또는 API를 사용하여 상태를 확인하고 작업을 수행할 수 있습니다. 마스터의 자동 ..

  • format_list_bulleted DataBase/MySQL & MariaDB
  • · 2023. 2. 5.
  • textsms
[MySQL - Read/Write Split 부하분산 구성] use. ProxySQL

[MySQL - Read/Write Split 부하분산 구성] use. ProxySQL

MySQL 3node 운영중 Master노드의 리소스 과부화 현상을 해소하고자 Read/Write Split을 하게되었습니다. Proxy서버로 ProxySQL을 사용하여 최종적으로 Write트랜잭션은 Master노드로만, Read 트랜잭션은 모든 노드로 가도록 설정하습니다. 테스트 환경 Hostname IP VIP DB Version proxy 192.168.100.84 proxysql-2.4.4 master 192.168.100.80 192.168.100.88 MySQL 8.0 slave1 192.168.100.81 MySQL 8.0 slave2 192.168.100.83 MySQL 8.0 사전 구성 MySQL서버 3nodes MHA구성 MariaDB [(none)]> show slave hosts\G..

  • format_list_bulleted DataBase/MySQL & MariaDB
  • · 2023. 1. 27.
  • textsms
[MySQL - 간단한 백업 성공 이메일 스크립트 설정]

[MySQL - 간단한 백업 성공 이메일 스크립트 설정]

안녕하세요 DB백업 데일리 성공 여부를 받아볼 수 있는 간단한 이메일 스크립트 설정을 해보았습니다. 아래 스크립트를 기반으로 데일리로 받아보고자 하는 정보를 조금씩 수정하여 사용하면 될거 같습니다~ 사전 설정 send mail을 사용하여 구글 메일로 발송 할 계획이라 sendmail 설치가 되어있어야합니다. ■ sendmail 설치 [root@mysql]# yum install -y sendmail sendmail-cf ■ config 수정 [root@mysql]# vi /etc/mail/sendmail.mc -- 52,53라인에 dnl을 삭제 [root@mysql bin]# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf ■ 25번 포트 open 확인 [root@..

  • format_list_bulleted DataBase Admin/DB Admin
  • · 2023. 1. 27.
  • textsms
[Prometheus - MySQL모니터링 서버 설치] part 1

[Prometheus - MySQL모니터링 서버 설치] part 1

Prometheus란, Apache 2 라이센스로 공개되어 있는 오픈소스로 모니터링 툴입니다. 다른 모니터링 도구와 가장 다른 점은 대부분의 모니터링 도구가 Push 방식 즉, 각 서버에 클라이언트를 설치하고 이 클라이언트가 메트릭 데이터를 수집해서 서버로 보내면 서버가 모니터링 상태를 보여주는 방식인데 반해서 Prometheus는 Pull 방식입니다. 그래서 서버가 각 클라이언트를 알고 있어야 하는게 아니라 서버에 클라이언트가 떠 있으면 서버가 주기적으로 클라이언트에 접속해서 데이터를 가져오는 방식입니다. 따라서 모니터링 대상 서버의 모니터링으로 인해 발생하는 부하를 줄여줍니다. 프로메테우스는 Time-series DB이기 때문에 시간과 함께 데이터를 저장합니다. Exporter란 모니터링 대상의 Me..

  • format_list_bulleted Others/DB Monitoring
  • · 2022. 12. 18.
  • textsms
[Redis - MySQL cache server 구성 테스트] use. python

[Redis - MySQL cache server 구성 테스트] use. python

Cache란 캐시는 고속 저장소로 대용량 데이터, 복잡한 수학적 연산 결과, 정적 컨텐츠 등을 연산 없이 데이터를 불러올 수 있어 CPU 기능 부하와 지연 시간을 줄여줄 수 있고 퍼포먼스를 향상 시킬 수 있습니다. 보통 RAM이나 인메모리 엔진 같이 가볍고 빠른 하드웨어에 설치되어 실행됩니다. 캐시 히트율(cache hit rate)은 요청이 들어왔을 때 캐싱된 데이터가 있는 확률로 들어온 전체 요청 수 대비 캐시가 히트돼서 응답한 개수를 나타냅니다. 캐시 히트율이 높다는 건 그만큼 캐싱 데이터가 쓰여서 성능이 높다는 걸 의미합니다. 하지만 무조건 높다는 게 좋은 건 아닙니다. RDB인 MySQL과 캐시 DB인 Redis는 실시간 싱크(synch)가 이뤄지지 않기에 즉각적인 데이터 반영이 필요한 경우 캐..

  • format_list_bulleted Others/Opensource Tool
  • · 2022. 12. 18.
  • textsms
[MySQL - Tunner 설치]

[MySQL - Tunner 설치]

MySQL Tunner란 MySQL현재 설정값과 서버의 사양, 사용상태들을 비교하여 MySQL설정을 하는 방법으로, perl 스크립트로 동작하며 현재 설정과 서버의 사양 , 사용 상태들을 비교하여 mysql 의 설정을 어떻게 바꾸면 좋을지 몇 가지 기본 성능 제안과 함께 간단한 형식으로 알려주는 툴입니다. MySQLTuner 는 MySQL / MariaDB / Percona Server에 대해 300 여개의 지표를 지원합니다. MySQL, MariaDB 에서 동작하며, 리눅스에서 동작하나, 윈도우에서는 지원하지 않습니다. 저와같은 초보 DB관리자가 성능개선을 위해 이것저것 알아볼때 빠뜨리는 부분을 확인 할 수 있어 좋습니다. ■ 호환성 목록 [MySQL] MySQL 8 (partial support, p..

  • format_list_bulleted DataBase/MySQL & MariaDB
  • · 2022. 11. 5.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • navigate_next
전체 카테고리
  • All (143)
    • Cloud (18)
      • AWS(Amazon Web Service) (4)
      • NCP(Naver Cloud Platform) (8)
      • OCI(Oracle Cloud Infrastruc.. (6)
    • DataBase (78)
      • Oracle (14)
      • MySQL & MariaDB (43)
      • PostgreSQL (8)
      • MSSQL (13)
    • DataBase Admin (14)
      • DB Admin (8)
      • Trouble shooting (6)
    • Others (31)
      • DB Monitoring (15)
      • Opensource Tool (16)
    • 여가 생활 (2)
      • 해외 여행 (0)
      • 맛집 탐방 (2)
      • 호캉스 (0)
최근 글
인기 글
최근 댓글
태그
  • #mssql
  • #monitoring
  • #mysql
  • #navercloud
  • #mha
  • #oracle
  • #MariaDB
  • #ncp
  • #oci
  • #PostgreSQL
전체 방문자
오늘
어제
전체

티스토리툴바