V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
miniyao
V2EX  ›  MySQL

MySQL5.5 的 database.sql 文件可以直接导入 MySQL5.7 中去用吗?

  •  
  •   miniyao · 2018-01-18 09:31:50 +08:00 via iPhone · 4724 次点击
    这是一个创建于 2527 天前的主题,其中的信息可能已经有所发展或是发生改变。
    不清楚 5.7 具体性能上,比 5.5 提升多少? 5.5 目前的 database.sql 字符集是 utf8,5.7 是 utf8mb4, 直接导过去会乱码吗?

    本来想等 MySQL8.0 版再搞,看起来是个大版本号,只是各大云服务商也还没 8.0 版的数据库产品可选,有自建 MySQL8.0 的朋友吗,8.0 改进大吗
    11 条回复    2018-01-18 18:30:58 +08:00
    lifespy
        1
    lifespy  
       2018-01-18 09:38:55 +08:00
    兼容的吧,mb4 主要是 emoji 标签可以存
    mokeyjay
        2
    mokeyjay  
       2018-01-18 09:41:44 +08:00
    这些问题你为啥不直接去翻翻对比评测呢,肯定大把人做了
    runntuu
        3
    runntuu  
       2018-01-18 11:13:33 +08:00 via iPhone
    第一个问题: https://www.mysql.com/why-mysql/benchmarks/
    第二个问题:utf8 是 utf8mb4 的子集,多了 emoji 支持
    honeycomb
        4
    honeycomb  
       2018-01-18 11:25:53 +08:00 via Android
    8.0 是 5.7 的下一个版本
    xman99
        5
    xman99  
       2018-01-18 11:59:32 +08:00
    现在我新增数据库, 喜欢用 utf8mb4 格式的
    miniyao
        6
    miniyao  
    OP
       2018-01-18 12:08:59 +08:00
    @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 |
    +--------------------------+--------------------+
    gouchaoer
        7
    gouchaoer  
       2018-01-18 12:11:19 +08:00
    没问题,另外 5.7 多了个 json,别的 features 一般开发感受很少,所以不用 json 就用 5.6 也没啥问题,反生云厂商提供的大多数还是 5.6
    flyingghost
        8
    flyingghost  
       2018-01-18 12:19:39 +08:00
    5.5 入 5.7 遇到过的坑是 MySQL 5.7 以上版本默认禁止 0000-00-00 的日期。
    至于 utf8mb4,并没有问题。emoji 存不进去你得找其他原因。
    miniyao
        9
    miniyao  
    OP
       2018-01-18 12:24:11 +08:00
    @flyingghost 好的。存的进去,显示出来全是 ????
    flyingghost
        10
    flyingghost  
       2018-01-18 18:09:32 +08:00   ❤️ 1
    @miniyao
    显示出来?是用什么显示的?
    并不是所有的数据库管理工具都支持 utf8mb4。
    如果是用代码读的话,connection 建立的时候设置 charset 了吗?
    代码读取到字符串输出的时候,输出到哪里?支持什么编码?
    总之从存储到显示,任何一个环节不支持 utf8mb4 的话都会挂。
    likuku
        11
    likuku  
       2018-01-18 18:30:58 +08:00
    5.7 mysql 自身的 user 表有变化,不可以直接导。

    自己的数据表什么,应该没啥问题。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4775 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 09:48 · PVG 17:48 · LAX 01:48 · JFK 04:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.