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

请教:迁移数据库后,为什么同样的数据,不同的占用大小?

  •  
  •   littlehans8 · 59 天前 · 1532 次点击
    这是一个创建于 59 天前的主题,其中的信息可能已经有所发展或是发生改变。

    基础信息:

    1. ubuntu 20;
    2. mysql8,用的是 source 命令导入

    把数据库从服务器 A 迁移到服务器 B 时,发现有一张大表跟 A 服务器占用空间不一致,

    请教下这是什么原因呢?

    会影响数据的一致性吗?

    如图:

    1. 这是服务器 A 表的占用的空间: 4hNuB4.png
    2. 这是服务器 B 表的占用空间: 4hNKHJ.png
    3. 为了测试,我在服务器 B 新建了个数据库重新导入,发现占用最大的表又减少了 30MB: 4hNQE9.png
    10 条回复    2021-10-11 14:42:11 +08:00
    cloudyi666
        1
    cloudyi666   59 天前 via iPhone
    可能事务管理?
    mouzhiyang
        2
    mouzhiyang   59 天前 via Android
    有些删除的数据原表没有释放空间,
    迁移后表是实际大小。
    wanguorui123
        3
    wanguorui123   59 天前 via iPhone
    因为删数据不释放已经分配的空间
    hsymlg
        4
    hsymlg   59 天前
    正常使用的 mysql 都会有页分裂,你这个 source 相当于手动 OPTIMIZE 了吧。可以用 information_schema.TABLES 看看你这两个库的表碎片信息
    skymei
        5
    skymei   59 天前
    原表有碎片呀,重建之后空间变小很正常的,对于经常写入更新的表,碎片率比较大,定期优化下,空间也能减少很多
    PerFectTime
        6
    PerFectTime   59 天前
    日志?
    pkoukk
        7
    pkoukk   59 天前
    数据更新 /删除导致数据位置改变,数据之间存在间隙,这些间隙不会立刻被压缩掉。
    chinafengzhao
        8
    chinafengzhao   59 天前 via iPhone
    你这个什么管理平台?
    linora
        9
    linora   49 天前
    你应该比对数据行数,而不是占用空间

    必要时,使用 pt-table-checksum 工具检查
    jerryli
        10
    jerryli   47 天前
    迁移后,数据更紧凑了,碎片少了,所以变小了。但如果本来就很紧凑,迁移后会变大
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2412 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 08:58 · PVG 16:58 · LAX 00:58 · JFK 03:58
    ♥ Do have faith in what you're doing.