MySQL入门基础一-Mysql的基础体系架构

目录

一、MySQL介绍

二、Mysql分支以及替代

Drizzle

MariaDB

Percona Server

三、Mysql基础体系架构


 

一、MySQL介绍

MySQL 由瑞典MysqlAb 公司开发,属于 Oracle旗下产品。MySQL 是当前最流行的关系型数据库管理系统。京东、阿里、等互联网大厂基本都是使用Myql数据库进行业务数据的存储。

MySQL的版本众多,目前最新版本为MySQL8,但绝大部分厂商当前主要是用还是MySQL5.7.32左右的版本。

除此之外,MySQL之父Widenius先生离开了Sun之后,觉得依靠Sun/Oracle来发展MySQL,实在很不靠谱,于是Mysql诞生出了很多分支和相关替代产品

 

二、Mysql分支以及替代

MySQL 变种有好几个主要有三个久经考验的主流变种Percona Server MariaDB  Drizzle它们都有活跃的用户社区和某种程度上的商业支均由独 立的服务供应商支持

Drizzle

Drizzle 是真正的 MySQL 分支,而且是完全开源的产品而非只是个变种或 增强版本。它并不与 MySQL 容不能简单地将 MySQL 后端替换为 Drizzle

Drizzle  MySQL 有很大差别进行了一些重大更改甚至 SQL 法的变化 都非常大设计目标之一是提供一种出色的解决方案来解决高可用性问题在实 现上,Drizzle 清除了一些表现不佳和不必要的功能将很多代码重写对它们进 行了优化,甚至将所用语言从 C 换成了 C++

此外,Drizzle 另一个设计目标是能很好的适应具有大量内容的多核服务器 运行 Linux  64 位机器、云计算中使用的服务器托管网站的服务器和每分钟 接收数以万计点击率的服务器并且大幅度的削减服务器成本

MariaDB

 Sun 收购 MySQL Monty Widenius 这位 MySQL 的创建者因不认同 MySQL 开发流程而离开 Sun他成立了 Monty 程序公司创立了 MariaDBMariaDB 的目标是社区开发Bug 修复和许多的新特性实际上可以将 MariaDB 视为 MySQL 的扩展集它不仅提供 MySQL 提供的所有功能还提供其他功能MariaDB  原版 MySQL 的超集因此已有的系统不需要任何修改就可以运行

诸如 Google Facebook 维基百科等公司或者网站所使用了 MariaDB 不过 Monty 公司不是以赢利为目的,而是由产品驱动的这可能会带来问题因为没 有赢利的公司不一定能长久维持下去

Percona Server

由领先的 MySQL 咨询公司 Percona Percona 公司的口号就是“The    Database Performance Experts Percona 的创始人也就是《高性能 MySQL》书 作者

Percona Server 是个与 MySQL 向后兼容的替代品它尽可能不改变 SQL 语法 客户端/服务器协议和磁盘上的文件格式任何运行在 MySQL 上的都可以运行在 Percona Server 上而不需要修改。切换到 Percona Server 只需要关闭 MySQL 和启  PerconaServer ,不需要导出和重新导入数据

Percona Server 有三个主要的目透明增加允许用户更紧密地查看服务 器内部信息和行为的方法比如慢查询日志中特别增加的详细信息性能     Percona Server 包含许多性能和可扩展性方面的改进,还加强了性能的可预测性 和稳定性。其中主要集中于 InnoDB;操作灵活性,Percona Server 使操作人员和 系统管理员在让 MySQL 作为架构的一部分而可靠并稳定运行时提供了很多便利

一般来说,Percona Server 中的许多特性会在后来的标准 MySQL 中出现 国内公司阿里内部就运行了上千个 Percona Server 的实例

三、Mysql基础体系架构

官方给出的Mysql基础体系架构图如下:

可以看出 MySQL 最上层是连接组件下面服务器是由连接池管理工具服务、SQL 接口解析器优化缓存存储引擎文件系统组成

连接池由于每次建立建立需要消耗很多时间连接池的作用就是将这些连 接缓存下来下次可以直接用已经建立好的连接提升服务器性能

管理工具和服务系统管理和控制工具例如备份恢复Mysql 复制集群 等

SQL 接口接受用户的 SQL 命令并且返回用户需要查询的结果比如 select from 就是调用 SQL Interface

解析器:SQL 命令传递到解析器的时候会被解析器验证和解析解析器主要 

a .   SQL 语句分解成数据结并将这个结构传递到后续步骤以后 SQL 语句的传递和处理就是基于这个结构的

b.  如果在分解构成中遇到错误,那么就说明这个 sql 语句是不合理的

优化器:查询优化器,SQL 语句在查询之前会使用查询优化器对查询进行优 化

缓存器  查询缓存如果查询缓存有命中的查询结果查询语句就可以直 接去查询缓存中取数据这个缓存机制是由一系列小缓存组成的。比如表缓存记录缓存key 缓存 权限缓存等

存储引擎文件系统的作用面会细讲

  • 11
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 16
    评论
MySQL是一种开源的关系型数据库管理系统,它支持多种操作系统,并且广泛应用于Web应用程序的后端数据存储。MySQL的DDL(Data Definition Language)是用于定义和管理数据库结构的基础操作。 以下是MySQL中DDL的基础操作: 1. 创建数据库:使用CREATE DATABASE语句可以创建一个新的数据库。例如,CREATE DATABASE mydatabase; 2. 删除数据库:使用DROP DATABASE语句可以删除一个已存在的数据库。例如,DROP DATABASE mydatabase; 3. 创建表:使用CREATE TABLE语句可以创建一个新的数据表。在CREATE TABLE语句中,需要指定表名和表的列及其属性。例如,CREATE TABLE mytable (id INT, name VARCHAR(50)); 4. 删除表:使用DROP TABLE语句可以删除一个已存在的数据表。例如,DROP TABLE mytable; 5. 修改表结构:使用ALTER TABLE语句可以修改已存在的数据表的结构,包括添加、修改和删除列等操作。例如,ALTER TABLE mytable ADD COLUMN age INT; 6. 添加主键:使用ALTER TABLE语句可以为数据表添加主键约束,以确保每行数据的唯一性。例如,ALTER TABLE mytable ADD PRIMARY KEY (id); 7. 添加外键:使用ALTER TABLE语句可以为数据表添加外键约束,以确保与其他表的关联完整性。例如,ALTER TABLE mytable ADD FOREIGN KEY (customer_id) REFERENCES customers(id); 8. 创建索引:使用CREATE INDEX语句可以为数据表创建索引,以提高查询性能。例如,CREATE INDEX idx_name ON mytable (name); 这些是MySQL中DDL的基础操作,通过这些操作可以定义和管理数据库的结构。如果你有更具体的问题或者需要了解更多高级的DDL操作,请告诉我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王老狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值