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

请问如何通过 data 文件恢复 innodb 数据库呢?

  •  
  •   lusin · 2014-03-07 18:42:15 +08:00 · 3579 次点击
    这是一个创建于 3918 天前的主题,其中的信息可能已经有所发展或是发生改变。
    重新装了一下mysql,之前用MyISAM都是直接备份data目录,但innodb重新安装后找不到表,请问如何恢复呢?
    4 条回复    1970-01-01 08:00:00 +08:00
    pubby
        1
    pubby  
       2014-03-07 21:51:15 +08:00
    看看 <host>.err 文件里说了啥错误
    ETiV
        2
    ETiV  
       2014-03-07 23:32:52 +08:00 via iPhone
    如果是动数据库的话,在做任何操作前,都记得要备份、并且检查一下……
    cgs3238
        3
    cgs3238  
       2014-03-08 06:42:52 +08:00 via iPhone
    ……在mysql数据目录下有几个特别大的文件也要备份
    lyragosa
        4
    lyragosa  
       2014-03-08 13:55:14 +08:00
    innodb **绝**对**不**能**直接备份还原文件!! 绝对不能! 亲身经历此类故障,修复无果,导致损失了大约18小时的生产服务器数据。血的教训。

    innodb恢复方法:

    第一:保存binlog(其实就是一个每次数据库操作的SQL文记录),然后用binlog来回溯
    第二:用mysqldump的原始数据恢复
    第三:主从(这个就已经不是恢复的范畴了,随便说一下)

    再次提醒:绝对不要认为保存了/var/lib/mysql下的文件就以为备份了innodb的数据了,最糟的情况,这会导致你的全部innodb库数据完全消失(或者至多留下表结构)

    PS:myisam表可以透过直接复制粘贴数据库文件完成迁移,即使是跨平台(如linux->win)。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3109 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 14:30 · PVG 22:30 · LAX 06:30 · JFK 09:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.