mysql关系型数据库

MySql介绍

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
    Mysql是开源的,所以你不需要支付额外的费用。
    Mysql支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
    MySQL使用标准的SQL数据语言形式。
    Mysql可以允许于多个系统上,并且支持多种语言。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。

关系型数据库操作分类

DDL 数据定义语言(data definition language)用来定义数据库中 数据库 数据表 以及修改表结构等
DML 数据操作语言(Data Manipulation Language)用来操作数据库表 对表中数据的 增 删 改
DQL 数据查询语言(data query language)对数据库中表内容进行查询
DCL 数据控制语言(Data Control Language)定义用户对一个库 表的 操作权限和安全级别

MySql的存储引擎

什么是存储引擎
    MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。
    不同的存储引擎性能是不一样的
什么是事务
    是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。

存储引擎分类

MYISAM:它不支持事务,也不支持外键,尤其是访问速度快,对事务完整性没有要求或者以SELECT、INSERT为主的应用基本都可以使用这个引擎来创建表。
    每个MyISAM在磁盘上存储成3个文件,其中文件名和表名都相同,但是扩展名分别为:.frm(存储表定义)、MYD(MYData,存储数据)、;MYI(MYIndex,存储索引)

INNODB:InnoDB存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比MyISAM的存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。

MEMORY:memory使用存在内存中的内容来创建表。每个MEMORY表实际对应一个磁盘文件,格式是.frm
    MEMORY类型的表访问非常快,因为它到数据是放在内存中的,并且默认使用HASH索引,但是一旦服务器关闭,表中的数据就会丢失,但表还会继续存在。


版权声明:本文为weixin_45704735原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。