1
lifespy 2018-01-18 09:38:55 +08:00
兼容的吧,mb4 主要是 emoji 标签可以存
|
2
mokeyjay 2018-01-18 09:41:44 +08:00
这些问题你为啥不直接去翻翻对比评测呢,肯定大把人做了
|
3
runntuu 2018-01-18 11:13:33 +08:00 via iPhone
第一个问题: https://www.mysql.com/why-mysql/benchmarks/
第二个问题:utf8 是 utf8mb4 的子集,多了 emoji 支持 |
4
honeycomb 2018-01-18 11:25:53 +08:00 via Android
8.0 是 5.7 的下一个版本
|
5
xman99 2018-01-18 11:59:32 +08:00
现在我新增数据库, 喜欢用 utf8mb4 格式的
|
6
miniyao OP @lifespy
@runntuu @xman99 刚试了下,把 MySQL5.5.55 版本(说是 5.5.3+以上的版本都可以吧?)改成 utf8mb4 之后,测试输入 emoji 表情符号还是存不进去。不知道什么缘故: +--------------------------+--------------------+ | Variable_name | Value | +--------------------------+--------------------+ | character_set_client | utf8mb4 | | character_set_connection | utf8mb4 | | character_set_database | utf8mb4 | | character_set_filesystem | binary | | character_set_results | utf8mb4 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | collation_connection | utf8mb4_unicode_ci | | collation_database | utf8mb4_unicode_ci | | collation_server | utf8mb4_unicode_ci | +--------------------------+--------------------+ |
7
gouchaoer 2018-01-18 12:11:19 +08:00
没问题,另外 5.7 多了个 json,别的 features 一般开发感受很少,所以不用 json 就用 5.6 也没啥问题,反生云厂商提供的大多数还是 5.6
|
8
flyingghost 2018-01-18 12:19:39 +08:00
5.5 入 5.7 遇到过的坑是 MySQL 5.7 以上版本默认禁止 0000-00-00 的日期。
至于 utf8mb4,并没有问题。emoji 存不进去你得找其他原因。 |
9
miniyao OP @flyingghost 好的。存的进去,显示出来全是 ????
|
10
flyingghost 2018-01-18 18:09:32 +08:00 1
@miniyao
显示出来?是用什么显示的? 并不是所有的数据库管理工具都支持 utf8mb4。 如果是用代码读的话,connection 建立的时候设置 charset 了吗? 代码读取到字符串输出的时候,输出到哪里?支持什么编码? 总之从存储到显示,任何一个环节不支持 utf8mb4 的话都会挂。 |
11
likuku 2018-01-18 18:30:58 +08:00
5.7 mysql 自身的 user 表有变化,不可以直接导。
自己的数据表什么,应该没啥问题。 |