Подтвердить что ты не робот

Как включить explicit_defaults_for_timestamp?

Когда я пытаюсь запустить mySQL-сервер, я получаю сообщение:

[Warning] TIMESTAMP с неявным значением DEFAULT устарел.   Используйте параметр --explicit_defaults_for_timestamp (см.   документацию для более подробной информации).

Я нахожу ответ на:
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html#sysvar_explicit_defaults_for_timestamp

Но как это сделать? Где?

4b9b3361

Ответ 1

Сначала вам ничего не нужно менять.

Те нестандартное поведение остаются по умолчанию для TIMESTAMP, но по состоянию на MySQL 5.6.6 устарели, и это предупреждение появляется при запуске

Теперь, если вы хотите перейти на новое поведение, вы должны добавить эту строку в свой my.cnf в разделе [mysqld].

explicit_defaults_for_timestamp = 1

Местоположение my.cnf(или других файлов конфигурации) варьируется от одной системы к другой. Если вы не можете найти ссылку на https://dev.mysql.com/doc/refman/5.7/en/option-files.html

Ответ 2

На платформе Windows,

1) Найдите конфигурационный файл my.ini.
2) В my.ini перейдите в раздел [mysqld].
3) Добавьте "explicit_defaults_for_timestamp" без кавычек и сохраните изменение.
4) Запустите mysqld

Это сработало для меня (Windows 7 Ultimate 32bit)

Ответ 3

В моей системе (Windows 8.1) проблема была связана с конфигурацией сервера. Сервер работал в первый раз, когда я его установил. Однако я забыл проверить вариант "работать как услуга", и это вызвало все проблемы. Я попробовал все возможные решения на SO, но ничего не получилось. Итак, я решил переустановить MySQL Workbench. При выполнении того же самого файла msi, который я ранее использовал для установки Workbench MySQL, я переконфигурировал сервер и разрешил запускать сервер в качестве службы.

Ответ 4

В Windows - откройте файл my.ini, находящийся в папке "C:\ProgramData\MySQL\MySQL Server 5.6", найдите "[mysqld]" (без кавычек) в следующей строке, добавьте clear_defaults_for_timestamp, а затем сохраните изменения.

Ответ 5

В командной строке mysql: SET explicit_defaults_for_timestamp=1

Ответ 6

Я использую Windows 8.1, и я использую эту команду

c:\wamp\bin\mysql\mysql5.6.12\bin\mysql.exe

вместо

 c:\wamp\bin\mysql\mysql5.6.12\bin\mysqld

и он отлично работает.

Ответ 7

В Windows вы можете запускать сервер с ключом опции, не нужно изменять ini файлы.

"C:\mysql\bin\mysqld.exe" --explicit_defaults_for_timestamp=1

Ответ 8

Для меня это работало, чтобы добавить фразу "explicit_defaults_for_timestamp = ON" без кавычек в конфигурационный файл my.ini.

Убедитесь, что вы добавили эту фразу прямо под оператором [mysqld] в файле конфигурации.

Вы найдете my.ini под C:\ProgramData\MySQL\MySQL Server 5.7, если вы выполнили установку MySQL по умолчанию.