MySQL

MySQL

6 bài viết trong danh mục này

LOST
DIRTY
PHTM
Isolation Level
rc • rr • for update
BackendMySQLDatabase

Race condition trong MySQL: isolation level nào giải quyết được?

MySQL có 4 isolation level nhưng mặc định REPEATABLE READ không chặn được mọi race condition. Dirty read, lost update, phantom read — từng loại xảy ra khi nào, isolation level nào ngăn được, và khi nào cần SELECT FOR UPDATE.

12 phút đọc18/06/2026
TX1
LOCK
TX2
Deadlock
innodb • log • rollback
BackendMySQLDatabase

MySQL Deadlock: cách đọc log InnoDB và giảm xác suất xảy ra

Deadlock trong MySQL tự resolve nhưng rollback transaction ngẫu nhiên gây lỗi ở app layer. Cách đọc SHOW ENGINE INNODB STATUS để biết chính xác dòng nào bị lock, nguyên nhân phổ biến, và 5 cách giảm xác suất deadlock.

12 phút đọc18/06/2026
12s
200ms
MySQL Query
explain • scan • optimize
DatabaseMySQLSQL

SQL có xử lý dữ liệu lớn được không? Vai trò của index và query

Vì sao SQL vẫn xử lý tốt dữ liệu lớn nếu schema, index và query đúng cách, từ lọc trước khi join đến tối ưu MySQL cho bài toán hàng triệu khách hàng.

11 phút đọc18/06/2026
12s
200ms
MySQL Query
explain • scan • optimize
BackendMySQLDatabase

MySQL query chậm vì ORDER BY và LIMIT: nguyên nhân và cách tối ưu

ORDER BY kết hợp LIMIT có thể gây filesort trên triệu bản ghi dù bảng đã có index. Giải thích cách MySQL chọn execution plan, cách đọc EXPLAIN, và 4 pattern tối ưu thực tế.

12 phút đọc18/06/2026
IDX
SLOW
MySQL Index
scan • query • data
DatabaseMySQLSQL

Vai trò của index và những kiểu query làm MySQL chậm

Vì sao index quan trọng trong MySQL, và những kiểu query hay làm chậm như chưa đánh index, SELECT quá nhiều data, hoặc lấy dư dữ liệu rồi mới xử lý ở code.

10 phút đọc16/06/2026
12s
200ms
MySQL Query
explain • scan • optimize
DatabaseMySQLSQL

Tối ưu MySQL query với 300k+ records

Case study tối ưu query MySQL từ 12s xuống 200ms với explain, index và query rewrite.

10 phút đọc05/06/2026