lecture: High Performance MySQL for Developers


In this talk, I will focus on key things that a developer should know or learn if they want to write High Performance MySQL-backed applications. The talk will cover the following topics:

- MySQL strengths & weaknesses
- MySQL indexing
- Query execution plans
- Basic things to know about MySQL configuration
- Solving some common application performance traips

This talk is for developers with some experience with MySQL as a backend or considering it. I will start by looking at MySQL's strengths and weaknesses to see where MySQL fits and when one should consider other solutions - that should serve as a nice introduction. Later I will talk about how queries are executed and that'll lead us to indexing. I will try to answer questions like why should we add indexes, what indexes are best for different queries and how can you test if a given query is executing well.

Later I will talk briefly about some of the things a developer should know about MySQL configuration, some session variables that could help them make certain queries more efficient and we will look at some common performance traps and how to avoid them.