Databases
Each course comes with its own lab machine running that database: you create the tables, write the queries, break things and fix them, and every task is checked on your server.
The most popular open-source relational database: design tables, query them with SQL, and run your own PostgreSQL server.
A PostgreSQL server of your own, with psql
$ createdb shop
$ psql -d shop -c "\dt"
$ pg_dump shop > shop.sql
The database behind much of the web: tables, SQL queries, transactions, indexes and backups on a MySQL server of your own.
A MySQL 8 server of your own, with the mysql client
$ mysql -e "CREATE DATABASE shop"
$ mysql shop -e "SHOW TABLES"
$ mysqldump shop > shop.sql
The in-memory data store for caches, counters, queues, leaderboards and messaging, on a Redis server of your own.
A Redis 7 server of your own, with redis-cli
$ redis-cli set greeting hello
$ redis-cli incr page:views
$ redis-cli zrange leaderboard 0 2 rev
The database in a file, inside every phone and browser: SQL, CSV import, indexes, backups and WAL mode with the sqlite3 shell.
SQLite 3 and the sqlite3 shell
$ sqlite3 shop.db ".tables"
$ sqlite3 shop.db ".import --csv sales.csv sales"
$ sqlite3 shop.db .dump > shop.sql