MySQL概述,架构原理

这篇具有很好参考价值的文章主要介绍了MySQL概述,架构原理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.MySQL简介

        MySQL是一个关系型数据库管理系统,由瑞典的MySQL  AB公司开发,后被oracle公司收购,MySQL是当下最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(Relational Database Management System,关系数据库管理系统)应用软件之一。

        MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。

SQL语言

SQL语句主要分为:

                        DQL:数据查询语言,用于对数据进行查询                select

                        DML:数据操作语言,对数据进行增加、修改、删除        insert、udpate、delete

                        TPL:事务处理语言,对事务进行处理            begin transaction、commit、rollback

                        DCL:数据控制语言,进行授权与权限回收                grant、revoke

                        DDL:数据定义语言,进行数据库、表的管理                create、drop

                        CCL:指针控制语言,通过控制指针完成表的操作                declare cursor

                        对于web程序员来讲,重点是数据的(增)create,(删)delete,(改)update,(查)select,必须熟练编写DQL、DML,能够编写DDL完成数据库、表的操作,其它语言如TPL、DCL、CCL了解即可

                        SQL:特殊的语言,专门用于关系型数据库

                        不区分大小写

二.MySQL优缺点

优点:

                开源免费:MySQL是一款开源数据库,免费,由很大的用户社区支持

                可扩展性:MySQL支持分布式架构和集群部署,可以方便的扩展存储空间和处理能力

                可移植性:能够工作在众多不同的系统平台上,例如:Windows、Linux、Unix、MacOS

                支持多种编程语言:C,C++,java等

                丰富的接口:提供了用于C、C++、Eiffel、Java、Perl、PHP、Python、Rudy和TCL等语言的APl。

缺点:

                不支持热备份

                集群方面的支持较弱,不够灵活和高效。

                缺乏标准的RI(Referential Integrity-RI)机制

                安全系统,主要是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变

三.MySQL的应用环境

        与Oracle,DB2,SQL   Server相比啊,确实由许多不足之处,但是丝毫没有减少他的受欢迎程度,对于个人和中小型企业来说,MySQL的功能绰绰有余,由于是开源软件,可以大大的降低成本

        LAMP,LNMP:linux操作系统,Apache/Nginx作为WEB服务器,MySQL为数据库,PHP/perl作为服务器端脚本解释器,这几个由于都是免费或开源的,使用这种方式除去人工成本,不用花费额外的一分钱就可以搭建一个非常稳定的网站

四.MySQL的基本架构

MySQL从整体上来说是C/S架构,也就是客户端/服务器两部分构成

MySQL概述,架构原理,数据库,mysql,架构,数据库

 1.连接层

(1)提供连接协议:TCP/IP 、SOCKET
(2)提供验证:用户、密码,IP,SOCKET
(3)提供专用连接线程:接收用户SQL,返回结果

通过这条命令show processlist;以查看到连接线程基本情况

 2.SQL层

(1)接收上层传送的SQL语句
(2)语法验证模块:验证语句语法,是否满足SQL_MODE
(3)语义检查:判断SQL语句的类型
(4)权限检查:用户对库表有没有权限
(5)解析器:对语句执行前,进行预处理,生成解析树(执行计划),说白了就是生成多种执行方案.
(6)优化器:根据解析器得出的多种执行计划,进行判断,选择最优的执行计划
        代价模型:资源(CPU IO MEM)的耗损评估性能好坏
(7)执行器:根据最优执行计划,执行SQL语句,产生执行结果
    执行结果:在磁盘的xxxx位置上
(8)提供查询缓存(默认是没开启的),会使用redis tair替代查询缓存功能
(9)提供日志记录(日志管理章节):binlog,默认是没开启的。

3.存储引擎层(类似于linux系统中的文件系统)

    负责根据SQL层执行的结果,从磁盘上拿数据。
    将16进制的磁盘数据,交由SQL结构化化成表,
    连接层的专用线程返回给用户。

      文章来源地址https://www.toymoban.com/news/detail-677922.html

到了这里,关于MySQL概述,架构原理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MySQL数据库入门到精通1--基础篇(MySQL概述,SQL)

    目前主流的关系型数据库管理系统: Oracle:大型的收费数据库,Oracle公司产品,价格昂贵。 MySQL:开源免费的中小型数据库,后来Sun公司收购了MySQL,而Oracle又收购了Sun公司。 目前Oracle推出了收费版本的MySQL,也提供了免费的社区版本。 SQL Server:Microsoft 公司推出的收费的中

    2024年02月07日
    浏览(50)
  • 【MySQL新手到通关】第一章 数据库概述

    持久化(persistence): 把数据保存到可掉电式存储设备中以供之后使用 。大多数情况下,特别是企 业级应用, 数据持久化意味着将内存中的数据保存到硬盘上加以”固化” ,而持久化的实现过程大多 通过各种关系数据库来完成。 持久化的主要作用是 将内存中的数据存储在关

    2024年02月07日
    浏览(54)
  • Restart Study MySQL-01数据库概述(基础)

    C(Chapter) 持久化(persistence): 把数据保存到可掉电式存储设备(硬盘)中以供之后使用。 大多数情况下,特别是企业应用, 数据持久化是将内存中的数据保存到硬盘上加以\\\"固化\\\", 而持久化的实现过程大多使用各种关系数据库来完成。 持久化的主要作用是将内存中的数据存到关

    2024年02月05日
    浏览(54)
  • MySQL 基础知识(一)之数据库和 SQL 概述

    目录 1 数据库相关概念 2 数据库的结构 ​3 SQL 概要 4 SQL 的基本书写规则 1 数据库相关概念 数据库是将大量的数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合 数据库管理系统(DBMS)是用来管理数据库的计算机系统,通过使用 DBMS,多个用户可以安全、简单

    2024年02月20日
    浏览(52)
  • MySQL数据库架构

    MySQL架构自顶向下大致可以分为 连接层 , SQL层 , 存储引擎层 , 物理文件层 。架构如下 客户端连接器,MySQL向外提供交互接口连接各种不同的客户端。 客户端/应用程序:客户端是与MySQL系统进行交互的组件,它可以是命令行工具、图形用户界面 (GUI) 或各种编程语言中的数据库

    2024年02月13日
    浏览(45)
  • Mysql数据库(3)—架构和日志

    Mysql的架构设计 Mysql分为 Server层和存储引擎层: Server层 主要包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器

    2024年02月10日
    浏览(55)
  • 【MySQL数据库】MMM高可用架构

    是一套支持双主故障切换和双主日常管理的脚本程序。MMM 使用 Perl 语言开发,主要用来监控和管理 MySQL Master-Master (双主)复制,虽然叫做双主复制,但是业务上同一时刻只允许对一个主进行写入,另一台备选主上提供部分读服务,以加速在主主切换时备选主的预热,可以说

    2024年02月11日
    浏览(47)
  • 数据库系统原理及MySQL应用教程实验四MySQL数据库表数据的查询操作

    1.掌握SELECT 语句的基本语法格式。 2.掌握SELECT 语句的执行方法。 3.掌握SELECT 语句的 GROUP BY 和 ORDER BY 子句的作用。 验证性实验:在公司的部门员工管理数据库的bumen表和yuangong表上进行信息查询。 设计性试验:将在student表和score表上进行查询。 ( 一 ) 验证性实验 在

    2024年02月05日
    浏览(57)
  • 数据库概述、部署MySQL服务、必备命令 、密码管理、安装图形软件、SELECT语法 、筛选条件

    目录 1 案例1:构建MySQL服务器 1.1 问题 1.2 方案 1.3 步骤 2 案例2:密码管理 2.1 问题 2.2 步骤 3 案例3:安装图形软件 3.1 问题 3.2 方案 3.3 步骤 4 案例4:筛选条件 4.1 问题 4.2 方案 4.3 步骤 1.1 问题 在IP地址192.168.88.50主机和192.168.88.51主机上部署mysql服务 练习必备命令的使用 1.2 方案

    2024年02月19日
    浏览(51)
  • 数据库概述、部署MySQL服务、必备命令、密码管理、安装图形软件、SELECT语法 、筛选条件

    Top 案例1:构建MySQL服务器 案例2:密码管理 案例3:安装图形软件 案例4:筛选条件 1.1 问题 在IP地址192.168.88.50主机和192.168.88.51主机上部署mysql服务 练习必备命令的使用 1.2 方案 准备2台虚拟机,要求如下: 表-1   配置yum源、关闭selinux和防火墙,如果忘记了请自行补习前边课

    2024年02月12日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包