mysql server系统架构

逻辑模块组成:

mysql逻辑模块可以分为两层架构,第一层是sql layer主要包括权限判断、sql解析、执行计划优化、query cache的处理等;第二层是存储引擎层storageengine layer,是底层数据存取操作实现部分,由多种存储引擎共同组成。

mysql存储引擎:

存储引擎是在mysql安装时就必须和mysql一起被编译安装了,mysql ab在架构改造的时候,让存储引擎和sqllayer各自更为独立、耦合更小、可以做到在线加载新的存储引擎,而不影响mysql的正常运行。插件式存储引擎的架构,为存储引擎加载和移动更灵活方便,也使自行开发存储引擎更为方便简单。主要插件式存储引擎包括mylsam、lnnodb、ndb cluster、maria、falcon、memory、archive等

mylsam存储引擎简介:

1、mysql5.1之前默存储引擎

2、mylsam存储引擎的表在数据库中,每个表被存放为三个以表命名的物理文件:.frm  .MYI  .MYD每个表都有这样的三个文件作为存储类型的表的存储,不管这个表有多少引擎,都存放在同一个.MYI中

3.mylsam支持的三种类型索引:B-Tree索引、R-Tree索引、Full-text索引

4.不支持事务及只有表锁

5.如过mysqld正在写入该表时被kill掉、主机宕机、磁盘硬件故障、mylsam存储引擎的bug都会造成表破坏

6.mylsam的数据存放分为静态固定长度、动态可变长度、压缩三种格式

创建数据库创建一个表估算出规划多大的空间

查看qq的表的结构

每个字节相加等于168字节,如果每天增加10000条记录,大约需要10000x168/1024/1024=1.6MB

如果发现某个mylsam表出现问题,可以在线通过check  table命令效验

lnnodb存储引擎简介:

lnnodb能那么火,主要是在于功能方面较多特点:支持事务、锁定机制的改进、实现外键、完全由用户定义表的单独存放和所有表存放在一起。

lnnodb的物理结构分为两个部分:

1.数据文件:

存放数据表中的数据和所有的索引数据,包括主键和其他普通索引。

2.日志文件:

lnnodb的日志文件和oracle的redo日志比较相似,同样可以设置多个日志组(最少2个),同样采用轮循策略来顺序写入

mylsam和lnnodb的区别:

1.mylsam不支持事务,而lnnodb支持事务,lnnodb的autocommit默认打开,即每条sql语句会默认封装成一个事务,自动提交这样会影响提交速度,最好是把多条sql语句显示在begin和commit之间,组成事务提交。

查看提交模式是否开启

2、InnoDB支持数据行锁定,MyISAM不支持行锁定,只支持锁定整个表。

3、InnoDB支持外键,MyISAM不支持。

4、InnoDB不支持全文索引(5.7支持),而MyISAM支持。

mysqlslap性能测试mysql二种存储引擎

mysqlslap是mysql自带的基准测试工具,优点:查询数据、使用灵活

查看mysql数据库默认最大的连接数

查看默认使用的引擎

使用sql脚本测试  下面的压力测试数超出了默认数所以报错

修改压力测试数并测试最大值为30,60超过就会出错  注:多次测试

MySQL自带工具使用介绍

mysql命名:使用最多的一个命名工具,为用户提供命令行接口来管理mysql服务器

语法格式:mysql  [options]  [database] 可以使用mysql --help查看使用帮助信息

运维时常用的mysql命令相关参数

使用-e参数查看数据库

通过使用脚本创建数据库、表,对表进行增、改、删、查操作

使用root用户进入mysql给test用户授权

然后给脚本授予执行权限

启动脚本

使用提示符登录mysql查看效果

使用tee生成一个文件;这个文件包含此数据库中所有的操作都保存到这个目录里面

使用ping命令测试是否能正常提供服务

使用status命令获取当前mysql server的几个基本的状态值

使用processlist获取当前数据库的连接线程信息

编写mysql监控脚本

查看执行的效果 并且给脚本执行权限chmod  +x  脚本名

查看数据字典,此数据库包含了其他所有数据库的元数据,包括数据类型、访问权限

转载自:

https://blog.51cto.com/12832314/1934710

MySQL mysql server与存储引擎的更多相关文章

  1. mysql 数据表操作 存储引擎介绍

    一 什么是存储引擎? 存储引擎就是表的类型. mysql中建立的库===>文件夹 库中建立的表===>文件 现实生活中我们用来存储数据的文件有不同的类型,每种文件类型对应各自不同的处理机制 ...

  2. Mysql技术内幕——InnoDB存储引擎

    Mysql技术内幕——InnoDB存储引擎 http://jingyan.baidu.com/article/fedf07377c493f35ac89770c.html 一.mysql体系结构和存储引 ...

  3. MySQL数据库篇之存储引擎

    主要内容: 一.数据引擎 二.MySQL支持的存储引擎 三.使用存储引擎 1️⃣ 什么是存储引擎? MySQL中建立的库----> 文件夹,库中建立的表----->文件. 现实生活中我们用 ...

  4. mysql 库操作、存储引擎、表操作

    阅读目录 库操作 存储引擎 什么是存储引擎 mysql支持的存储引擎 如何使用存储引擎 表操作 创建表 查看表结构 修改表ALTER TABLE 复制表 删除表 数据类型 表完整性约束 回到顶部 一. ...

  5. [转帖]一文看懂mysql数据库本质及存储引擎innodb+myisam

    一文看懂mysql数据库本质及存储引擎innodb+myisam https://www.toutiao.com/i6740201316745740807/ 原创 波波说运维 2019-09-29 0 ...

  6. java面试一日一题:mysql中常用的存储引擎有哪些?

    问题:请讲下mysql中常用的引擎有哪些? 分析:该问题主要考察对mysql存储引擎的理解,及区别是什么? 回答要点: 主要从以下几点去考虑, 1.mysql的存储引擎的基本概念? 2.mysql中常 ...

  7. 【MySQL】MySQL(四)存储引擎、索引、锁、集群

    MySQL存储引擎 MySQL体系结构 体系结构的概念 任何一套系统当中,每个部件都能起到一定的作用! MySQL的体系结构 体系结构详解 客户端连接 支持接口:支持的客户端连接,例如C.Java.P ...

  8. MySQL内核:InnoDB存储引擎 卷1

    MySQL内核:InnoDB存储引擎卷1(MySQL领域Oracle ACE专家力作,众多MySQL Oracle ACE力捧,深入MySQL数据库内核源码分析,InnoDB内核开发与优化必备宝典) ...

  9. mysql不同版本和存储引擎选型的验证

    Mysql的版本和存储引擎较多,为了选择最适合业务使用的系统,需要进行一定的验证,本文描述mysql的验证过程和思路. 主要涉及: Mysql的版本 v Mariadb v Tokudb v Orac ...

  10. MySQL表类型和存储引擎版本不一致解决方法

    使用的是老版本的mysql客户端Navicate 8 ,mysql 服务端用的是mysql5.6的版本,在修改版本引擎的时候出现版本不对; mysql error ‘TYPE=MyISAM’ 解决办法 ...

随机推荐

  1. 解码字符串 Decode String

    2018-11-14 17:56:12 问题描述: 问题求解: 方法一.递归求解 最直观的解法就是递归来求了,并且很显然的这个问题可以使用递归来进行求解. public String decodeSt ...

  2. win10如何一键开启关闭windows Defender(亲测有效)

    win10如何一键开启关闭windows Defender(亲测有效) 一.总结 一句话总结:各种找资料如何开启关闭都没用,直接下载软件简单方便 软件 因为我关windows defender是用的一 ...

  3. IAR编译器

    1.在Build输出框中单击鼠标右键可以选择查看的信息,包括每个文件代码大小,数据大小,以及整个工程代码与数据大小等. 2.在IDE Options的key bingdings功能下可以查看和设置需要 ...

  4. English trip M1 - PC7 Can I Borrow Your Ping-Pong? Teacher:Patrick

    In this lesson you will learn to desribe abilities.  这节课你将学习到描述你的能力 课上内容(Lesson) 三种常见情态动词 can aux. 能 ...

  5. Mac 上搭建基于 Hexo + GitHub 个人博客

    环境配置 本人电脑系统:macOS Node.js 生成静态页面.安装Node.js Git 用于将本地 Hexo 内容提交到 Github.Xcode自带Git(前提:macOS已经安装了Xcode ...

  6. p1460 Healthy Holsteins

    列举所有的子集找最优就行. #include <iostream> #include <cstdio> #include <cmath> #include < ...

  7. AVL平衡二叉树的各种问题(Balanced Binary Tree)

    AVL树或者是一棵空树,或者是具有以下性质的非空二叉搜索树: 1. 任一结点的左.右子树均为AVL树: 2.根结点左.右子树高度差的绝对值不超过1. 1.声明 #include<iostream ...

  8. java控制流

    目录 1.引用数据类型 2.流程控制语句 2.1 条件控制语句if 2.2 if语句与三元运算符的互换 2.3 循环语句 2.4 循环嵌套 2.5 跳转语句 2.6 选择结构switch 3.猜数字案 ...

  9. python基础之正则表达式 re模块

    内容梗概: 1. 正则表达式 2. re模块的使⽤ 3. 一堆练习正则表达式是对字符串串操作的一种逻辑公式. 我们一般使用正则表达式对字符串进行匹配和过滤.使用正则的优缺点: 优点: 灵活,功能性强, ...

  10. 77. Combinations (java 求C(n,k)的组合,排除重复元素)

    题目: Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. 解析:同求全 ...