MySQL数据库存储引擎以及数据库的创建、修改与删除

举报
1+1=王 发表于 2022/12/16 10:41:58 2022/12/16
【摘要】 MySQL存储引擎 InnoDB存储引擎InnoDB存储引擎是MySQL常见的的存储引擎,它给MySQL的表提供了事务处理、回滚、崩溃修复和多版本并发控制等功能;支持列值自动增长(列值不能为空且必须唯一);支持外键。缺点: 占用的空间相对较大 MyISAM储存引擎MyISAM储存引擎支持3种不同的存储格式:静态型、动态型和压缩型。静态型:静态型是MyISAM的默认存储格式,它的字段是固定长...

MySQL存储引擎

InnoDB存储引擎

InnoDB存储引擎是MySQL常见的的存储引擎,

  1. 它给MySQL的表提供了事务处理、回滚、崩溃修复和多版本并发控制等功能;
  2. 支持列值自动增长(列值不能为空且必须唯一);
  3. 支持外键。
  4. 缺点: 占用的空间相对较大

MyISAM储存引擎

MyISAM储存引擎支持3种不同的存储格式:静态型、动态型和压缩型。

  • 静态型:静态型是MyISAM的默认存储格式,它的字段是固定长度;
  • 动态型:包含变长字段,记录的长度不是固定的。

MyISAM储存引擎占用空间小,处理速度快;但不支持事务的完整性和并发性。

Memory存储引擎

Memory存储引擎使用存储在内存中的内容来创建表,而且数据全部存放在内存中。

每个基于Memory存储引擎的表实际对应一个磁盘文件,该文件名与表名一致,且只存放表的结构。如果重启或关机,所有数据都会消失。

Memory存储引擎默认使用哈希索引,也可在创建索引时指定为B型树索引,使用哈希索引的速度比使用B型树索引的速度快。

Archive存储引擎

Archive存储引擎只支持INSERT和SELECT操作,非常适合存储归档数据,如日志信息等。

Archive存储引擎通过使用zlib算法将数据行压缩后存储,但是它并不知道事务安全的存储引擎,它的设计目标是提供高速的插入和压缩功能。

功能 InnoDB MyISAM Memory Archive
存储限制 <= 64TB <=256TB RAM None
支持事务
全文索引
树索引
哈希索引
数据缓存 N/A
外键

数据库的相关操作

创建数据库

create database [if not exists] <数据库名>
[[default] charset set <字符集名>]
[[default] collate <校对规则名>]
  • [if not exists]:表示在创建数据库之前判断该数据库是否存在,只有在不存在的数据才执行创建操作
  • [[default] charset set <字符集名>]:表示指定数据库的字符集。
  • [[default] collate <校对规则名>]:表示指定字符集的默认校对规则。

修改数据库

alter database <数据库名> {
[default] charset set <字符集名> |
[default] collate <校对规则名> }

使用alter database更改数据库的全局特性,需提前获得数据库的修改权限。

删除数据库

drop database [if exists] <数据库名>

查看数据库列表

show databases [like '数据库名'];

用户查看MySQL中当前存在的数据库列表。

[like ‘数据库名’]:用户匹配指定的数据库名称,可以部分匹配也可以完全匹配。

打开数据库

use <数据库名>
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。