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

MySQL5.7 导出的 SQL 文件有什么简单的办法能导入到 5.5 里吗?

  •  
  •   NimaQu · Jan 30, 2018 · 6988 views
    This topic created in 3162 days ago, the information mentioned may be changed or developed.

    手贱在 512m 的小鸡里装了 5.7,开始用着还好,现在开始用一下就爆内存停了,swap 都没用,导致买小鸡要加钱了...听群里的人说 5.7 导入到 5.5 很麻烦....

    17 replies  •  2018-02-01 13:29:39 +08:00
    msg7086
        1
    msg7086  
       Jan 30, 2018
    你开了多少 Swap ?
    zyqf
        2
    zyqf  
       Jan 30, 2018 via Android
    尝试下修改 my.cnf ?
    zyqf
        3
    zyqf  
       Jan 30, 2018 via Android
    我记得 phpMyAdmin 有导出 SQL 选项吧,可以选择兼容 Mysql 版本
    lodisy
        4
    lodisy  
       Jan 30, 2018 via Android
    求问 5.6 导入到 5.7 有没有兼容问题
    Showfom
        5
    Showfom  
       Jan 30, 2018 via iPhone   ❤️ 1
    @lodisy 一般不会有
    fstab
        6
    fstab  
       Jan 30, 2018 via Android
    当时,我也手贱安装了 5.7,512mvps 内存直接原地爆炸,然后照着网上的教程优化很多,还是无济于事。

    那个时候刚接触 linux,有更新强迫症,什么都必须用最新的。后来想着自己就一个 wp 博客,没必要这么好的配置吧,然后就入手了 3.99 刀搬瓦工年付,想做静态博客,结果手贱本性是改不了的,就各种折腾,然后跑了个 typecho。

    现在 64m 内存用 sqlite 跑个博客够了,套的 cf,隐藏下真实 ip。顺便还可以 ss 自用也就够了,一年不到 4 刀成本。

    玩了几年 vps,总结了一下:生命在于折腾,什么够用就行。
    NimaQu
        7
    NimaQu  
    OP
       Jan 30, 2018
    NimaQu
        8
    NimaQu  
    OP
       Jan 30, 2018
    @zyqf 谢谢,我看了下,如果导入 5.5 的数据库是选择 Mysql40 吗?
    msg7086
        9
    msg7086  
       Jan 30, 2018   ❤️ 1
    @NimaQu 如果是内核杀进程的话,swap 再开大点试试。
    开 swap 本身是不会影响性能的。

    降版本的话,直接导入就行了,除非你用了一些少见的特性( utf8mb4 ?),否则 SQL 文件都是全兼容的。

    @lodisy 升级罕有兼容性问题。
    runntuu
        10
    runntuu  
       Jan 31, 2018 via iPhone
    innodb_buffer_pool_size 设了多少?最低 128M MySQL 就能跑起来了,爆内存的原因在哪?
    另外 mysql 5.7 相对于 5.5 有了很大性能提升,还要用 5.5 有点意义不明。
    https://www.mysql.com/why-mysql/benchmarks/
    NimaQu
        11
    NimaQu  
    OP
       Jan 31, 2018
    @runntuu 我也不是很懂,就是用着用着数据库就挂了,看 log 就是莫名其妙 shutdown 的,现在换成 1.7g 内存的机子不会发生这种情况了,就想着应该是内存问题,innodb_buffer_pool_size 我没动过,我是 apt 安装的
    NimaQu
        12
    NimaQu  
    OP
       Jan 31, 2018
    @msg7086 我看 swap 还很空,根本没占用多少.....
    msg7086
        13
    msg7086  
       Jan 31, 2018
    @NimaQu Swap 被使用和被占用是两回事。
    你只能看到 Swap 被占用的量,但是看不到被使用的量……
    msg7086
        14
    msg7086  
       Jan 31, 2018
    @msg7086 占用和使用这两个词其实也挺乱的。
    简单说就是内存申请量和内存使用量,你只能看到内存使用量所占用的 Swap,但是看不到内存申请量所占用的 Swap。
    内核杀进程管的是内存申请量,而不管是不是真的写入了 Swap。
    msg7086
        15
    msg7086  
       Feb 1, 2018
    @msg7086 纠正一下我之前说的。
    Linux 下通常有 Overcommit 内存超量提交机制,内存申请量允许超量,但是稍后如果往这些空间里写入数据,并且内核发现实际内存不够用,就会杀进程。Swap 有助于减少杀进程的机会。

    PS: 我这里有台 1G 不到内存的机器,跑着 MariaDB 10.1.23 ,实际内存才吃了 300M 的样子,你这个 512M 的小鸡报内存不足我觉得问题挺大的。是不是你其他进程吃内存多了导致数据库被杀?
    tydl
        16
    tydl  
       Feb 1, 2018
    PHP 的话,下一个帝国备份王
    runntuu
        17
    runntuu  
       Feb 1, 2018 via iPhone
    @NimaQu
    建议先检查这个参数,如果这个参数过大,
    优先修改这个参数,这个参数用来控制 MySQL 占用的内存大小(先这么理解吧)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   858 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 1506ms · UTC 20:04 · PVG 04:04 · LAX 13:04 · JFK 16:04
    ♥ Do have faith in what you're doing.