Мне выдан довольно большой файл дампа mysql, который мне нужно импортировать в существующую систему. Файл прибывает из Индии, и я считаю, что их настройки локали отличаются от сервера, на который я пытаюсь импортировать. Проблема, которая у меня возникла, связана со всеми полями даты и времени. Дамп имеет их в формате DDMMMYY: HH: MM: SS (например, 21MAR12: 09: 41: 17). При импорте конвертируется в 00-00-0000 00:00:00. Я не контролирую экспорт. Я могу попросить их снова экспортировать данные, если это необходимо (меньше, чем оптимальное решение), но я чувствую, что должен сказать им, как исправить данные для меня (или я могу просто столкнуться с другой проблемой). Есть ли опция командной строки для mysqldump для управления форматом даты и времени, которую я могу сказать им использовать?
Или, что еще лучше, мне нужно найти решение, в котором я могу управлять настройками импорта - возможно, добавив значение в раздел «заголовок» файла дампа (что-то вроде SET DATETIME FORMAT = XXXXXXXXXX).
Я потратил час на поиск и чтение и не могу найти ответ, но, похоже, должен быть способ контролировать / преобразовывать эти вещи при перемещении данных (особенно между серверами с разными настройками локали) )
Также, к сведению! Я не могу изменить схему базы данных, в которую я импортирую. Таким образом, любое решение, в котором говорится, добавить поле varchar и импортировать в него, а затем преобразовать его самостоятельно, просто не будет работать для меня с точки зрения политики компании. Думаю, я мог бы создать фиктивную базу данных, импортировать ее, конвертировать, а затем снова экспортировать, но наверняка надеюсь найти более простую, чем эта! :)
Подробнее:
Запуск Ubuntu 9.04
Locale -a
C
en_US.utf8
POSIX
Mysql 5.0.75 для Ubuntu