当前位置: 首页 > MySQL数据库

怎么解决mysql的Warning问题

时间:2026-01-28 14:10:39

今天重启mysql错误日志显示有如下警告:
2016-06-24 09:20:07 0 [Warning] option 'general_log': boolean value '/data/DB/mysql/select.log' wasn't recognized. Set to OFF.
2016-06-24 09:20:07 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

第一个警告是查询日志文件没有找到,系统选择关闭查询日志功能:
[root@trcloud-gtt-dw ~]# ls -l /data/DB/mysql/select.log
ls: cannot access /data/DB/mysql/select.log: No such file or directory
[root@trcloud-gtt-dw ~]# touch /data/DB/mysql/select.log
[root@trcloud-gtt-dw ~]# chown mysql:mysql /data/DB/mysql/select.log
通过创建文件解决

第二个警告是要关掉这种非标准行为,得在启动服务前开启系统变量explicit_defaults_for_timestamp! 如此,系统方能按如下的方式处理timestamp:
timestamp榄没有显式声明为not null的将会允许null值。设置为null就会是null,而不是当前timestamp!
没有timestamp榄会被自动赋值为default current_timestamp或on update current_timestamp。而是要显式去赋值!
timestamp榄声明为not null并且没有显式声明一个默认值将被认定为没有默认值。向这样的榄插入记录将完全看SQL模式的心情。如果是strict模式,就报错!
如果不是,将被赋值为'00-00-00 00:00:00'并给一个警告。处理DATETIME也是这样!
通过在mysql.cnf,mysqld下面加explicit_defaults_for_timestamp=true解决


上一篇:怎么解决MySQL中的innobackupex: Error问题
下一篇:Mysql相关技术举例分析
mysql
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素