In this chapter, I tried to demonstrate that partitioning is a solution that can be used when you have exhausted all other alternatives, such as optimizing your queries, configuration, and so on. That is applicable when you have several millions of records.
We have covered how to clean your indexes, and of course how to keep the necessary number of indexes needed for your application.
We've looked at how to optimize complex queries, using the proposed optimization recipe that we've discussed throughout.
We also looked at what was given to temporary tables, why these tables appear, and how they can be avoided.
Finally, we saw why we had filesort with JOINS, GROUP BY, and ORDER BY, and how we can improve this situation.
In the next chapter, we will cover advanced techniques for MySQL server settings and MySQL's data dictionary, in MySQL 8.0. We will also look...