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

本文提供了一个PHP脚本,用于批量将MySQL数据库中的InnoDB表转换为MyISAM表类型,包括编码转换。脚本适用于网站根目录下的zhuanhuan.php页面,实现快速转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

正常 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

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

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

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

要将.frm.myd.myi文件转换为.sql文件,首先需要了解这些文件的含义。这些文件MySQL数据库中存储结构数据的文件扩展名。 .frm文件MySQL数据库中的定义文件,它包含的结构信息,例如列名、列类型约束等。 .myd文件MySQL数据库中的数据文件,它包含了中的实际数据。 .myi文件MySQL数据库中的索引文件,它包含了的索引信息,用于加快对中数据的查询速度。 要将这些文件转换为.sql文件,可以按以下步骤进行操作: 1. 确保已经安装了MySQL数据库,并且可以通过命令行或图形界面工具访问数据库。 2. 打开命令行窗口或MySQL图形界面工具,连接到MySQL数据库。 3.MySQL命令行窗口或图形界面工具中,使用USE语句选择要导入数据的数据库。 4. 使用CREATE TABLE语句创建结构,语法如下: CREATE TABLE 名 (列名1 列类型1,列名2 列类型2,...,列名n 列类型n); 根据.frm文件的结构信息,逐个列出的列名对应的列类型。 5. 使用LOAD DATA INFILE语句导入数据,语法如下: LOAD DATA INFILE '文件路径' INTO TABLE 名; 根据.myd文件的数据信息,将数据导入到中。 6. 重复以上步骤,分别使用ALTER TABLECREATE INDEX语句添加索引,语法如下: ALTER TABLE 名 ADD INDEX 索引名 (列名1,列名2,...,列名n); 根据.myi文件的索引信息,添加相应的索引。 最后,将以上步骤按照正确的顺序组合起来,就可以将.frm.myd.myi文件转换为.sql文件。记得在转换过程中,要确保文件路径文件名的正确性,并根据实际情况进行适当的调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值