六个默认数据库
MySQL安装后,将会在data目录下自动创建几个必须的数据库,可以使用SHOW DATABASES;语句来查看
当前所存在的所有数据库,登录以及查看语句如下
创建数据库
可以看到,数据库表中包含了6个数据库,MySQL是必须的,它描述用户访问权限。创建数据库是在系统硬盘上
划分一块区域用于数据的存储和管理,如果管理员在设置权限的时候为用户创建了数据库,则可以直接使用,否则
需要自己创建数据库。MySQL中创建SQL语法格式为:CREATE DATABASE database_name;数据库创建好之后
可以使用show create database database_name;声明查看数据库的定义,可以看到如果数据库创建成果,将显示
数据库的创建信息。再次使用SHOW DATABASES;语句来查看当前所有存在的数据库。输入语句如下,可以看到数
据库列表中包含了刚刚创建的数据库test_db和其它以及存在的数据库的名称。
删除数据库
删除数据库是将已经存在的数据库从磁盘空间删除,清除之后,数据库中的所有数据也将一同被删除。My
SQL中删除数据库的基本语法格式为:DROP DATABASE database_name;“database_name”为要删除的数据库的名
称,如果指定的数据库不存在,则删除出错。删除测试数据库test_db,输入语句为:DROP DATABASE test_db;
再次查看数据库,可以看到之前的数据库被删除,如果再次使用DROP DATABASE test_db,将会显示ERROR信息。
注意:使用DROP DATABASE命令时要非常谨慎,在执行该命令时,MySQL不会给任何提醒确认信息,DROP DATABA
SE 声明删除数据后,数据库中存储的所有数据表和数据也将一同被删除,而且不能被恢复。
数据库存储引擎
数据库存储引擎是数据库是数据库底层软件组件,数据库管理系统(DBMS)使用数据库引擎进行创建、查询、
更新和删除操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可
以获得特点的功能,现在许多不同的数据库管理系统都支持多种不同的引擎,MySQL的核心就是存储引擎。
MySQL提供了多种不同的存储引擎,包括处理事务安全表的引擎和处理事务非安全表的引擎。在MySQL中,不需
要在整个服务器中使用同一种存储引擎,针对具体的要求,可以对每一张表使用不同的存储引擎,可以使用SHOW E
NGINES语句查看系统所支持的引擎类型,MySQL8.0支持的存储引擎类型如下图:
Support列的值表示某种引擎是否能使用:YES表示可以使用,NO表示不能使用,DEFAULT表示该引擎为
当前默认存储引擎。
InnoDB存储引擎
InnoDB是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键,MySQL5.5之后,InnoDB
作为默认存储引擎,InnoDB的主要特点有:
(1)InnoDB给MySQL提供了具有提交、回滚和崩溃恢复能力的事务安全(ACDI兼容)存储引擎。InnoDB锁定
在行级,并且也在SELECT语句中提供一个类似ORACLE的非锁定读。这些功能增加了多用户部署和性能,在SQL查询
中,可以自由地将InnoDB类型的表与其它MySQL的表的类型混合起来,甚至在同一个查询中也可以混合。
(2)InnoDB是为处理巨大数据量的最大性能设计,它的CPU效率可能是任何其它基于磁盘的关系数据库引擎所
不能匹敌的。
(3)InnoDB存储引擎完全与MySQL服务器整合,InnoDB存储引擎为在主内存中缓存数据和索引而维持他自己的
缓存池,InnoDB将它的表和索引存在一个逻辑表空间中,表空间可以包含数个文件(或原始磁盘分区)。这与MyIS
AM表不同,比如MyISAM表中每个表被存在分离的文件中。InnoDB表可以死任何尺寸,即使在文件尺寸被限制在2GB的
操作系统上。
(4)InnoDB支持外键完整性约束(FOREIGN KEY)
存储表中的数据时,每张表的存储都按照主键顺序存放,如果没有在显示表定义时指定主键,InnoDB会为每一行
,生成一个6B的ROWID,并以此作为主键。
(5)InnoDB被用在众多需要高性能的大型数据库站点上
InnoDB不创建目录,使用InnoDB时,MySQL将在MySQL目录下创建一个名为ibadata1的10MB大小的自动扩展数
据文件,以及两个名为ib_logfile0和ib_logfile1的5MB大小的日志文件。
综合案例-数据库的创建和删除
步骤1:登录数据库
打开Windows命令行,输入用户名和密码,或者直接打开MySQL 8.0 Command Line Client,只输入密码也可以登录。
执行MySQL命令提示符时表示登录成功,可以输入SQL语句进行操作。
步骤2:创建数据库zoo
步骤3:选择当前数据库为zoo,查看数据库zoo的信息
database值表面当前数据库名称,Create Database值表明创建数据库zoo的语句,后面为注释信息。