01-介绍
数据库(DataBase,DB)是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。
02-基本操作
2.1 创建数据库
# 查看当前所有的数据库 show databases; mysql> show databases; +------------------------+ | Database | +------------------------+ | information_schema | | mysql | | performance_schema | | sys | +------------------------+ 4 rows in set (0.01 sec) # 创建数据库 create database test_db; # 查看创建好的数据库的定义 show create database database_name; mysql> show create database test_db; +----------+------------------------------------------------------------------+ | Database | Create Database | +----------+------------------------------------------------------------------+ | test_db | CREATE DATABASE `test_db` /*!40100 DEFAULT CHARACTER SET utf8 */ | +----------+------------------------------------------------------------------+ 1 row in set (0.00 sec)
2.2 删除数据库
# 删除数据库 drop database test_db; # 注意:删除数据库后,数据库中存储的数据表和数据也将一同删除;
03-数据库存储引擎
1、MySQL提供了多个不同的引擎,包括 处理事务安全表的引擎和处理非事务安全表的引擎。 2、在MySQL中,不需要在整个服务器中使用同一种存储引擎,针对具体要求,可以对每张表使用不同的存储引擎。 3、MySQL 5.7支持的存储引擎有 InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、BLACKHOLE等。 mysql> show engines; +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ | Engine | Support | Comment | Transactions | XA | Savepoints | +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ | InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES | | MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO | | MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO | | BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO | | MyISAM | YES | MyISAM storage engine | NO | NO | NO | | CSV | YES | CSV storage engine | NO | NO | NO | | ARCHIVE | YES | Archive storage engine | NO | NO | NO | | PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO | | FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL | +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ 9 rows in set (0.00 sec)
3.1 InnoDB存储引擎
1、InnoDB 是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键。 2、主要特性有: a. 提供了具有提交、回滚、和崩溃恢复能力的事务安全存储引擎。 b. 为处理巨大的数据量的最大性能设计。 c. 完全与MySQL服务器整合,InnoDB为在主内存中缓存数据和索引而维持它自己的缓冲池。 d. 支持外键完整性约束 (FOREIGN KEY)。 e. 被用在众多需要高性能 大型数据库站点上。
3.2 MyISAM 存储引擎
3.3 MEMORY存储引擎
# 查看默认的存储引擎 show variables like 'storage_engine';