mysql的data数据库只有.frm 而.myd和.myi没有,使用正常

正常 data目录下的数据库文件只要表结构文件frm文件...甚是不解  钻研过后知道

mysql的默认数据库引擎模式呗设置成了InnoDB

innodb表没有没有MYD和.MYI,其数据文件对应于ibdata1文件中

要让.myd和.myi的数据库文件也出现,则转换表类型innodb为myisam.

解决方法:

Sql中InnoDB类型转换为MyISAM命令

ALTER TABLE 表名 engine= MyISAM;

连编码一起转

ALTER TABLE 表名 engine=MyISAM CHARACTER SET utf8;

下面提供一个数据库批量转换PHP代码

一个php脚本,没有错误检查,谨慎使用,最好使用前先备份!

,保存成zhuanhuan.php

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

<?php

//连接数据库

$host=‘localhost‘;

$user=‘mysql_username‘;   //管理账户

$passwd=‘mysql_password‘; //密码

$db=‘wordpressdb‘;  //数据库名称

$link= mysql_connect($host,$user,$passwd);

if (!$link) {

die(‘Could not connect: ‘.mysql_error() );

}

mysql_select_db( $db,$link ) or die (‘can\‘t use‘. $db . mysql_error());

$result=mysql_query("show tables ") or die( mysql_error());

while($row=mysql_fetch_row($result)){

#echo $row[0];

#var_dump($row);

echo "$row[0] \n";

mysql_query("alter table  $row[0] engine=‘MYISAM‘") or die (mysql_error());

}

#var_dump($result);

mysql_close($link);

?>

上传到网站根目录....访问即可完成批量转换http://www.skyfox.org/zhuanhuan.php

-----------------------------------------------------------------

在建表的时候可以指定引擎,也可以指定默认的引擎
在linux my.cnf 中window下的 my.ini 找到
default-storage-engine,如果有
没有就直接加入
default-storage-engine=MYISAM
就可以了

时间: 2024-10-12 08:02:09

mysql的data数据库只有.frm 而.myd和.myi没有,使用正常的相关文章

如何将frm格式MYD格式MYI格式文件导入MySQL中

frm,myd,myi是属于MySQL存储数据的文件,phpMyAdmin是无法导入的. phpMyAdmin支持的文件格式为sql文件. 其实很简单: 1.找到你的mysql的安装目录下的data文件夹,新建一个文件夹,文件夹的名称是你想设计的库的名称,把这些文件(frm,myd,myi格式的文件)放到此文件夹中. 提示:也可以使用mysql管理工具创建一个数据库(例如:create database mydb;其中mydb是数据库名称),这时在data文件夹下会对应产生一个mydb的文件夹

如何导入外部的frm、MYD、MYI文件到自己的mysql上查看

很多时候,在查看某些项目的数据库文件时,发现不是一般的.sql文件,而是.frm..MYD..MYI这三个文件,这时候就有很多朋友不清楚怎么查看了. po主也是在百度上翻翻查查,看了一篇又一篇,终于鼓捣出来了.很多发表的文章都说了,咱们自己建的数据库文件是放在mysql安装目录下的data文件里,可是...看下图,po主的数据库可不止这2个. 出现这种情况,有可能是mysql版本的不同,po主这里安装的是5.6版本的,安装在c盘下,如果安装路径不一样的朋友,请根据你们的自身情况查看 现在就揭晓5

mysql中的data下的数据文件(.FRM、.MYD、.MYI)恢复为数据

记一次mysql中的data文件操作经历 想拿到一个项目的最新的数据,做功能升级使用,备份一份数据同时也作为本地测试数据,文件有些大,我直接通过远程的phpmyadmin程序导出,不能愉快的玩耍,直接联系了IDC的同事帮忙导一份sql文件出来一下,结果那哥们没得直接扔给了我data文件,这让我如何是好,这个问题我没遇见过啊.处于面子问题,又不好意思再让他重新发我一份sql文件,只好硬着头皮尝试一下如何恢复成数据. 环境申明 以下操作都是针对windows下的操作 Data文件分析 *.frm是描

frm、myd、myi、opt、par文件

.frm 表结构文件 .myd 表数据文件 .myi 表索引文件 .opr 储存数据库的默认字符集 .par 储存分区信息 mysql 5.6版本分区表有一个文件:表名.par, 该文件在5.7.6版本后被移除. https://blog.csdn.net/spb3732/article/details/84027307 原文地址:https://www.cnblogs.com/jie828/p/11200548.html

mysql通过data目录恢复数据库

mysql通过data目录恢复数据库 阅读:1236次   时间:2010-03-24 06:53:30   字体:[大 中 小] 重装系统后,MySQL服务没有了,但是数据库的文件还在,这个时候我想恢复以前的数据库, 起码要把数据导出来. MySQL重装N次,永远提示Could not start service error:0! 后来终于找到一个方儿,就是先把以前的库文件都拷贝出来,把以前的MySQL文 件全部清除,然后装个新的,这个时候MySQl可以正常启动了,然后在新的MySQL里建一个

mysql通过data文件恢复数据库的方式

1.首先定位mysql的my.ini配置文件,查找datadir的位置 #Path to the database rootdatadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" 一般情况下,该文件夹是隐藏,需要显示所有文件. 2.将data目录下的文件拷贝至datadir.重启启动数据库即可 net start mysql mysql通过data文件恢复数据库的方式,布布扣,bubuko.com

mysql load data infile的使用 和 SELECT into outfile备份数据库数据

LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt' [REPLACE | IGNORE] INTO TABLE tbl_name [FIELDS [TERMINATED BY 'string'] [[OPTIONALLY] ENCLOSED BY 'char'] [ESCAPED BY 'char' ] ] [LINES [STARTING BY 'string'] [TERMINATED BY 'string

mysql基础和数据库的优化

Mysql基础... 4 Mysql介绍... 4 登录mysql mysql –u root –p[掌握]... 4 SQL语言... 4 DCL. 4 grant. 4 revoke. 4 DDL. 4 建库... 4 删库... 4 建表... 4 看表结构... 5 删表... 5 修改表... 5 DML[重点]... 5 增加... 5 删除... 5 修改... 5 查看... 5 排序... 5 总数... 5 求和... 5 平均... 6 最大... 6 最小... 6 表连

mysql for linux 数据库的安装过程

mysql for linux 数据库的安装过程 l  安装版本:mysql-advanced-5.6.12-linux-glibc2.5-x86_64.tar.gz ,此版本是绿色版本,只需要将其解压到相关目录即可. PS:此安装方法为不针对特定平台的通用安装方法,使用的二进制文件是后缀为.tar.gz的压缩文件 PS:Mysql下载地址:http://pan.baidu.com/s/1eQJhoLO 1.创建mysql用户/账号 [[email protected] ~]#  groupad