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
Flourite
V2EX  ›  MySQL

mysql 5.7 升级 8.0 性能提升 or 下降

  •  
  •   Flourite · 31 天前 · 4275 次点击

    看 uber 集群升级 8.0 ,讲的都是性能提升,但自己本地对比了下,发现查询时间还更慢了。。。

    测试方法:

    1. 分别安装好 5.7 跟 8.0 到本地的电脑
    2. 将线上 a 表、b 表、ab 关联表下载导入到两个数据库,buffer pool 调整为 1G
    3. select * from a left join ab on a.id=b.aid left join b on ab.bid=b.id where ... limit 10;

    结果是:5.7 是 1.2s 左右,8.0 是 1.4s 左右

    uber blog: https://www.uber.com/en-JO/blog/upgrading-ubers-mysql-fleet/

    24 条回复    2024-10-16 08:29:47 +08:00
    fengci
        1
    fengci  
       31 天前   ❤️ 1
    哈哈 信你还是信 uber 。 (开个玩笑。)
    Flourite
        2
    Flourite  
    OP
       31 天前
    @fengci 建议自己动手
    wu67
        3
    wu67  
       31 天前
    忘记是在哪看到的, 不保真. 说是后续更新版本为了程序健壮稳定牺牲了部分性能来着?
    realpg
        4
    realpg  
       31 天前
    目前刚升级 8.4 lts, innodb cluster 十七个节点的集群 性能非常理想
    就是他这个坑爹的 mysql router 问题很多
    Jinnrry
        5
    Jinnrry  
       31 天前 via iPhone
    @wu67 我也看过,压测结果是 MySQL 版本更高,性能反而更差了。
    Jinnrry
        6
    Jinnrry  
       31 天前 via iPhone
    但我记得好像说的是 8 以后的版本,5.7 到 8 性能应该还是变好的。

    但是也不绝对,8 相比 5.7 又加了一堆新东西,拖慢速度也有可能
    ShinichiYao
        7
    ShinichiYao  
       31 天前
    新硬件肯定高版本好,老硬件就不一定了
    wuzhewuyou
        8
    wuzhewuyou  
       31 天前 via Android
    上午才把 8 降到 5.7 ,老旧 java springboot 要更新 jdbc 包才能连 8 ,想想还是降 mysql 版本
    yc8332
        9
    yc8332  
       31 天前
    特性更多了,性能基本上不可能更好的。。除非是重构了原有的
    wangyzj
        10
    wangyzj  
       31 天前
    能升级尽量升级,或者换 PG ,aws 已经不支持 5 了,早晚都得上 8
    konakona
        11
    konakona  
       31 天前
    emmm,升级一个 mysql 要写这么长的博客啊。
    那我给我们 team 整了 github workflow+laravel harbor 实现 forge 的 preiview site ,我不得写一千字起步!
    wonderfulcxm
        12
    wonderfulcxm  
       31 天前 via iPhone
    它还把 query cache 移除了,我就不升级。
    feitxue
        13
    feitxue  
       31 天前
    不升级挺好的,要不是漏扫过不去,才懒得升级。
    guanhui07
        14
    guanhui07  
       31 天前
    5.7 到 8 性能应该还是变好的
    8355
        15
    8355  
       31 天前
    你的测试客观吗。。。 系统负载能控制吗
    是否进行了多次测试取平均值
    是否预热了 buffer pool
    Flourite
        16
    Flourite  
    OP
       31 天前
    @8355
    1. vagrant+ubuntu ,5.7 跟 8.0 轮流启动,只是简单的 select 查询,也没运行其他软件
    2. 这个结果正式多次测试过的
    3. buffer pool 我也说了,调整到 1GB ,不然,查询要>40s ,同时,没有使用到 query cache
    encro
        17
    encro  
       31 天前
    就凭借 online ddl,ALGORITHM=instant 我就回不去了。。
    那点性能,随便一个慢 SQL 就不止了。
    yuedanwork
        18
    yuedanwork  
       31 天前
    老机器老版本 新机器新版本

    另外 不妨查查看 uber 或者类似公司测试时的机器配置

    我猜 你测试的机器肯定远不如 uber 用的,而你也应该在贴出结论的同时贴上你测试所用实例的配置
    chobitssp
        19
    chobitssp  
       31 天前
    之后升级成国产又变回 5.x
    fenglangjuxu
        20
    fenglangjuxu  
       31 天前
    别的不说 就说高版本 那个对密码的复杂程度的强制要求 好烦
    SunsetYe
        21
    SunsetYe  
       31 天前
    Percona (业内一直在做 MySQL 周围支持软件的一家公司)之前对 8.0 做了 benchmark ,相同情况下和 5.7 还是有差距的: https://www.percona.com/blog/sakila-where-are-you-going/
    我们团队用下来,主要还是需要更大的机器、索引选择更奇怪,还是需要时间来做迁移调优的
    CloveAndCurrant
        22
    CloveAndCurrant  
       31 天前
    我们这边在 aws 更新 8 之后,也是变慢了。
    qianxaingmoli
        23
    qianxaingmoli  
       31 天前
    我记得以前看见过,单机是 5.7 性能更好
    Bingchunmoli
        24
    Bingchunmoli  
       30 天前 via Android
    @wuzhewuyou jdbc 包不是随便升的吗
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2489 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 15:58 · PVG 23:58 · LAX 07:58 · JFK 10:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.