V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
myd
V2EX  ›  数据库

MySQL 升级版本有什么坑吗?

  •  
  •   myd · 12 天前 · 1213 次点击

    目前使用的版本是 MySQL 5.5,32 位的。打算升级到 64 位的 MySQL 8 (或者 MySQL 5.7 )。

    升级理由

    • 32 位版本内存有限,最大 4 个 G 。
    • 升级后性能也会好一些。

    步骤

    1. 安装一个 MySQL 8 实例。
    2. 导入数据到 MySQL 8 并配置为从库。
    3. 主从同步一致后,停掉应用,将从库提为主库。
    4. 修改应用的数据库配置为主库,启动应用。

    想问问:有什么坑?需要注意的地方?

    12 条回复    2021-10-15 10:37:25 +08:00
    sadfQED2
        1
    sadfQED2   12 天前 via Android   ❤️ 1
    PHP 项目的话需要注意新版本的密码检验不支持
    cszchen
        2
    cszchen   12 天前 via iPhone   ❤️ 1
    group 查询不一样了,5.7 以前不是标准的 sql,不过也可以改成 5.7 以前的规则
    jasonkayzk
        3
    jasonkayzk   12 天前
    5.x dump 的 sql 数据在 8.x 可能执行失败(亲身实践
    chengyiqun
        4
    chengyiqun   12 天前
    用 5.7 就行了, 别升级 8.
    Rache1
        5
    Rache1   12 天前
    按照 MySQL 官方的说法,你不能跳版本升级。

    即你只能 5.5 -> 5.6.x -> 5.7.x -> 8.0 这样升级上去。

    当然,如果你直接从 5.5 导出数据,然后导入到 8.0 去,这是没啥问题。

    具体要看文档

    https://dev.mysql.com/doc/refman/8.0/en/upgrade-paths.html
    myd
        6
    myd   12 天前
    @jasonkayzk 是什么原因呢?
    myd
        7
    myd   12 天前
    @Rache1 这个步骤看起来有点麻烦,实际上应该没有人这样操作吧
    BiChengfei
        8
    BiChengfei   12 天前
    id 默认自增策略有区别了,innodb_autoinc_lock_mode 默认值不同

    5.5 中,(默认不清楚,查看:show variables where Variable_name = 'innodb_autoinc_lock_mode';)
    8.0 中,默认 innodb_autoinc_lock_mode = 2

    https://github.com/bichengfei/MySQL/blob/master/InnoDB/6/6.1/6.1.InnoDB%E4%B8%ADauto_increment%E5%A4%84%E7%90%86%EF%BC%88%E5%AE%98%E7%BD%91%E7%89%88%EF%BC%89.md
    BQsummer
        9
    BQsummer   12 天前
    小版本升级坑会少很多;没有很强烈的理由要升到 8
    GoRoad
        10
    GoRoad   12 天前
    可以看看 mariadb
    jasonkayzk
        11
    jasonkayzk   11 天前
    @myd #6 貌似是 5.x 导出的 SQL,在 8.x 中语法不兼容;
    marktask
        12
    marktask   11 天前
    没什么特殊需求不要大版本升级,没什么问题不要小版本更新,能稳定运行就不要升级了
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4100 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 09:00 · PVG 17:00 · LAX 02:00 · JFK 05:00
    ♥ Do have faith in what you're doing.