Wygląda na to, że jesteś w Stanach Zjednoczonych, w strefie czasowej, w której właśnie rozpoczął się czas letni .
Dlatego 2:00 w nocy nie istnieje dzisiaj.
DATETIME
w MySQL używa czasu lokalnego (strefę czasową można ustawić na wiele sposobów), a w twoim przypadku jest to prawdopodobnie Twoja czasu lokalnego, dlatego napotykasz ten problem. Jeśli naprawdę chodziło Ci o UTC , musisz najpierw ustawić strefę czasową na UTC, używając SET time_zone = "+00:00"
lub ustawiając prawidłową konfigurację globalną
.
Ponieważ twoja biblioteka PHP generuje ten (nieprawidłowy) czas, zakładam, że masz niezgodność między strefami czasowymi używanymi przez PHP i MySQL.