16.4.1.13 复制和小数秒支持

MySQL 5.7 允许TIMEDATETIMETIMESTAMP值的小数秒,精度最高为微秒(6 位数)。参见第 11.2.7 节“时间值的分数秒”

从了解小数秒的源服务器复制到不支持以下内容的较旧副本(MySQL 5.6.3 和更早版本)时,可能会出现问题:

  • 对于CREATE TABLE语句包含* fsp *(分数秒精度)值大于 0 的列,由于解析器错误,复制将失败。

  • 使用* fsp *值为 0 的临时数据类型的语句将适用于基于语句的日志记录,但不适用于基于行的日志记录。在后一种情况下,数据类型在源上具有二进制格式,并且类型代码与副本上的类型代码不同。

  • 一些 table 达式结果在源和副本上会有所不同。示例:在源上,timestamp系统变量返回一个包含微秒小数部分的值;在副本上,它返回一个整数。在源代码上,返回包含当前时间的结果的函数(例如CURTIME()SYSDATE()UTC_TIMESTAMP())将参数解释为* fsp *值,并且返回值包括该位数的小数秒部分。在副本上,这些函数允许一个参数,但忽略它。