我在配置mysql時(shí)將配置文件中的默認(rèn)存儲(chǔ)引擎設(shè)定為了InnoDB。今天查看了MyISAM與InnoDB的區(qū)別,在該文中的第七條“MyISAM支持GIS數(shù)據(jù),InnoDB不支持。即MyISAM支持以下空間數(shù)據(jù)對象:Point,Line,Polygon,Surface等?!?/p>
作為一個(gè)地理信息系統(tǒng)專業(yè)的學(xué)生(其實(shí)是測繪專業(yè))來講,能存儲(chǔ)空間數(shù)據(jù)的數(shù)據(jù)庫才是好數(shù)據(jù)庫,原諒我是數(shù)據(jù)庫小白的身份。
有三種方式可以設(shè)定數(shù)據(jù)庫引擎:
(1)修改配置文件
將安裝目錄下~\MySQL\mysql-5.6.31-winx64的my.int配置文件打開,在[mysqld]的后面修改或添加(如果你之前未設(shè)置)下列語句:
default-storage-engine=INNODB
而我會(huì)自己修改為MyISAM,以后在你創(chuàng)建數(shù)據(jù)表時(shí)默認(rèn)引擎為當(dāng)前設(shè)置。
(2)創(chuàng)建數(shù)據(jù)表時(shí)聲明
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
-> ;
上述語句為創(chuàng)建表格的語句,如下圖,沒有什么可說的。
接下來查詢一下,創(chuàng)建的表格的引擎類別。
show create table test;
(3)更改數(shù)據(jù)表的引擎
數(shù)據(jù)表的引擎類型,不是一成不變的,可以通過可視化應(yīng)用如Navicat for Mysql進(jìn)行修改,也可以通過命令來修改,下面將剛才新建的test表格引擎修改為InnoDB.
alter table test engine=innodb;
補(bǔ)充知識(shí):MySQL 更改所有表的數(shù)據(jù)引擎,MyISAM 設(shè)置為 InnoDB
一、先設(shè)置執(zhí)行SQL語句:
SELECT GROUP_CONCAT(CONCAT( 'ALTER TABLE ' ,TABLE_NAME ,' ENGINE=InnoDB; ') SEPARATOR '' )
FROM information_schema.TABLES AS t
WHERE TABLE_SCHEMA = '數(shù)據(jù)庫' AND TABLE_TYPE = 'BASE TABLE';
把數(shù)據(jù)庫改成你的數(shù)據(jù)庫名字,這里假設(shè)我的數(shù)據(jù)庫是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,復(fù)制后執(zhí)行這段SQL
三、查看當(dāng)前數(shù)據(jù)庫的字段存儲(chǔ)信息
SHOW TABLE STATUS FROM database;
結(jié)果:
以上這篇MySQL創(chuàng)建數(shù)據(jù)表時(shí)設(shè)定引擎MyISAM/InnoDB操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- MySQL 常見的數(shù)據(jù)表設(shè)計(jì)誤區(qū)匯總
- MySQL數(shù)據(jù)表分區(qū)策略及優(yōu)缺點(diǎn)分析
- MySQL高級(jí)特性——數(shù)據(jù)表分區(qū)的概念及機(jī)制詳解
- MySQL如何構(gòu)建數(shù)據(jù)表索引
- MySQL 索引和數(shù)據(jù)表該如何維護(hù)
- Mysql刪除數(shù)據(jù)以及數(shù)據(jù)表的方法實(shí)例
- 刪除mysql數(shù)據(jù)表如何操作
- 關(guān)于MYSQL 你需要知道的數(shù)據(jù)類型和操作數(shù)據(jù)表
- MySQL創(chuàng)建數(shù)據(jù)表并建立主外鍵關(guān)系詳解
- MySQL數(shù)據(jù)表合并去重的簡單實(shí)現(xiàn)方法
- MySQL 如何設(shè)計(jì)統(tǒng)計(jì)數(shù)據(jù)表