Training path

MySQL

The database behind much of the web: tables, SQL queries, transactions, indexes and backups on a MySQL server of your own.

Your lab machineLive

A MySQL 8 server of your own, with the mysql client, next to every lesson.

learner@linux-server:~$ mysql -e "CREATE DATABASE shop"

learner@linux-server:~$ mysql shop -e "SHOW TABLES"

learner@linux-server:~$ mysqldump shop > shop.sql

What you'll learn

Every lesson runs on a MySQL server of your own, where your account has every privilege. You build a small shop database step by step: InnoDB tables and types, queries and aggregates, transactions, foreign keys and joins, indexes and EXPLAIN ANALYZE, then accounts and backups, each checked on your server.

Core skills

  • ✓The mysql client
  • ✓Tables, data types and strict mode
  • ✓SELECT, WHERE, ORDER BY and GROUP BY
  • ✓UPDATE, DELETE and transactions
  • ✓Foreign keys, JOINs and views

Advanced topics

  • ✓Indexes and EXPLAIN ANALYZE
  • ✓Accounts, GRANT and auth_socket
  • ✓Backups with mysqldump and restoring them
  • ✓Recursive CTEs for test data

Course modules

  1. 01

    Your MySQL server

    Connect with the mysql client, see how accounts work, and create your first database.

    30 min
  2. 02

    Tables and data types

    Design an InnoDB table with the right types and constraints, and insert rows.

    45 min
  3. 03

    Querying data

    Filter, sort and limit with SELECT, and summarize with aggregates and GROUP BY.

    45 min
  4. 04

    Changing data safely

    UPDATE, DELETE and ALTER TABLE, safe updates, and transactions that undo mistakes.

    45 min
  5. 05

    Relationships and joins

    Foreign keys between customers, orders and products; JOIN, LEFT JOIN and views.

    1 hour
  6. 06

    Indexes and EXPLAIN

    Read query plans and make a query on 200,000 rows fast with an index.

    45 min
  7. 07

    Users, permissions and backups

    A read-only account for an application, then mysqldump and a tested restore.

    45 min

Prerequisites

Linux command-line basics. No SQL experience needed.

What's included

  • •7 hands-on chapters
  • •A MySQL server of your own for every lesson
  • •Tasks checked on your machine with "Check my work"
  • •Nothing to install: everything runs in your browser

Who it's for

  • •Web developers (PHP, WordPress, Laravel, Rails and more)
  • •Anyone starting with relational databases
  • •DevOps and SREs who run MySQL

By the end, you'll be able to

  • •Design InnoDB tables with the right types and constraints
  • •Write queries with filters, joins and aggregates
  • •Change data safely with transactions
  • •Speed up queries with indexes
  • •Create accounts with the least privilege, and back up and restore a database

Course format

  • •Self-paced online learning
  • •Lifetime access to course materials
  • •Regular content updates
  • •Community forum access

Support

  • •Email support from instructors
  • •Q&A sessions (monthly)
  • •Peer community support
  • •Course completion certificate

Course investment

Contact for pricing

Flexible payment options available

Ready for MySQL?

Open your own MySQL server and write your first query in minutes.