首页 > 数据库 >数据库(部分讲解)

数据库(部分讲解)

时间:2022-11-23 19:00:12浏览次数:35  
标签:存储 配置文件 utf8mb4 数据库 索引 引擎 讲解 部分 create

字符编码与配置文件

1.\s查看MySQL相关信息

image
image

2.默认的配置文件是my-default.ini

image
image

# 字符编码相关配置
[mysqld]
	character-set-server=utf8mb4
	collation-server=utf8mb4_general_ci
[client]
	default-character-set=utf8mb4
[mysql]
	default-character-set=utf8mb4
'''
注意:
1.utf8mb4能够存储表情 功能更强大
2.utf8与utf-8是有区别的 MySQL中只有utf8
'''

3.修改了配置文件中关于[mysqld]的配置 需要重启服务端

image

利用配置文件我们可以偷懒

将管理员登录的账号密码直接写在配置文件中 之后使用mysql登录即可
image

image

数据库存储引擎

存储引擎

  • 就是数据库针对数据采取的多种存取方式

查看常见存储引擎的方式

show engines;
image

需要了解的四种引擎

MyISAM

  • MySQL5.5之前默认的存储引擎
优点:存取数据的速度快
缺点:功能较少 安全性较低
适用场景:对事务完整性没有要求 表的数据都会只读的

InnoDB

  • MySQL5.5之后默认的存储引擎
优点:支持事务和崩溃修复能力 引入了行级锁和外键约束 安全性更高
缺点:占用的数据空间相对较大 存取速度没有MyISAM快
适用场景:需要事务支持 并且有较高的并发读写频率

img

Memory

  • 基于内存存取数据 仅用于临时表数据存取
优点:访问速度较快
缺点:
	1.哈希索引数据不是按照索引值顺序存储 无法用于排序
	2.不支持部分索引匹配查找 因为哈希索引是使用索引列的全部内容来计算哈希值的
	3.只支持等值比较 不支持范围查询
	4.当出现哈希冲突时 存储引擎需要遍历链表中所有的行指针 逐行进行比较 直到找到符合条件的行

BlackHole

  • 其表现就像一个黑洞 只进不出 进来就消失 换句话说,任何往其中写的数据都将丢失
使用场景:虽然其不保存数据 但对数据库的操作仍旧记录在binlog日志中 这就带来一个好处 可以将其作为主从复制的中介 将原来从主库中同步的操作变为从作为中介的BlackHole引擎数据库中同步

了解不同存储引擎底层文件个数

create database db2;
use db2;
create table t1(id int) engine=innodb;
create table t2(id int) engine=myisam;
create table t3(id int) engine=memory;
create table t4(id int) engine=blackhole;

image

image

  • innodb两个文件
后缀名 作用
.frm 表结构
.ibd 表数据(表索引)

这里的表索引是输的目录,加快数据查询的

  • myisam三个文件
后缀名 作用
.frm 表结构
.MYD 表数据
.MYI 表索引
后缀名 作用
  • memory一个文件
  • blackhole一个文件
文件名 后缀名 作用
memory .frm 表结构
blackhole .frm 表结构
  • 往四个表里面分别插入一条数据
insert into t1 values(1);
insert into t2 values(1);
insert into t3 values(1);
insert into t4 values(1);
'''注意:MySQL默认忽略大小写'''

image

创建表的完整语法

create table 表名(
	字段名 字段类型(数字) 约束条件,
	字段名 字段类型(数字) 约束条件,
 	字段名 字段类型(数字) 约束条件
);
1.字段名和字段类型是必须的
2.数字和约束条件是可选的
3.约束条件也可以写多个 空格隔开即可
4.最后一行结尾不能加逗号
ps:编写SQL语句报错之后不要慌 仔细查看提示 会很快解决 
    	near ')' at line 7

image

字段类型之整型

整数类型一共有 5 种,包括 TINYINT、SMALLINT、MEDIUMINT、INT(INTEGER)和 BIGINT
tinyint 1bytes 正负号(占1bit)
smallint 2bytes 正负号(占1bit)
int 4bytes 正负号(占1bit)
bigint 8bytes 正负号(占1bit)

类型 大小 范围(有符号) 范围(无符号) 用途
TINYINT 1 字节 -128~127 (0,255) 小整数值
SMALLINT 2 字节 -32768~32767 (0,65 535) 大整数值
MEDIUMINT 3 字节 -8388608~8388607 (0,16 777 215) 大整数值
INT或INTEGER 4 字节 -2147483648~2147483647 0~4294967295 大整数值
BIGINT 8 字节 -9223372036854775808~9223 372036854775807 0~18446744073709 551615 极大整数值

标签:存储,配置文件,utf8mb4,数据库,索引,引擎,讲解,部分,create
From: https://www.cnblogs.com/oiqwyig/p/16919446.html

相关文章