专栏首页运维技术迷MySQL数据库(六):体系结构和存储引擎

MySQL数据库(六):体系结构和存储引擎

一、mysql 体系结构

连接池:内存/cpu/进程数 管理工具:提供mysql数据库服务的软件自带的命令 sql接口:传递sql命令给mysqld进程 分析器:sql命令格式是否正确,对操作的库或者表是否有使用权限 优化器:优化执行的sql语句,让系统使用最少的资源去执行sql命令 写(insert create update delete) 读(select)

缓存区:在mysql数据库服务时,会划分一定系统物理内存给mysql服务做查询缓存 存储引擎:myisam innodb 文件系统:存储设备 /var/lib/mysql/DATABASENAME/TABLENAME.{frm…} 二、mysql存储引擎

1.什么是存储引擎? 处理不类型表的处理器 不同的存储引擎有不同的功能和存储方式 在建表的时候可以指定

2.注意事项 若不设置,新建的表使用mysql服务默认使用的存储引擎。

3.存储引擎的分类 1.1 myisam ㈠存储方法 独享表空间,用不同的文件存储不同的数据. .frm文件存表结构 .MYD存记录 .MYI存储索引

㈡功能 不支持外键,不支持事务,支持表锁 ㈢应用场景 查询比较多的一般使用mysiam 1.2 innodb

㈠存储方法 共享表空间(Supports transactions, row-level locking, and foreign keys),用不同的文件存储不同的数据.

.frm存放表结构 .ibd存储索引和记录

㈡功能 支持外键,支持事务,支持事务回滚,支持行锁

㈢应用场景 写操作比较多的使用innodb

4.什么是事务 一次sql操作从开始到结束的过程

5.什么是事务回滚 若一次sql没有成功,就把sql操作的数据恢复到操作时的状态

6.锁机制 为了解决并发访问的冲突问题

1.1 读锁(共享锁) 1.2 写锁(排它锁/互斥锁)

3.例子 查看存储引擎

mysql> show engines;  查看当前数据库服务支持的存储引擎

主要使用Innodb和Myisam

创建时指定存储引擎

create table man_all(id int,name varchar(20))engine=merge union=(man1,man2) insert_methos=last;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • grep命令遇到 Binary file matches解决方法

    今天在grep数据库(Mysql)bilog文件的时候,终端返回报错:Binary file mysql-bin.000840 matches。

    行 者
  • Mysql忘记root密码的恢复方法

    标题是忘记root密码,其实我个人觉得像数据库(mysql、oracle等)这么重要的服务,管理员的密码怎么可能忘记。但凡事都没有绝对,在使用mysql的过...

    行 者
  • Cenot7 中文乱码解决

    local -a查看,如果有返回zh_CN就说明已经有中文包了。如果什么都没有返回,那就得先装一下,yum install kde-l10n-Chinese。

    行 者
  • 针对plsql developer使用做的三个小设置

    1、原来大家在sql窗口写多条sql语句,如果点击“执行”,那么会执行窗口下的所有语句,如果向执行所要的语句,必须选定它。

    williamwong
  • EX Kernel Manager Pro【EX内核管家】,优化你的手机,延长使用寿命!

    偶尔看见某网站分享这个,而号主分享的优化手机的软件也比较少,今天把这个分享给大家:

    FreeRonin
  • 经典Bug永流传---每周一“虫”(二十四)

    刷新频率(ReFresh Rate)代表屏幕在一秒内刷新操作的次数,这取决于硬件的固定参数,如60hz

    厦门-安仔
  • phpmyadmin与php.ini中的socket配置问题

    昨天在安装完新的perconesql数据后,发现phpmyadmin不能正常连接了。一时查来查去不知出了什么问题。

    Zach
  • 详解EMC测试国家标准GB/T 17626

    最近公司的几块板子要做认证,EMC测试自然是少不了,既然要做试验,就要有一个标准,是消费电子、工业控制,还是汽车电子、军工电子,这些工作环境所要求的EMC测试标...

    单片机点灯小能手
  • linux下面安装java

    以debian为例 debian下载jdk:https://download.oracle.com/otn-pub/java/jdk/13.0.2+8/d41...

    生信编程日常
  • Linux测试工具

    Linux服务器测试包括压力测试、负载测试和性能测试,其中性能测试包括涉及到吞吐量、响应时间、CPU占用率、并发用户数等不同指标。我们在测试服务器的过程中,经常...

    audy

扫码关注云+社区

领取腾讯云代金券