MySQL
Aprenda MySQL do CLI ao design de esquemas. Fundamentos de SQL, joins, índices, transações, procedimentos armazenados, EXPLAIN e operações.
13 lições, em ordem
- 120 min
O que é MySQL
Boas-vindas. Se você nunca usou um banco de dados, chegou ao lugar certo. Esta lição não tem nenhuma consulta para escrever. Queremos apenas entender...
Relational databaseHistory and Oracle ownershipMariaDB forkMySQL vs Postgres trade-offsInnoDB default engine - 225 min
O CLI do mysql e os Primeiros Comandos
A lição anterior foi só conversa: o que é o MySQL, de onde ele veio, por que existe. Nada disso permite de fato perguntar qualquer coisa a um...
Mysql clientConnecting with -u and -pSHOW DATABASESUSESHOW TABLESDESCRIBE+2 - 330 min
Criando Bancos de Dados e Tabelas
Tudo o que você fez na lição anterior foi olhar. Você se conectou, percorreu os bancos de dados do sistema e espiou dentro de uma tabela que o MySQL...
CREATE DATABASECharacter sets and collationCREATE TABLEPRIMARY KEYAUTO_INCREMENTNOT NULL+3 - 430 min
Tipos de Dados
Volte à tabela products da lição anterior e repare que toda coluna tinha um tipo: INT, VARCHAR(120), DECIMAL(10, 2). Aquilo não era enfeite. O tipo...
INT and BIGINTDECIMAL vs FLOATVARCHAR vs TEXTBOOLEAN as TINYINTDATE vs DATETIME vs TIMESTAMPENUM+1 - 530 min
SELECT e WHERE
Sua tabela tem dez mil produtos e você precisa dos seis que estão sem estoque na categoria de eletrônicos. Tudo o que você algum dia vai fazer com um...
SELECT columnsWHEREAND and ORBETWEENINLIKE with % and _+3 - 635 min
Joins
Seus usuários moram em uma tabela e os pedidos deles moram em outra, e o único fio que liga um pedido à pessoa que o fez é um número em uma coluna....
INNER JOINLEFT JOINRIGHT JOINNo FULL OUTER JOINUNION workaroundSelf-join+1 - 730 min
Agregações e Agrupamento
Alguém pergunta como foi o desempenho da região EU no último trimestre. Essa pessoa não quer quatro mil linhas, quer um número, e se você trouxer as...
COUNTSUMAVGMIN and MAXGROUP BYHAVING+2 - 830 min
Indexes
O endpoint de login funcionava muito bem com duzentos usuários de teste. Em produção, com quatro milhões, WHERE email = '[email protected]' leva oito...
B-tree indexCREATE INDEXMulti-column index left-prefix ruleUNIQUE indexFULLTEXT indexIndexes hurt write performance - 935 min
Transações e Storage Engines
Dois comandos UPDATE transferem vinte reais de Ada para Bilal. O primeiro roda, a conexão cai, o segundo nunca acontece, e vinte reais deixaram de...
InnoDB vs MyISAMSTART TRANSACTIONCOMMITROLLBACKIsolation levelsREPEATABLE READ default+1 - 1035 min
Stored Procedures e Triggers
Todo pedido do sistema deveria ser gravado em um log de auditoria. A maioria é. Os que não foram vieram do console de administração, da importação...
DELIMITERCREATE PROCEDUREIN and OUT parametersCALLCREATE TRIGGERBEFORE INSERT and AFTER UPDATE+1 - 1135 min
EXPLAIN e Otimização de Queries
"Essa consulta está lenta." Você vai ouvir essa frase pelo resto da carreira, e a resposta tentadora é começar a mexer nas coisas: cria um índice...
EXPLAINType column (ALL, ref, range, eq_ref, const)Key and rows columnsEXPLAIN ANALYZE (MySQL 8+)Adding a missing indexSlow query log - 1225 min
mysqldump e Restauração
O job noturno vem gravando um arquivo em disco há oito meses e ninguém nunca abriu esse arquivo. Isso não é um backup, é um arquivo em que você torce...
MysqldumpRedirecting to .sqlRestoring with mysql client--single-transaction for InnoDB--no-data for schema only--all-databases - 1350 min
Projeto Final: Crie um Schema de E-commerce
Toda lição até aqui te entregou uma tabela e pediu que você consultasse. O trabalho de verdade vai no sentido contrário: alguém descreve uma loja e...
Foreign keysON DELETE behaviorIndexes on lookup columnsTransactional order creationEXPLAIN on a real query
Aprenda MySQL no seu idioma
Cada lição, quiz e resposta do tutor aparece no seu idioma. O tutor de IA responde no idioma em que você pergunta.
Roles that use MySQL
See how hiring teams interview engineers on MySQL, in production-like environments.
Database Administrator (DBA)
Hire DBAs in real workspaces with PostgreSQL or MySQL, real replication lag, real slow queries and real backups to restore. Live or take-home.
See the interviewBackend Engineer (Go, Rust, Java)
Hire backend engineers in real services with real databases, real concurrency and real latency budgets. Live or take-home, fully recorded.
See the interview