elsonwe

utf8是三字节一个字符,而emoj表情是四子节,所以需要将字符集变更为utf8mb4。后者对utf8是兼容的。

对于已有数据的生产库,变更流程如下:

非常重要!不要在繁忙时段操作,否则锁表的后果不可预计

  1. 服务器端:jdbc连接需要支持emoj,但是jdbc连接串里的charset不支持utf8mb4。修改mysql的character_set_server为utf8mb4,需要重启实例。这样jdbc会自动检测这个参数,并保持一致
  2. mysql:将需要修改的表,用下述sql变更。完成后,所有char的字段都会修改
    ALTER TABLE `test` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

     

分类:

技术点:

相关文章:

  • 2022-02-04
  • 2021-11-28
  • 2021-04-06
  • 2022-01-24
  • 2021-06-21
  • 2022-01-10
猜你喜欢
  • 2022-01-11
  • 2021-11-28
  • 2021-05-27
  • 2021-12-27
  • 2022-01-15
  • 2021-07-09
相关资源
相似解决方案