zoukankan      html  css  js  c++  java
  • mysql5.7下的timestampn Error : Invalid default value for 'timestamp'

    表格创建是爆了个错

    Error : Invalid default value for 'timestamp'

    参考:http://www.jb51.net/article/71107.htm

    这版本导致的。

    mysql配置文件

    mv /usr/local/mysql/suport-file/default-my.cnf /etc/my.cnf

    explicit_defaults_for_timestamp=1

    如果还报1055错的话,改一下sql_mode

    查看当前的sql_mode

    select @@sql_mode;
    show variables like 'sql_mode%'

    sql_mode='ONLY_FULL_GROUP_BY,NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,

    ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES'

    复制一份,去掉ONLY_FULL_GROUP_BY,NO_ZERO_IN_DATE,NO_ZERO_DATE 顺便把默认时间不能为0的也去掉,因为我之后还要迁移旧版本的数据。

    里面就有很多这种设置

    在my.cnf 中的mysqld中

    sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

    如果使用 set globle或者set session 的话只在当前会话有效,重启mysql 之后将会失效

    =============

    之后我使用lnmp包中的mysql5.7,发现/etc/my.cnf下mysqld没有sql_mode,而且通过命令修改重启后还会失效,那么自己加上去吧

    sql_mode=

    explicit_defaults_for_timestamp = true

    重启mysql

    参考文章:

    http://www.shangxueba.com/jingyan/1609295.html

  • 相关阅读:
    Python易忽略要点记录二
    Python使用的几个小技巧
    MySQL内容整理二
    C++面向对象知识总结
    AssemblyInfo 的作用
    中国新年第一篇
    function函数的运用
    C语言1博客作业03
    C语言1博客作业02
    .C# 拷贝一个图片到指定文件夹下(IO文件操作实例)
  • 原文地址:https://www.cnblogs.com/findgor/p/5493254.html
Copyright © 2011-2022 走看看