红联Linux门户
Linux帮助

ubuntu14.04下通过.frm,.MYD,.MYI文件恢复建立mysql数据库

发布时间:2016-01-15 15:25:47来源:linux网站作者:LYHVOYAGE

.frm .MYD .MYI都是Mysql存储数据的文件, 代表MySQL数据库表的结构/数据和索引文件。其中,*.frm是描述了表的结构,*.MYD保存了表的数据记录,*.MYI则是表的索引。

恢复建立mysql数据库时,先用 sudo su 切换到root角色。


第一,要找到初始安装mysql时,数据库存放的位置。通过指令 cd /etc/mysql 切换到mysql目录下,然后用 vim my.cnf  打开my.cnf文件,查找datadir,例如datadir  = /var/lib/mysql,则数据库文件就保存在 /var/lib/mysql 目录下。


第二,通过 mkdir /var/lib/mysql/dbname 建立名为 dbname 数据库,然后通过cp -r 源目录/* /var/lib/mysql/dbname将.frm   .MYD    .MYI(可能还有.opt文件)拷贝到dbname目录下。打开phpmyadmin后,就会发现多了一个名为dbname的数据库。这样,数据库就建立完成了。


但是,当你点击数据库中的表时,可能会出现 Can't find file: '/xxx.frm'(errno:13)。出现这个问题的原因不是'/xxx.frm'这个文件不见了,而是这些文件的权限(应该要是mysql)不知道为什么变成了root。

解决方法:cd到xxx.frm文件所在目录下,执行一下命令:chown mysql.mysql * 将所有文件的权限都改过来就可以了!如cd /var/lib/mysql/dbname, 然后执行命令:chown mysql.mysql *

再次打开phpmyadmin,就会发现数据库中的表已经可以查看并进行操作了。


linux mysql更改MySQL数据库存储路径(datadir):http://www.linuxdiyf.com/linux/17068.html

ubuntu15.10安装mysql数据库:http://www.linuxdiyf.com/linux/16709.html

腾讯云CentOS7.0使用yum安装mysql:http://www.linuxdiyf.com/linux/16624.html

CentOS 7.1上编译安装MySQL 5.7.10:http://www.linuxdiyf.com/linux/16538.html

Ununtu 15.04安装MySql(Django连接Mysql):http://www.linuxdiyf.com/linux/13783.html