数据库的基本操作
SHOW DATABASES;
: 查看所有存在的数据库CREATE DATABASE db_name;
: 创建db_name
的数据库SHOW CREATE DATABASE db_name
: 创建数据库的定义DROP DATABASE db_name
: 删除db_name
数据库SHOW ENGINES;
: 查看数据库引擎
数据库引擎
-
InnoDB
: 事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键。5.5之后默认。- 提供了提交、回滚和崩溃恢复能力的事务安全(ACID兼容)存储引擎
- 为处理巨大数据量的最大性能设计,CPU 效率是任何其他基于磁盘的关系数据库引擎所不能匹敌的
- InnoDB 存储引擎完全与 MySQL 服务器整合
- InnoDB 支持外键完整性约束 ( FOREIGN KEY )
- InnoDB被用在众多需要高性能的大型数据库站点上
-
MyISAM
: 基于 ISAM 的存储引擎,被对其进行扩展。多用于 Web、 数据存储和其他应用环境下最常用的存储引擎之一。较高的插入、查询速度,不支持事务- 大文件在支持大文件的文件系统和操作系统上被支持
- 当把删除、更新及插入操作混合使用的时候,动态尺寸的行产生更少碎片
- 每个 MyISAM 表最大索引是 64, 这可以通过重新编译来改变
- 最大的键长度是 1000B
- BLOB 和 TEXT 列可以被索引
- NULL 值允许在索引的列中。这个值占每个键的 0~1 个字节
- 所有数字键值以高字节有限被存储以允许一个更高的索引压缩
- 每表一个 AUTO_INCREMENT 列的内部处理
- 可以把数据文件和索引文件放在不同目录
- 每个字符列可以有不同的字符集
- 有 VARCHAR 的表可以固定和动态记录长度
- VARCHAR 和 CHAR列可以多达64KB
-
MEMORY
: 表中的数据存储在内存中,为查询和引用其他表数据提供快速访问- 每个表可以有最多 32 个索引,每个索引 16 列,以及 500B 的最大键长度
- 存储引擎执行 HASH 和 BTREE 索引
- 可以在一个表中有非唯一键
- 使用一个固定的记录长度格式
- 不支持 BLOB 或 TEXT 列
- 支持 AUCO_INCREMENT 列和对可包含 NULL 值得列的索引