MySQL安装完成之后,将会在data目录下自动创建几个必须的数据库,可以使用查看数据库的语句查看当前所有存在的数据库,输入的语句如下:
SHOW DATABASES;
初始时数据库列表中包含6个数据库。mysql是必需的,描述用户的访问权限。
创建数据库的基本SQL语法格式如下:
CREATE DATABASE database_name;
查看数据库定义的语句如下:
SHOW CREATE DATABASE database_name;
删除数据库是将已存在的数据库从磁盘空间上清除。清除之后,数据库中的所有数据也将一同被清除。删除数据库语句与创建数据库的命令相似。MySQL中删除数据库的基本语句格式为:
DROP DATABASE database_name;
注:使用DROP DATABASE命令时要非常谨慎,在执行该命令时,MySQL不会给出任何提示确认信息,DROP DATABSE声明删除数据库后,数据库中存储的所有数据表和数据也将一同被删除,不可恢复。
数据库存储引擎是数据库底层软件组件,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据操作,不同的存储引擎提供不同的存储机制、索引技巧,锁定水平等功能。使用不同的存储引擎,可以获得特定的功能。现在许多不同的数据库管理系统都支持不同的数据引擎。MySQL的核心就是存储引擎。
MySQL提供了多个不同的存储引擎,包括处理事务安全表的引擎和处理非事务安全表的引擎。在MySQL中,不需要在整个服务器中使用同一种存储引擎。针对具体的要求,可以对每一个表使用不同的存储引擎。MySQL5.7支持的存储引擎有InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、BLACKHOLE等。查看系统所支持的引擎的语句格式如下:
SHOW ENGINES;
Support列的值表示某种引擎是否能使用;YES表示可以使用,NO表示不能使用,DEFAULT表示该引擎为当前默认存储引擎。
不同存储引擎都有各自的特点,以适应不同的需求。存储引擎比较图如下:
InnoDB:提供提交、回滚和崩溃恢复能力的事务安全能力,并要求实现并发控制。
MyISAM:提供较高的处理效率。
Memory:临时存放数据,数据量不大,并且不需要较高的数据安全性,MySQL中使用该引擎作为临时表,存放查询的中间结果。
Archive:支持高并发的插入操作,但本身并不是事务安全的,该引擎非常适合存储归档数据,如记录日志信息。
使用哪一种引擎需要灵活选择,一个数据库中多个表可以使用不同的引擎以满足各种性能和实际需求。使用合适的存储引擎,将会提高整个数据库的性能。
使用SHOW ENGINES
语句查看系统中所有的存储引擎,其中包括默认存储的引擎。另外,可以使用一种直接的方法查看默认存储引擎,语句如下:
SHOW VARIABLES LIKE 'storage_engine';
执行结果直接显示当前默认的存储引擎。