Если говорить о популярном innodb то все довольно просто.
При записи у нас есть фактически 2х уровневое кеширование. Первое на уровне операционной системы, это сброс страничек из памяти на диск, второе это то, после чего вы получаете ответ от БД что операция произедена.
Кеширование на уровне фс, можно "обойти", используя флаг O_DIRECT при открытии файла, более подробно о доступных в mysql методах,
здесь.
Также есть параметр
innodb_flush_log_at_trx_commit который определяет действия бд при осуществлении операции commit (фактически это попытка применения результатов транзакции), пишет ли она синхронно на диск, или достаточно записи в кеш фс, или достаточно записать данные в log который потом посинкается на диск.
Все это непосредственным образом влияет на надежность и дисковое IO. Вы вольны выбирать.