如何移值(恢复、还原)Mysql中的innoDB的数据库。

今天搞了一天,终于搞定了。

对于Mysql有两种模式,MYISAM与INNODB

如果是MYISAM的话,在data目录下里会.frm .myd .myi 三种文件,那么直接把DATA移过去,配置好权限就可以还原了。

如果是INNODB的话,那是相当的烦啊。在data目录下只有.frm(这只是一个数据格式),这个移过去后,是无法还原原始数据的。

真正的数据是正放在data目录下的iddata1里。因此,如果有这个文件,那么还是有希望还原的。

但我试了网上所有的文章,都还是提示“数据库里没有表”。

最后我找到了答案。那就是my.ini的配置文件。里面有一项:

innodb_data_home_dir="C:\Program Files\MySQL\MySQL Server 5.1\data"

只要把上面的地址设为你正确的地址就可以了。

记得重启一下mysql (在CMD里输入net stop mysql,然后net start mysql)就可以了还原了。。。

我花了一天时间发现的问题,希望能对同样遇到问题的朋友有所帮助。

总结,对于Mysql还是默认采用MYISAM的比较好,容易转移。数据库与数据库是分开的,不会混在一起。所以可以在My.ini里设一下默认项:

default-storage-engine=MYISAM

good luck!!

相关文档:

myphpadmin功能虽然已经很强,但用户体验方面并不很好。

SQLyog

Mysql-front

EMS MySQL Manager

Mysqlcc

Navicat for MySQL

mysql-gui-tools

MySQL 图形工具介绍(转载)

1、Navicat

Navicat是一个强大的MySQL数据库管理和开发工具。Navicat导航为专业开发者提供了一套强大的足够尖端的工具,但它对于新用户仍然 ......

linux安装mysql.txt

2009-03-22 10:45

一、引言

想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL。本以为有Windows下使用SQL Server的经验,觉得在Linux下安装MySql应该是易如反掌的事,可在真正安装和使用MySQL时走了很多弯路,遇见很多问题,毕竟Linux ......

mysql 目录下的 my.ini 有两处要修改 一处是 [mysql] default-character-set=gbk 还有一处是否认建表时使用的字符集 default-character-set=gbk 两处修改一下,重新建立数据库和表后就不会出现乱码了。 建表时也可以指定数据库或表所使用的字符集 如果不能重建数据库则只能在指定的数据库目录下把对应的 db.opt � ......

进入MySQL:mysql -u root -p password;

退出MySQL:quit/exit;

创建数据库:create database database-name;

显示所有的数据库: show databases; 注意有个s;

删除数据库:drop database databasename;

l连接数据库:use databasename;提示:database changed;

选择当前数据库:select database();

当前数据库所包含的 ......