mysql frm 没有myd_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

//连接数据库

$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)ordie(‘can\‘t use‘.$db.mysql_error());

$result=mysql_query("show tables ")ordie(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‘")ordie(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

就可以了

原文:http://www.cnblogs.com/xuan52rock/p/4551060.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值