美文网首页
MYSQL 介绍

MYSQL 介绍

作者: Java持续学习中 | 来源:发表于2019-08-08 15:01 被阅读0次

定义数据库和实例

数据库:物理操作系统文件或其他形式文件类型的集合。

数据库实例:MySQL 数据库由后台线程以及一个共享内存区组成。共享内存可以被运行的后台线程所共享。数据库实例才是真正用于操作数据库文件的。( MySQL 被设计为一个单进程多线程架构的数据库,MySQL 数据库实例在系统上的表现就是一个进程)

MySQL 配置文件位置

  当启动实例时,MySQL 数据库会去读取配置文件(配置文件中有一个参数 datadir,该参数指定了数据库所在的路径),根据配置文件的参数来启动数据库实例。可以通过以下命令查找配置文件位置:
Linux 环境下:# mysql --help | grep my.cnf
Window 环境下,cmd(命令提示符):> mysql -- help

MySQL 由以下基本部分组成:

  • 连接池组件
  • 管理服务和工具组件
  • SQL接口组件
  • 查询分析器组件
  • 优化器组件
  • 缓冲(Cache)组件
  • 插件式存储引擎(注意:存储引擎是基于表的, 而不是数据库
  • 物理文件
MySQL 结构体系图片

MySQL存储引擎

  可以通过 SHOW ENGINES 语句查看当前使用的 MySQL 数据库所支持的存储引擎,也可以通过查找 information_schema 架构下的 ENGINES 表。

InnoDB 存储引擎:InnoDB 存储引擎支持事务,主要面向在线事务处理(OLTP)的应用。特点是行锁设计、支持外键,支持非锁定读(默认读取操作不会产生锁)。

MyISAM 存储引擎:MyISAM 存储引擎不支持事务、表锁设计,支持全文索引,主要面向一些 OLAP 数据库应用。此外,MyISAM 存储引擎的另一个与众不同的地方是它的缓冲只缓存(cache)索引文件,而不缓冲数据文件。

NDB 存储引擎:NDB 存储引擎是一个集群存储引擎。特点是数据全部放在内存中,因此主键查找(primary key lookups)的速度极快,并且通过添加 NDB 数据存储节点 (Data Node)可以线性地提高数据库性能,是高可用、高性能的集群系统。

Memory 存储引擎:Memory 存储引擎将表中的数据存放在内存中,如果数据库重启或发生崩溃,表中的数据都将消失。它非常适合用于存储临时数据的临时表,以及数据仓库中的维度表。Memory存储默认使用哈希索引,且只支持表锁,并发性能较差,并且不支持 TEXT 和 BLOB 列类型。

Archive 存储引擎:Archive 存储引擎只支持 INSERT 和 SELECT 操作,支持索引。Archive存储引擎使用zlib算法将数据行(row)进行压缩后存储,压缩比一般可达 1:10。Archive 存储引擎非常适合存储归档数据,如日志信息。Archive 存储引擎使用行锁来实现高并发的插入操作,但是其本身并不是事务安全的存储引擎,其设计目标主要是提供高速的插入和压缩功能。

Federated 存储引擎:Federated存储引擎表并不存放数据,它只是指向一台远程 MySQL 数据库服务器上的表。

Maria 存储引擎:设计目标主要是用来取代原有的 MyISAM 存储引擎。特点是:支持缓存数据和索引文件,应用了行锁设计,提供了 MVCC 功能,支持事务和非事务安全的选项,以及更好的 BLOB 字符类型的处理性能。

其他存储引擎:MySQL 数据库还有很多其他的存储引擎,包括 Merge、CSV、Sphinx 和 Infobright。

MySQL 存储引擎比较

内容用于学习笔记,资料来源
MySQL 技术内幕:InnoDB 存储引擎 / 姜承尧著. --2版. --北京:机械工业出版社,2013.6(数据库技术丛书)

同时可参考MySQL官方文档

相关文章

  • 部署LAMP发布使用PHP语言开发的网站之MySQL安装

    mysql 安装 mysql介绍 mysql安装 mysql启动 mysql测试 一、MySQL介绍 瑞典AB公司...

  • MySQL高级

    MySQL的架构介绍MySQL的架构介绍MySQL简介 MySQL Linux版的安装MySQL 配置文件MySQ...

  • MySQL介绍

    mysql介绍 其他数据库介绍 mysql特点 mysql存储引擎类型及特点 关于mysql单表存储 mysql介...

  • Mysql 搭建手册

    Mysql安装 介绍 安装方法有很多这里我介绍两种,1、yum 安装mysql;2、手动安装mysql Mysql...

  • LAMP架构介绍、MySQL介绍、MariaDB介绍、MySQL

    目录 一、 LAMP架构介绍二、 MySQL、MariaDB介绍三、 MySQL安装 一、 LAMP架构介绍 LA...

  • lamp架构(一)——简介与mysql安装

    11.1 LAMP架构介绍11.2 MySQL、MariaDB介绍11.3/11.4/11.5 MySQL安装 L...

  • mysql学习笔记(更新中).md

    mysql初级学习笔记.md 标签(空格分隔): mysql mysql初级 mysql介绍 DB:databas...

  • MySQL介绍

    Mysql数据库是一种C/S结构的软件:客户端/服务端,若想访问服务器必须通过客户端(服务器一直运行,客户端在需要...

  • MySQL介绍

    Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Da...

  • MYSQL 介绍

    定义数据库和实例 数据库:物理操作系统文件或其他形式文件类型的集合。 数据库实例:MySQL 数据库由后台线程以及...

网友评论

      本文标题:MYSQL 介绍

      本文链接:https://www.haomeiwen.com/subject/tdatjctx.html