Mysql-4-数据库的基本操作
1.创建数据库
create database database_name;
例:create database aa;
show create database aa;(查看database aa)
2.删除数据库
drop database database_name;
3.mysql所支持的存储引擎:
show engines\G(注意有defaut 是默认的引擎)
InnoDB存储引擎:是事物型数据库的首选,支持事物安全表(ACID),支持锁定和外键,mysql5.5.5之后,InnoDB作为默认存储引擎。特性如下:
(1)给mysql提供了具有提交、回滚和崩溃恢复能力的事物安全存储引擎。
(2)InnoDB是为处理巨大数据量提供最大性能而设计的。
(3)完全与mysql服务器整合,InnoDB存储引擎在主内存中缓存数据和索引而维持它自己的缓冲池。
(4)支持外键完整性约束(foregin key)。
(5)被用在众多需要高性能的大型数据库站点上。
MyISAM存储引擎:基于ISAM存储引擎,并对其进行扩展。它是在web、数据仓储和其它应用环境下最常使用的存储引擎之一。MyISAM具有较高的插入、查询速度快,但不支持事物。在mysql5.5.5版本之前这个是默认的存储引擎。特性如下:
(1)大文件(达63位文件长度)在支持大文件的文件系统和操作系统上被支持。
(2)当把删除和更新及插入操作混合使用时,动态尺寸的行产生更少的碎片。这要通过合并相邻被删除的块,以及若下一个块被删除就扩展到下一个块来自动完成。
(3)每个MyISAM表最大索引数是64,这可以通过重新编译来改变。每个索引最大的列数是16个。
(4)最大的键长度是1000字节,也可以通过编译来改变。对于键超过250字节的情况,一个超过1024字节的键将被用上。
(5)BLOB和TEXT列可以被索引。
(6)NULL值被允许在索引的列中,每个值占每个键的0-1个字节。
(7)所有数字键值以高字节优先为原则被存储,以允许一个更高地索引压缩。
使用这个存储引擎创建数据库,将生成3个文件。文件名以表的名字开始,扩展名指出文件类型:存储表定义文件的扩展名为FPM,数据文件的扩展名为.MYD(MYDate),索引文件的扩展名为.MYI(MYIndex)。
MEMORY存储引擎:将表中的数据存储到内存中,为查寻和引用其它数据提供快速访问。特性如下
(1)每个表可以多达32个索引,每个索引16列,以及500字节的最大键长度。
(2)执行HASH和BTREE索引。
(3)在一个MEMORY表中可以有非唯一键。
(4)使用一个固定的记录长度格式。
(5)不支持BLOB或TEXT列。
(6)在所有客户端之间共享。
(7)当不再需要的内容时,要释放被表使用的内存,应当执行delete from或truncate table,或者删除整个表。
选择存储引擎
功能 |
MyISAM |
MEMORY |
InnoDB |
存储限制 |
256TB |
RAM |
64TB |
支持事物 |
No |
no |
yes |
支持全文索引 |
yes |
no |
no |
支持数索引 |
yes |
yes |
yes |
支持哈希索引 |
no |
yes |
no |
支持数据缓存 |
no |
N/A |
yes |
支持外键 |
no |
no |
yes |
|
|
|
|
选择:如果要求提交、回滚和崩溃恢复的事物安全(ACID兼容)能力,并要求实现并发控制,InnoDB是一个很好的选择。
如果数据表主要用来插入和查询记录,则MyISAM引擎能提供较高的处理效率。
如果只是临时的存放数据,数据量不大,并且不需要较高的数据安全性,可以选择将数据保存在内存中的Memory引擎中,mysql中使用该引擎作为临时表,存放查询的中间结果。