首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在MySQL中将MyISAM设置为默认表处理程序?

如何在MySQL中将MyISAM设置为默认表处理程序?
EN

Stack Overflow用户
提问于 2011-06-26 02:14:48
回答 3查看 19K关注 0票数 3

我希望我所有的表和整个数据库都使用MyISAM引擎。

我的项目只使用MyISAM数据库。

我希望所有表的默认表处理程序都是MyISAM。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-26 02:53:20

更新:从MySQL 5.5.5开始,InnoDB一直是默认的存储引擎。MyISAM现在是遗留的,但仍然存在。

此外,default-table-type选项是default-storage-engine的同义词,已在MySQL 5.5中删除。而且,从MySQL 5.6.3开始,默认存储引擎仅为永久表设置存储引擎。

要查看当前的默认存储引擎是什么,请执行以下操作: mysql>显示引擎;MyISAM长期以来一直是默认的,但可能有人已经更改了它。

要将默认存储引擎更改回MyISAM,请输入

代码语言:javascript
复制
default-table-type=myisam

在您的my.cnf中的mysqld部分下,并重新启动mysqld。

要将现有表改回MyISAM,请执行以下操作:

代码语言:javascript
复制
ALTER TABLE tbl_name ENGINE=MyISAM;

此外,数据库没有存储引擎,而表有。因此,要查看表使用的是哪个引擎:

代码语言:javascript
复制
SHOW CREATE TABLE tbl_name; or SHOW TABLE STATUS LIKE 'tbl_name'\G
票数 11
EN

Stack Overflow用户

发布于 2011-06-26 03:03:17

MyISAM是默认的存储引擎。但是,如果您的情况不是这样,则可以执行以下任一操作:

  1. 在MySQL服务器启动期间使用--

-

  1. 引擎进行更改,方法是在my.cnf配置文件中设置默认存储引擎
  2. ,方法是设置环境变量:

代码语言:javascript
复制
SET GLOBAL storage_engine = MyISAM;

SET SESSION storage_engine = MyISAM;
票数 1
EN

Stack Overflow用户

发布于 2017-02-07 04:25:22

对于MySQL 5.7,添加以下行:

代码语言:javascript
复制
default-storage-engine=INNODB

my.inimy.cnf中。

官方文档:https://dev.mysql.com/doc/refman/5.7/en/storage-engine-setting.html

这对我在带有MySQL 5.7.14的WAMP 3.0.6中是有效的,MyISAM是开箱即用的默认引擎,尽管MySQL文档中写着“MySQL 5.7中的默认引擎是InnoDB”。

这是由WAMP开发人员解释的:

说:“我们花了太多的时间在有关数据库损坏的问题上。

我们认为这是因为人们使用INNODB数据库,而不理解这些表更复杂。在MYSQL有机会干净利落地关闭所有数据库之前,他们只是在关机时关闭窗口和杀死作业,当然也从来没有备份过曾经被破坏的数据库,这些数据库突然成了他们生活中最重要的事情。

因此,我们决定将默认数据库引擎设置为MYISAM,因为这些表不太可能发生这种情况。“

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6479655

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档