当前位置: 首页 > 编程笔记 >

MySQL创建数据表时设定引擎MyISAM/InnoDB操作

郭曾笑
2023-03-14
本文向大家介绍MySQL创建数据表时设定引擎MyISAM/InnoDB操作,包括了MySQL创建数据表时设定引擎MyISAM/InnoDB操作的使用技巧和注意事项,需要的朋友参考一下

我在配置mysql时将配置文件中的默认存储引擎设定为了InnoDB。今天查看了MyISAM与InnoDB的区别,在该文中的第七条“MyISAM支持GIS数据,InnoDB不支持。即MyISAM支持以下空间数据对象:Point,Line,Polygon,Surface等。”

作为一个地理信息系统专业的学生(其实是测绘专业)来讲,能存储空间数据的数据库才是好数据库,原谅我是数据库小白的身份。

有三种方式可以设定数据库引擎:

(1)修改配置文件

将安装目录下~\MySQL\mysql-5.6.31-winx64的my.int配置文件打开,在[mysqld]的后面修改或添加(如果你之前未设置)下列语句:

default-storage-engine=INNODB

而我会自己修改为MyISAM,以后在你创建数据表时默认引擎为当前设置。

(2)创建数据表时声明

mysql> create table test(
 -> id int(10) unsigned not null auto_increment,
 -> name varchar(10) character set utf8,
 -> age int(10),
 -> primary key(id)
 -> )
 -> engine=MyISAM
 -> ;

上述语句为创建表格的语句,如下图,没有什么可说的。

接下来查询一下,创建的表格的引擎类别。

show create table test;

(3)更改数据表的引擎

数据表的引擎类型,不是一成不变的,可以通过可视化应用如Navicat for Mysql进行修改,也可以通过命令来修改,下面将刚才新建的test表格引擎修改为InnoDB.

alter table test engine=innodb;

补充知识:MySQL 更改所有表的数据引擎,MyISAM 设置为 InnoDB

一、先设置执行SQL语句:

SELECT GROUP_CONCAT(CONCAT( 'ALTER TABLE ' ,TABLE_NAME ,' ENGINE=InnoDB; ') SEPARATOR '' ) 
FROM information_schema.TABLES AS t 
WHERE TABLE_SCHEMA = '数据库' AND TABLE_TYPE = 'BASE TABLE';

把数据库改成你的数据库名字,这里假设我的数据库是database

SELECT GROUP_CONCAT(CONCAT( 'ALTER TABLE ' ,TABLE_NAME ,' ENGINE=InnoDB; ') SEPARATOR '' ) 
FROM information_schema.TABLES AS t 
WHERE TABLE_SCHEMA = 'database' AND TABLE_TYPE = 'BASE TABLE';

二、得到一段超长的SQL,复制后执行这段SQL

三、查看当前数据库的字段存储信息

SHOW TABLE STATUS FROM database;

结果:

以上这篇MySQL创建数据表时设定引擎MyISAM/InnoDB操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍MySQL数据库MyISAM存储引擎转为Innodb的方法,包括了MySQL数据库MyISAM存储引擎转为Innodb的方法的使用技巧和注意事项,需要的朋友参考一下 mysql数据库存储引擎为MyISAM的时候,在大访问量的情况下数据表有可能会出现被锁的情况,这就会导致用户连接网站时超时而返回502,此时就需要MySQL数据库MyISAM存储引擎转为Innodb。 步骤如下: 1、

  • 问题内容: 如何获得Hibernate(使用JPA)来创建MySQL InnoDB表(而不是MyISAM)?我发现了使用Hibernate生成SQL文件创建表时可以使用的解决方案,但是没有“运行中”的方法。 问题答案: 您不能指定hibernate方言并使用 编辑 从MySQL版本> 5.1开始,应该是 为了避免遇到此问题,在MySQL中使用“ TYPE = InnoDB”会引发异常

  • 本文向大家介绍修改MySQL数据库引擎为InnoDB的操作,包括了修改MySQL数据库引擎为InnoDB的操作的使用技巧和注意事项,需要的朋友参考一下 PS:我这里用的PHPStudy2016 1、修改时停止MySQL 2、修改my.ini default-storage-engine=INNODB 3、修改后删除D:\phpStudy\MySQL\data下ib开头的日志文件 4、启动MySQL

  • 本文向大家介绍Mysql 的存储引擎,myisam和innodb的区别?相关面试题,主要包含被问及Mysql 的存储引擎,myisam和innodb的区别?时的应答技巧和注意事项,需要的朋友参考一下 InnoDB支持事务, MyISAM不支持. InnoDB支持行级锁, MyISAM支持表级锁. InnoDB支持多版本并发控制(MVVC), MyISAM不支持. InnoDB支持外键, MyISA

  • 详细介绍了MySQL 的InnoDB和MyISAM存储引擎的区别。 存储引擎主要负责数据的存储和提取。其架构模式是插件式的,包括InnoDB、MyISAM、Memory 等多个可选的存储引擎,InnoDB 在5.5.5后成为默认存储引擎。存储引擎通过API与上层进行通信,这些API屏蔽了不同存储引擎之间的差异,使得这些差异对上层查询过程透明。MySQL的存储引擎架构将查询处理以及其他任务系统和数据

  • 本文向大家介绍Mysql更换MyISAM存储引擎为Innodb的操作记录总结,包括了Mysql更换MyISAM存储引擎为Innodb的操作记录总结的使用技巧和注意事项,需要的朋友参考一下 一般情况下,mysql会默认提供多种存储引擎,可以通过下面的查看: 1)查看mysql是否安装了innodb插件。 通过下面的命令结果可知,已经安装了innodb插件。 ---------------------