본문 바로가기

전체 글

html cgi를 이용해서 동적 웹페이지 구축기(aws 정보 조회) 며칠간 GUAM에 다녀온 뒤 회사에 와보니 우리 파트장은 약 보름간의 유럽여행을 갔었다. 그리고 내게 내어준 숙제 다음과 같은 web서비스를 만들어 보십시오. AWS를 사용하는 우리는 Auto Scaling Group에 의해 EC2의 정보가 수시로 변하는데 해당 정보를 엑셀로 관리하고 있었기에 정보가 실시간으로 반영되기도 힘들고 관리도 힘든 이슈가 있었다. 다행이도 python 마스터의 길을 걷고 있는 JUNE에게 어느정도의 python 스크립트를 제공받았고, 해당 스크립트를 좀 가공하고 이것을 웹서비스만 되게끔 하면 되는것이였다. 근데..응??응??? 생각보다 잘 안되네? python 하면 django 인데 django로 해야 하는것인가??아니면 flask?? 무작정 django로 웹서비스를 하기위해 .. 더보기
mysqldbcopy를 이용한 DB to DB copy mysqldbcopy를 써보자 물리적으로 분리된 동기종간 data sync를 위해 mysqldbcopy를 사용해 봤습니다. windows mysqldbcopy를 사용하기 위해서는 mysql utilities를 설치해야합니다. https://downloads.mysql.com/archives/utilities/ MySQL :: Download MySQL Utilities (Archived Versions) MySQL Utilities is now covered under Oracle Lifetime Sustaining Support Per Oracle's Lifetime Support policy, as of May 30, 2018, MySQL Utilities is covered under Oracle .. 더보기
multiple DB schema compare(다중 DB 스키마 비교) www.notion.so/multiple-DB-schema-compare-81ad7c053f904755aca62564e00b871e 더보기
DB 반영 자동화 스크립트 스키마 구조가 같은 여러개의 DB를 운영하는 환경에서 DB 스키마 구조 변경시 일일이 변경할 수 없기에 아래와 같은 스크립트를 실행하여 변경사항을 모든 DB에 반영한다. path 구조 /cnf/mysql.cnf # mysql.cnf 설정값 가지고 있음(계정.패스워드) /log # 스크립트 실행시 로그 남김 /script # 실제 실행할 쿼리스크립트 보관경로 ./db_host.txt # DB host list ./db_script.sh # shell script mysql.cnf [mysql] default-character-set = utf8mb4 user = 계정 password = "패스워드" shell script #!/bin/bash LOG_FILE_NM=db_script_`date +"%Y%m%.. 더보기
RDS tmp_table_size를 올려야하는 이유 mariadb(mysql)은 수행되는 쿼리 문에 order by 와 같은 sort 문이 들어갈 경우 데이터를 호출하고 -> 임시테이블에 호출된 데이터를 sort 하고 -> sort 완료된 데이터를 load 한다 데이터가 많은 테이블에 다량의 order by 쿼리가 들어올 경우 tmp 테이블이 감당할 수 있는 만큼은 memory에 적재하여 수행하지만...이후에는 disk를 사용하기 시작하고 cpu까지 부하가 발생 lock걸린 테이블 또는 processlist를 보면 아래와 같이 "Copying to tmp table" 또는 "Copying to tmp table on disk" 두개의 state 확인이 가능하다. RDS를 쓰는 우리의 tmp 기본값은 16MB로 설정되어 있었고 해당 값을 256MB로 늘림... 더보기
DB 모니터링 TOOL(PMM) 구축 개요. DB 모니터링을 Grafana를 통해 현재 EC2 서버 스펙단의 모니터링 및 일부 IOPS등의 모니터링을 하고 있으나, 세부적인 DB 매트릭에 대한 모니터링은 되지 않고 있기에 DB 전용 모니터링 시스템(PMM. percona monitoring management)을 구축하기로 함 목적. 좀더 세밀한 지표를 설정 하고 모니터링 하여 DB에 문제가 발생시 즉각적으로 판단할 수 있는 근거를 마련하고자 함(Alert and 모니터링) 구축 방법. docker 설치 PMM 서버 / 클라이언트 설치 docker 구축 // root 권한으로 로그인 yum -y upgrade // yum 최신버전 업데이트 sudo amazon-linux-extras install -y docker //aws 전용 리눅스 명.. 더보기
slowquery 분석 방법 목적. DB에서 발생하는 슬로우쿼리를 찾아내고 개선하여 슬로우쿼리가 발생하는 빈도를 줄여 perfomance를 최적화 시킨다. 내가 관리하는 RDS에는 여러 솔루션의 DB가 혼재되어 있다. 슬로우 쿼리 자체를 수집하고 제공하는 것은 매우 쉬운일이나 그 자체를 분석하고 해결하는 일은 공수가 꽤 많이 드는 일이다. 그래서 어떻게 하면 보다 가시적이고 쉽게 인지할 수 있게끔 분석을 해서 개발자들에게 전달해 줄까 고민을 많이 했다. 분석도구 pt-query-digest : percona toolkit에 포함된 슬로우 쿼리 분석 툴 (https://www.percona.com/downloads/percona-toolkit/LATEST/) 제공 프로세스 분석된 로그를 메일로 매주 월요일 오전 각 개발팀 DB 담당자.. 더보기
DB 스키마 반영 TOOL(DB 스키마 반영 도구 구축기) #2 이전글. 2019/05/31 - [Paul Granduer Lee /DB] - DB 스키마 반영 TOOL(DB 스키마 반영 도구 구축기) #1_마이다스아이티 이전글에 이어 스키마 반영 도구 flyway의 활용법과 percona toolkit 중 스키마 무중단 반영 도구인 pt-onlinept-online-schema-change에 대해 간략하게 소개하고자 한다. 소개 가즈아~ flyway는 현재 DB 웹클라이언트에 연동해서 구축을 해놨다. 스키바 반영 메뉴 추가 스키마 반영 메뉴. 스키마 업로드 기능. 스키마 반영 정보 확인. 이렇게 위와 같이 웹서비스로 사용할 수 있게 구현해 놨고, 프로세스만 잘 수립한다면 요긴하게 사용되지 않을까한다. 단, DBA가 해당 도구를 자동화하지 않고 수동으로 작업하는것을 .. 더보기