数据库是.frm,.myd,myi备份如何导入mysql (转)
今天找了个案例,琢磨了半天,才分析大概出来,数据库是.frm,.myd,myi备份,不会导入mysql,到网上找了些资料,导入成功。
首先说一下这几种文件是干什么的,*.frm是描述了表的结构,*.MYD保存了表的数据记录,*.MYI则是表的索引 把mysql数据库的*.frm,*.myd,*.myi,文件导到数据的方法
1、最简单就是,直接拷贝到数据库的的data下的数据库文件夹,前提是 mysql的版本一致,字体一致。 此方法简单快捷但不是没个人都能做到。
2、就是在本地机器安装mysql数据库转换*.frm,*.myd,*.myi,文件为*.sql文件:
1、首先安装mysql,最好版本和服务器一致,字体也要一致(不一致导入后有后遗症-乱码)。 2、然后用建库命令 创建新的数据库命令如下: create database name;(创建名为name的数据库呵呵“;”不能少) 然后去你安装的mysql目录下的data文件夹下就有个name文件夹。(为何在此我的Mysql5.5版本,没有生成此文件夹呢?
按照网上的说法,我建立那个名为dbname的数据库时系统就建立了个以数据库名命名的文件夹,这个文件夹位于MySQL安装目录下的data文件夹下,我找了半天根本没有,甚至MySQL安装目录下根本就没有data这个文件夹,再次google,原来是这样,MySQL 安装路径下面有个my.ini,用记事本打开 查找 datadir,后面有路径, 我的是 C:/ProgramData/MySQL/MySQL Server 5.1/Data/ ) 3、把你的*.frm,*.myd,*.myi文件统统考P到data文件夹下。 4、然后在命令提示符下进入到mysql 安装目录的bin目录下 进行导出为*.sql文件。 mysqldump -uroot -p name > name.sql。
(执行,注意:name就是我前面创建的数据库名字。完后你就会在bin目录下发现一个name.sql了,怎样,简单吧。但是我在用的时候发现命令提示符下用cd命令已经不能进入bin目录了,甚至不能更改当前目录,不知为何,难道是因为装了MySQL?双击mysqldump.exe,cmd窗口一闪而逝,命令没法输入吖,咋办,又得想招,还是用批处理吧,简单省事。在bin目录里建立个txt文件,把上面那条命令复制进去,另存为,保存类型选所有文件,上面的文件名随便取,但是要加上扩展名.bat,例如“新建文本文件.bat”,保存。双击刚生成的这个bat文件,搞定。(有的同学不会使用cd命令,google一下便知,例如我输入cd e:\aaa,执行后当前目录就是e:\aaa了))
自己操作的几点体会: 1、mysql数据库最好安装的根目录下这样在命令提示符时省很多事情。 2、*.sql倒出时最好是一个表一个表的导出 文件名最好为 dataname_tabname.sql,好记便于导入。 而且一个表的导出*.sql文件小。因为好多数据库限制大小,例如我用的DH的空间限制为10m ,大了的话导入不了(对了导出后大于服务器限制的可以打成zip也可以导入)