我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL如何改变表的存储引擎方式

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL如何改变表的存储引擎方式

1.最简单的方法是使用alter table语句

例如:

alter table tablename ENGINE  = InnoDB;

上述方法可以适用于任何存储引擎的转换,但有一个问题,需要执行很长时间,mysql会按行将数据从原表复制到一张新的表中,在复制期间可能会消耗系统的所有I/O能力,同时原表上会加上锁,所以,在繁忙的表上执行操作要特别小心。

另外,如果转换表的存储引擎,将会失去和原引擎相关的所有特性

例如,将一张InnoDB表转换为MyISAM,然后再转换回InnoDB,原InnoDB表上的所有的外健将丢失。

2.导入导出

为了更好的控制转换的过程,可以使用mysqldump工具将数据导出到文件,然后修改文件中create table语句的存储引擎选项,注意同时修改表名,因为同一个数据库中不能存在相同的表名,即使它们使用的是不同的存储引擎。

同时要注意mysqldump会默认自动的在create table 语句前加上drop table语句,不注意这一点可能会导致数据丢失。

mysqldump的使用方法

3.创建与查询(create 和 select)

第三种技术综合实现了第一种的高效和第二种的安全,不需要导出整张表的数据,而是先创建一个新的存储引擎的表,然后利用insert 和select 语法来导入数据

create table innodb_table like myisam_table;
alter table innodb_table engine = InnoDB;
insert into innodb_table select * from myisam_table;

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.cppcns.com)。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL如何改变表的存储引擎方式

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL如何改变表的存储引擎方式

目录1.最简单的www.cppcns.com方法是使用alter table语句2.导入导出3.python创建与查询(create 和 select)总结1.最简单的方法是使用alter table语句例如:alter tpython
MySQL如何改变表的存储引擎方式
2023-11-22

如何更改MySQL表的存储引擎?

MySQL ALTER TABLE 语句可以更改表的存储引擎,如下 -mysql> ALTER TABLE Student ENGINE = InnoDB;Query OK, 0 rows affected (0.90 sec)Reco
2023-10-22

MySQL如何修改数据表的存储引擎

MySQL修改数据表的存储引擎的步骤:1、查看当前数据表使用的存储引擎;2、备份数据表,以防止修改过程中出现意外情况导致数据丢失;3、可以使用ALTER TABLE语句修改数据表的存储引擎;4、使用SHOW CREATE TABLE语句来验
2023-10-22

mysql如何查看表的存储引擎

可以使用以下语句来查看MySQL表的存储引擎:```sqlSHOW TABLE STATUS LIKE 'table_name';```将"table_name"替换为实际的表名。执行以上语句后,将会返回包含有关表的信息的结果集。其中一个字
2023-08-31

如何将MySQL中的MyISAM存储引擎转换为InnoDB存储引擎?

要将MyISAM引擎转换为InnoDB,我们可以使用ALTER命令。现在让我们借助引擎MyISAM 创建一个表。mysql> create table MyISAMToInnoDBDemo-> (-> id int,-> Name varc
2023-10-22

什么是存储引擎以及如何查看MySQL安装支持的存储引擎列表?

它可以被定义为数据库管理系统(DBMS)用来处理不同的SQL操作(如创建、读取、更新和删除数据库中的数据)的软件组件。换句话说,它被DBMS用来管理数据库中的信息。最常用的存储引擎是InnoDB,它也是MySQL5.5及更高版本的默认存储引
2023-10-22

如何选择MySQL的存储引擎?

这次的内容主要围绕两个问题展开:1.MySQL常见的存储引擎有哪些特点?2.如何选择存储引擎?

编程热搜

目录