본문 바로가기

전체 글205

pt-query-digest pt-query-digest는 percona 에서 만든 유용한 Toolkit 으로 slow query 가 많을 경우, 쿼리를 parsing하고 결과를 summary 하여 보여줍니다. 쿼리의 유형, 빈도, 비중 등을 확인할 수 있습니다. SlowQuery 보기 슬로우쿼리를 요약해서 보여줍니다. $ pt-query-digest slow.log Binlog 보기 type 을 binlog 라고 따로 지정해줘야 합니다. (슬로우쿼리는 따로 지정하지 않아도 됩니다.) binlog 에 남은 쿼리를 요약해서 보여줍니다. $ mysqlbinlog bin-log.000002 > bin002.tmp $ ./pt-query-digest --type binlog bin002.tmp # 1.4s user time, 40ms sy.. 2021. 8. 3.
MySQL 정적 및 동적 권한 2 전에 DBA 계정에서 SUPER 권한을 제거하는 방법을 해보았습니다. 그러나 실생활에서는 반대로 계정이 올바르게 작동하는 데 필요한 것만 추가해야 합니다. 각 사용자에게 권한을 하나씩 추가하는 것은 그들이 가질 수 있는 상호 작용 수준을 고려할 때 문제가 있고 실수하기 쉽습니다. 대신 ROLES를 사용하여 훨씬 더 쉬운 방법으로 올바른 권한을 그룹화, 할당 및 취소할 수 있습니다. ROLES를 올바르게 사용하려면 첫 번째 단계는 ROLES를 식별하는 것입니다. 기본 원칙을 유지하고 단순하게 만들어야 합니다. 따라서 ROLES이 너무 많거나 교차 기능 권한이 너무 많은 ROLE을 사용하지 않도록 해야 합니다. DBA(모든 것을 할 수 있음) MaintenanceAdmin(서버에서 일부 작업만 수행할 수 있.. 2021. 7. 30.
MySQL 정적 및 동적 권한 MySQL 8에서 정적 권한과 동적 권한 간의 상호 작용에 대해 더 자세히 알아야 할 때 Security Threat Tool 스크립트를 작성하고 있었습니다 . 동적 권한은 권한 정의를 쉽게 확장하는 동시에 더 세분화된 기능을 제공하기 위해 MySQL 8에 추가된 "새로운" 기능입니다. 예를 들어 FLUSH 작업에는 이제 범위별로 전용 권한이 있습니다. 동적 권한은 런타임에 할당됩니다. 대부분은 서버가 시작될 때 활성화됩니다. 그러나 활성화되면 구성 요소 또는 플러그인과 관련하여 변경할 수도 있습니다. ( https://dev.mysql.com/doc/mysql-security-excerpt/8.0/en/privileges-provided.html#privileges-provided-dynamic ) 정.. 2021. 7. 29.
prometheus Alert Manager Alert Manager 모니터링 시스템이니, 문제가 발생하면 이를 알람으로 보내주는 역할도 있어야한다. Alertmanager는 Prometheus에서 문제가 발생했다고 생각되는 시점에 slack, hipchat 등을 통해 알람을 보내준다. 알람을 거는 기준은 Rule을 작성해서 load시키는 방식으로 동작하는데 expr: job:request_latency_seconds:mean5m{job="myjob"} > 0.5 와 같이 expression을 작성하는 것으로 알람을 전송할 수 있다. 특정 메트릭의 값이 어느정도 선(threshold)을 넘는다거나, 낮아진다거나 하는 메트릭을 보고 판단을 할 수 있다. 다만, 이 또한 Grafana를 사용하게 된다면 Grafana에서도 동일하게 알람매니저를 제공을 .. 2021. 7. 22.