Giao diện
MySQL: lộ trình
Các chương nối tiếp nhau. Nền tảng về page và buffer pool giải thích vì sao mọi thứ phía sau quan trọng. Kiểu dữ liệu và schema quyết định kích thước index. Index quyết định plan của query. Khi nhiều query chạy cùng lúc thì cần transaction và lock. InnoDB giữ dữ liệu bền vững khi máy sập. Cuối cùng là phân tán và mở rộng: replication, CDC, partitioning, sharding.
Nội dung đối chiếu theo MySQL 8.0/8.4 với engine InnoDB.
Đã ôn 0/10 chương · đánh dấu lưu trong trình duyệt này
- Disk, page, buffer pool
Vì sao số page phải đọc là thước đo chi phí; B+Tree dựng từ page; LRU young/old.
- Kiểu dữ liệu
Kiểu nhỏ và đúng bản chất; NULL; thời gian và năm 2038; kiểu cho khoá chính.
- Schema trong MySQL
Khoá và ràng buộc trong InnoDB, cột JSON, schema mẫu, đổi schema khi đang chạy.
- Index
Clustered và secondary, leftmost prefix, ESR, ORDER BY, cardinality, index merge.
- Tối ưu query
Optimizer theo chi phí, chẩn đoán, EXPLAIN, viết WHERE, JOIN, phân trang, batch.
- Transaction & MVCC
ACID, read view và chuỗi version, các mức isolation, lost update.
- Lock
Record, gap, next-key lock; vì sao INSERT bị chặn; deadlock; mẫu khoá an toàn.
- Bên trong InnoDB
Đường đi của một UPDATE, redo/undo/binlog/doublewrite, tham số độ bền.
- Replication & CDC
Cơ chế replication, lag, async và semi-sync, CDC đọc binlog, outbox.
- Mở rộng quy mô
Connection pool, partitioning, sharding và chọn shard key.
Học tiếp
Chủ đề chưa có chương riêng:
- Vận hành. Online DDL (
ALGORITHM=INSTANTthêm cột ở mọi vị trí từ 8.0.29, INPLACE; gh-ost, pt-online-schema-change cho bảng lớn). Backup logical (mysqldump, mydumper) và physical (XtraBackup, Clone plugin); point-in-time recovery bằng binlog. Theo dõiThreads_running, buffer pool hit rate, replication lag, slow log, deadlock trongSHOW ENGINE INNODB STATUS.- Tự hỏi: lỡ chạy
DELETEthiếuWHERElúc 10:05 trên production, khôi phục thế nào?
- Tự hỏi: lỡ chạy
- Cache có phần riêng: Cache (nền tảng, chiến lược, nhất quán, sự cố, giám sát) và Redis.