解决方案 »

  1.   

    只有 MyISAM类型 的表可以通过拷贝文件进行迁移
    其他类型的表都必须通过迁移工具迁移
      

  2.   

    拷贝全了没有? 里面的ibdata1文件拷贝了没有?
      

  3.   

    直接拷贝 ibdata1 是不妥当的
    1、他会覆盖目标数据库的否写表数据
    2、把原库的垃圾也带过来了
    3、会因磁盘格式的不同等原因,在创建数据块索引时发生错误,无法修复时就废掉了
      

  4.   

    ibdata1也拷贝了。
    有frm文件也不能修复或拿到部分数据么?
      

  5.   

    先停止 mysql 服务
    用命令行方式启动 mysql
    你会看到有关文件修复的各种信息我以前也做过这种在两个 mysql 下直接拷贝文件的事情,但总是没能完美的处理成功
    后来都是用指派 datadir 和 innodb_data_file_path 来完成不同 mysql 下数据共享的你或许可以这样做:在原来的 mysql 中把   innodb 的表转换成 MyISAM 的表(管理工具中只是点点鼠标而已)
    将转换后的 MyISAM 表拷贝到目标位置,然后在转换成 innodb
      

  6.   

    为什么不用mysqldump来做?如果两个mysql版本不一致,可能还需要工具修复下导出的sql文件
    直接copy文件夹这种不可取
      

  7.   


    原来的mysql已经没了,只有备份文件了,可以恢复吗?
      

  8.   

    那原来的 mysql 的版本号是多少?
      

  9.   

    给个链接,看看对你是否有帮助 http://www.baidu.com/s?wd=innodb+frm%E6%96%87%E4%BB%B6%E6%A0%BC%E5%BC%8F&ie=utf-8
      

  10.   


    感谢!
    已经可以了
    老版本的数据文件和表文件是在data目录下的
    新版本的数据文件在mysql目录下,表文件在data目录下
    移动一下ibdata1文件就可以了。