MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎

MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎

  • 1. 存储引擎
  • 2. myisam和innodb的区别
  • 3. 字符集编码

1. 存储引擎

(1) 数据库的存储引擎包括:
blackhole、csv、memory、archive
myisam:全文索引,不支持事务

innodb:支持事务,不支持全文索引 5.6版本后开始支持

(2) 数据库引擎的基本操作:

show databases;
create database test;
use test;
create table test(name varchar(10));
show tables;
show create table test; #查看表的引擎(图1)

#创建数据表并指定引擎(图2)
create table test1(name varchar(5)) engine=innodb;
show create table test1;

#查看所有数据表的引擎
show table status\G

#查看所有引擎(图3)
show table status; #查看所有
#或者
show engines\G

#修改数据表的引擎
alter table test1 engine=memory;

在这里插入图片描述
MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第1张图片
在这里插入图片描述

注:查看mysql的版本

mysql --version

在这里插入图片描述
或者登录密码时也能看见版本信息。

(3) 修改默认引擎
my.ini文件将 ‘default-storage-engine=myisam’ 改为 ‘default-storage-engine=innodb’,然后重启mysql服务

2. myisam和innodb的区别

myisam:全文索引,不支持事务,表级锁,崩溃恢复支持不好
innodb:不支持全文索引,支持事务,行级锁,崩溃恢复性能好,性能快

推荐:innodb,速度快

3. 字符集编码

(1) 两种字符集
utf8:万国码
gbk:中文编码

注:字符集是基于数据库数据表

#显示所有变量的字符集
show variables like '%char%';

MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第2张图片

(2) 中文乱码解决方案

#中文乱码解决方案,在my.ini文件中将
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8

#改为
[mysql]
# 设置mysql客户端默认字符集
default-character-set=gbk

(3) 数据库字符集

#查看数据库shop的字符集
show creat database shop;

MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第3张图片

#将数据库的字符集指定为gbk
create database shop character set gbk;
show create database shop;

MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第4张图片
(4) 数据表字符集

#指定字符集
create table test4(name varchar(5)) engine=innodb charset=gbk;
show create table test4;
#不指定字符集
create table test5(name varchar(5)) engine=innodb;
show create table test5;

MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第5张图片
MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第6张图片

#字符集修改
alter table test4 charset=utf8;
show create table test4;

MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第7张图片

(4) 字符集校对
show character set;
校对规则则是定义了比较字符串的方式,解决排序和字符分组的问题。
使用utf8_general_ci不区分大小写

#列出字符集所有的校对规则
show character set;

#查看每个字符串的校对
show table status\G

#制定字符集规则
create table test3(name varchar(5)) engine=innodb charset=gbk collate=gbk_chinese_ci;
show table status\G

MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第8张图片
MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第9张图片
MYSQL入门到精通【4】:MySQL数据库的字符集与存储引擎_第10张图片

你可能感兴趣的:(SQL,数据库,mysql)