1.引擎
- 查看MySQL支持的引擎
show engines;
MyISAM
- 無法處理事務(wù)
- 表級鎖
- 提供高速存儲和檢索,以及全文搜索能力,適合選擇密集型和插入密集型表
create table `example1` (
`id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='示例1';
InnoDB
- 事務(wù)安全
- 行級鎖
- 適合需要事務(wù)支持且有較高并發(fā)讀取頻率的場景
-
MySQL 5.5.5之后作為默認引擎
create table `example2` (
`id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='示例2';
MEMORY
- 存儲介質(zhì)是系統(tǒng)內(nèi)存,擁有最快的響應(yīng)時間,但當mysqld守護進程崩潰時會丟失所有數(shù)據(jù)
- 適合臨時性且量較小的數(shù)據(jù)
create table `example3` (
`id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',
PRIMARY KEY (`id`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COMMENT='示例3';
MySQL: InnoDB 還是 MyISAM?
Mysql兩種存儲引擎的優(yōu)缺點
2.字符集
- 顯示可用的字符集
show character set;
- 數(shù)據(jù)庫字符集盡量使用utf8
- 需要存儲
emoji表情時應(yīng)選用utf8mb4
create table `example4` (
`id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='示例4';