TiDB和MySQL默认设置区别对比

  • A+
所属分类:TiDB
2023云数据库优惠活动

阿里云:2核4G服务器6M带宽68元/年、2核4G服务器188元一年、4核8G5M 1000元、8核16G5M......

腾讯云:2核4G服务器8M带宽70元一年,更多1c2g/2c4g/2c8g/4c8g/8c16g/16c32g...

TiDB和MySQL默认设置有区别,主要表现在默认字符集、默认排序规则、默认SQL mode、lower_case_table_names的默认值及explicit_defaults_for_timestamp的默认值,数据库吧分享TiDB和MySQL默认设置区别:

默认字符集不同:

  • TiDB中为utf8mb4
  • MySQL 5.7中为latin1,MySQL 8.0中修改为utf8mb4
  • 默认排序规则不同:

  • TiDB中,utf8mb4的默认排序规则为utf8mb4_bin</li>
  • MySQL 5.7 中,utf8mb4的默认排序规则为utf8mb4_general_ci,MySQL 8.0 中修改为utf8mb4_0900_ai_ci
  • 请使用SHOW CHARACTER SET语句查看所有字符集的默认排序规则
  • 默认SQL mode不同:

  • TiDB中为STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION
  • MySQL中为ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
  • lower_case_table_names的默认值不同:

  • TiDB 中该值默认为 2,并且目前 TiDB 只支持设置该值为2
  • MySQL中默认设置:

    Linux 系统中该值为0
    Windows 系统中该值为1
    macOS 系统中该值为2

  • explicit_defaults_for_timestamp的默认值不同:

  • TiDB中该值默认为ON,并且目前TiDB只支持设置该值为ON
  • MySQL中默认设置:

    MySQL 5.7:OFF
    MySQL 8.0:ON

  • 本文仅供参考,详细请以PingCAP官方文档为准。

    2023腾讯云服务器超便宜,这个价格太可以了,抓紧上车!

    注意:以上特价轻量服务器限制条件为“产品首单特惠”,如果你的腾讯云账号已经是老用户,建议重新注册一个腾讯云账号,如果你是新用户符合条件,那么无脑入,这个CPU内存带宽配置,价格确实便宜,值得买!

    注意:购买阿里云数据库,先领取阿里云2000元代金券,符合条件的订单可以使用代金券抵扣。

    阿里云代金券

    发表评论

    :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: