Обратите внимание, что LOCALTIMESTAMP () является синонимом NOW (). Так что вы действительно спрашиваете, как получить текущее время и преобразовать его в GMT, а затем преобразовать в метку времени Unix для хранения в БД. Так что это будет работать:
SELECT UNIX_TIMESTAMP(CONVERT_TZ(NOW(), @@global.time_zone, 'GMT'));
Кроме того, всегда лучше использовать столбцы времени и даты базы данных, а не метки времени Unix. Это значительно упрощает запрос и отображение результатов.
Обновление: Вы уверены, что получаете то, что думаете? UNIX_TIMESTAMP возвращает секунды в формате UTC, начиная с эпохи UNIX . Он не возвращает MySQL DateTime тип . Если у вас есть фактический экземпляр UTC DateTime, вы можете поместить его непосредственно в столбец DateTime своей базы данных, и вам не нужно будет использовать UNIX_TIMESTAMP в качестве посредника. Какой у вас тип по местному времени?