目录
一、创建数据库
create database demo;
蓝色部分为自定义数据库名称
创建名为demo的数据库
二、查看数据库
1、查看所有数据库
show databases;
2、查看数据库定义
show create database demo \G;
or
show create database demo \g;
蓝色部分为自定义数据库名称
三、删除数据库
删除数据库是将已经存在的数据库从磁盘上清除,同时库中的所有数据都将一 并清除。
drop database demo;
蓝色部分为自定义数据库名称
四、数据库引擎
数据库存储引擎是数据库底层软件组件,数据库管理系统(DBMS)通过引擎进行数据库的 增加,删除,修改,查询等操作。
不同引擎有不同的存储机制、索引技巧、特定功能。
mysql 5.7 支持的引擎有: InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、 BLACKHOLE 等。
可分别根据各个引擎的功能和特性为不同的数据库处理任务提供各自不同的适 应性和灵活性。 SHOW ENGINES 语句来显示可用的数据库引擎和默认引擎。
show engines;
查看引擎
Support列的值表示某种引擎是否能使用:
InnoDB存储引擎
InnoDB是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键。InnoDB是默认的MySQL引擎。
InnoDB主要特性有:
1、InnoDB给MySQL提供了具有提交、回滚和崩溃恢复能力的事物安全(ACID 兼容)存储引擎。
2、InnoDB是为处理巨大数据量的最大性能设计。它的CPU效率可能是任何其他 基于磁盘的关系 型数据库引擎锁不能匹敌的
3、InnoDB存储引擎完全与MySQL服务器整合,InnoDB存储引擎为在主内存中 缓存数据和索引 而维持它自己的缓冲池。
4、InnoDB支持外键完整性约束,存储表中的数据时,每张表的存储都按主键顺 序存放,如果 没有显示在表定义时指定主键.
5、InnoDB被用在众多需要高性能的大型数据库站点上
InnoDB不创建目录,使用InnoDB时,MySQL将在MySQL数据目录下创建一个名 为ibdata1 的10MB大小的自动扩展数据文件,以及两个名为ib_logfile0和ib_logfile1的5MB 大小的日志文件。
MyISAM存储引擎
MyISAM基于ISAM存储引擎,并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度,但不支持事务。
MyISAM主要特性有:
1、大文件(达到63位文件长度)在支持大文件的文件系统和操作系统上被支持。
2、当把删除和更新及插入操作混合使用的时候,动态尺寸的行产生更少碎片。
3、每个MyISAM表最大索引数是64,这可以通过重新编译来改变。
4、最大的键长度是1000字节,这也可以通过编译来改变。
5、BLOB和TEXT列可以被索引。
6、NULL被允许在索引的列中,这个值占每个键的0~1个字节。
7、所有数字键值以高字节优先被存储以允许一个更高的索引压缩。
8、每个MyISAM类型的表都有一个AUTO_INCREMENT的内部列。
9、可以把数据文件和索引文件放在不同目录。
10、每个字符列可以有不同的字符集。
11、有VARCHAR的表可以固定或动态记录长度。
12、VARCHAR和CHAR列可以多达64KB。
使用MyISAM引擎创建数据库,将产生3个文件。 文件的名字以表名字开始,扩展名之处文件类型:frm文件存储表定义、 数据文件的扩展名为.MYD(MYData)、索引文件的扩展名时.MYI(MYIndex)
MEMORY存储引擎
MEMORY存储引擎将表中的数据存储到内存中,未查询和引用其他表数据提供 快速访问。
MEMORY主要特性有:
1、MEMORY表的每个表可以有多达32个索引,每个索引16列,以及500字节的 最大键长度
2、MEMORY存储引擎执行HASH和BTREE索引
3、可以在一个MEMORY表中有非唯一键值
4、MEMORY表使用一个固定的记录长度格式
5、MEMORY不支持BLOB或TEXT列
6、MEMORY支持AUTO_INCREMENT列和对可包含NULL值的列的索引
7、MEMORY表在所有客户端之间共享(就像其他任何非TEMPORARY表)
存储引擎的选择 不同的存储引擎都有各自的特点,以适应不同的需求