Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and...

24
© 2017 Percona 1 Michael Coburn, Product Manager PMM Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7 th , 2017

Transcript of Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and...

Page 1: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona1

Michael Coburn, Product Manager PMM

Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues

September 7th, 2017

Page 2: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona2

Your presenter

▪Michael Coburn - Product Manager PMM• Working at Percona for almost 5 years

• Consultant, Manager, TAM, now Product Manager

• Canadian living in México

Page 3: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona3

Why does this talk exist?

▪Troubleshooting performance issues can be a bit tricky, especially when you’re given a broad statement that the database is slow.

▪ Learn to direct your attention to the correct moving pieces and fix what needs your attention.

▪ Learn how all this is done at Percona, what we monitor and track, and the tools we use.

Page 4: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona4

Agenda

▪What is PMM?

▪Using Metrics Monitor to visualise events over time

▪Using QAN to optimise MySQL queries

Page 5: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona5

What is PMM

▪ Free, Open Source database troubleshooting and performance optimisation platform for MySQL and MongoDB• We also support MariaDB and ProxySQL

▪Runs in your secure environment (not a SaaS) and on your equipment

▪ Secured with SSL encryption between pmm-client and pmm-server

Page 6: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona6

My database is slow !?!

▪What is ‘normal’ ? Establishing a baseline

▪Are other factors impacting your database performance?• Hardware/virtualisation layer

• Network

• Application behaviour

▪But I already have top and SHOW PROCESSLIST, isn't that sufficient?

Page 7: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona7

Query Analytics - QANMySQL query optimisation

Page 8: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona8

QAN - Query Analytics

Page 9: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona9

QAN overview▪Query Abstract• Query pattern with placeholders

▪ ID• Unique fingerprint, used for query group by

▪ Load• Grand Total Time - percentage of time that the MySQL server spent executing a

specific query

▪Count• QPS, total count during window, % of total

▪ Latency• Min, Med, Avg, P95, Max

Page 10: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona10

Query fingerprint + EXPLAIN

Page 11: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona11

PERFORMANCE_SCHEMA

Page 12: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona12

Slow log - Percona Server enhanced

Page 13: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona13

CREATE TABLE

Page 14: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona14

TABLE STATUS

Page 15: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona15

INDEXES

Page 16: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona16

Server summary info

▪Click the icon:

▪pt-summary• Instance-specific information

▪pt-mysql-summary• Facts about the running MySQL instance

Page 17: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona17

Metrics MonitorPrometheus + Grafana + Beautiful dashboards from Percona!

Page 18: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona18

What is Grafana

▪Open Source data visualisation tool

▪Popular datasources• Prometheus

• CloudWatch

• Graphite

• Elasticsearch

▪Templated Variables• Define your graph metrics, and let the hosts get filled in automatically▪ GREAT for large, dynamic environments where hosts are considered ephemeral

Page 19: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona19

How can I...

▪Compare servers' to each other• Cross Server graphs

▪ Show behaviour now() compared to past period• Trends Overview dashboard

▪At a glance MySQL + indepth• MySQL Overview, InnoDB, InnoDB Advanced

▪View Prometheus performance data• Prometheus dashboard

▪MariaDB - Aria, Online DDL, ICP, and Defragmentation• MariaDB dashboard

Page 20: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona20

How can I… - Percona Server only

▪Table statistics• Largest tables by rows and size, total DB size, tables by rows read and changed,

auto_increment usage (about to hit the limit?)

▪User statistics• Top users by connection count, network usage, rows read/changed

▪Query Response Time• Average, read vs write, distribution

Page 21: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona21

Distribution methods

▪Docker• Most common deployment method for PMM today

▪Virtual appliance• OVF/OVA file format, compatible with VMware, VirtualBox, Microsoft, Red Hat

▪AWS AMI• Clone the image from any of the 14 regions

• Deployment moving to AWS Marketplace

Page 22: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona22

Get Your Tickets for Percona Live Europe!

Championing Open Source Databases▪MySQL, MongoDB, Open Source Databases

▪Time Series Databases, PostgreSQL, RocksDB

▪Developers, Business/Case Studies, Operations

▪ September 25-27th, 2017

▪Radisson Blu Royal Hotel, Dublin, Ireland

Last Year’s Conference Sold Out!Reserve your spot ASAP.

Page 23: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

© 2017 Percona23

Talk to Percona Experts at AWS Re:Invent!

Database Performance for Cloud Deployments▪Percona Support and Managed Services•Amazon RDS, Aurora, Roll Your Own

•MySQL/MariaDB/MongoDB

•Reduce costs and optimize performance

▪Percona Monitoring and Management Demos•Point-in-time visibility and historical trending of database performance

•Detailed query analytics

▪Booth #1138

Page 24: Management to Troubleshoot MySQL Using Percona Monitoring … · Using Percona Monitoring and Management to Troubleshoot MySQL Performance Issues September 7th, 2017. ... Learn to

DATABASE PERFORMANCEMATTERS

Database Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance Matters