Explore MySQL: A Beginner’s Journey into Database Internals
🌟 Explore MySQL: A Beginner-Friendly Course (50 Lessons)
Take a step-by-step journey to understand how MySQL works from the inside out, from simple queries to advanced internal mechanisms.
🎓 About the Course
This course is a beginner version for developers, newcomers, and anyone curious about MySQL internals. You’ll start with basic SQL queries and gradually explore:
- B+ Trees and indexes
- Buffer pool and caching
- Transactions, MVCC, redo and undo logs
- Isolation levels, locks, and durability
- Execution plans, joins, and performance analysis
The content of this course is expected to be gradually replaced by the intermediate course by the end of the year. If you want early access to the intermediate content, please check your email after purchasing this course. We will send a Discord invite.
🚀 Extra Benefits
This is the standard package for the full learning experience:
💬 Private Discord Community
Join a members-only space where you can ask questions and share insights.
📨 Discord Access
After purchasing the course, you’ll receive a Discord invite by email (usually within 3 days). Please check your inbox carefully.
If you haven’t received it, contact wangbin579@gmail.com.
🔍 MySQL Trace Tool
Get access to a high-performance tracing program built on a specific MySQL version. Use it to explore how SQL statements are parsed, optimized, and executed in real time.
📌 Note: The download link for the trace tool is available in the Discord #trace-help channel.
📚 Course Outline
1. Why Databases Are More Than Just Data Storage
2. How a Simple SQL Query Is Executed Behind the Scenes
3. How Is MySQL Structured Internally?
4. Getting to Know Indexes: What They Are and Why They Matter
5. B+ Trees vs. Hash Indexes: What Makes MySQL Choose the Tree
6. How MySQL Finds Rows in a B+ Tree: A Step-by-Step Example
7. Understanding B+ Tree Height and Its Performance Impact
8. Avoiding Table Lookups with Covering Indexes
9. The Buffer Pool Exposed: What Really Happens to Your Pages?
10. Inside MySQL Writes: From Buffer Pool to Disk
11. An Introduction to Redo Logs: Their Role and How They Work
12. Understanding Undo Logs: When and Why They're Used
13. What Is MVCC and How Does It Work in MySQL?
14. What Are Binlogs and What Are They Used For?
15. A Deep Yet Simple Look at Transactions
16. How MySQL Guarantees Atomic Transactions
17. What Consistency Means in Databases and How It's Enforced
18. MySQL Isolation Levels: A Practical Guide
19. How MySQL Makes Transactions Durable with Logging
20. What Are Checkpoints? How They Help with Durability and Performance
21. Locks in MySQL: An Easy Guide to Types and Use Cases
22. What Is a GAP Lock? Why Is It Confusing?
23. How MySQL Creates a Query Execution Plan
24. Why Some Queries Use Full Index Scans
25. A Beginner’s Guide to How JOINs Work in MySQL
26. Why JOINs Often Outperform Correlated Subqueries
27. What Really Happens When You Run an INSERT?
28. What Happens Internally During an UPDATE?
29. What Makes Hotspot Updates a Pain for Performance?
30. What Happens Internally During a DELETE?
31. Why Many Companies Discourage Using DELETE to Remove Data
32. Why DROP TABLE Can Be Shockingly Fast
33. Why the First Query Is Often Slow: Understanding Cold Reads
34. Temporary Files in MySQL: When and Why They're Used
35. What Is Rate Limiting in Databases — and When Does It Matter?
36. Big Transactions, Big Trouble: What You Should Know
37. Why Even Simple Queries Can Sometimes Be Slow
38. What Causes MySQL to ‘Jitter’?
39. Which Is Better: Random or Sequential Primary Keys?
40. When and Why Indexes Become Ineffective
41. Does a Covering Index Always Prevent Table Lookups?
42. Pagination Optimization: Avoiding Performance Hits from Large Offsets
43. Why Two Similar SQLs Perform Very Differently
44. Read Committed vs Repeatable Read: What Developers Should Know
45. Transaction Isolation: Is It Really Guaranteed?
46. Hidden Transaction Misuses That Developers Overlook
47. Common SQL Pitfalls That Kill Performance
48. Must-Know Config Settings That Affect Query Speed
49. How to Use Trace Logs to Diagnose Problems
50. AI-Powered SQL Analyzing: From Execution Plans to Root Causes
🔍 About the Author
The author has 10 years of experience with MySQL, including development experience. Before focusing on databases, he worked in server-side development and was the main contributor to the open-source project tcpcopy. He has authored:
- The Art of Problem-Solving in Software Engineering: How to Make MySQL Better
- Explore MySQL: A Beginner-Friendly Course
- MySQL Uncovered: Internals, Trace Analysis, and Performance (in progress)
- PostgreSQL Uncovered: Internals, Trace Analysis, and Performance (in progress)
He has deep expertise in databases, networking, and server-side development.
📌 Important Notes
💬 If you’re unsure about purchasing the course, feel free to join our Discord community(https://discord.gg/2GGG2jkyGV) to ask questions and review the first few lessons.
⚠️ This is a digital product with instant access upon purchase.
All sales are final and non-refundable.
Explore MySQL from the inside out and gain a powerful understanding of its core design.