运维mysql数据库面试题_运维面试题之数据库

运维mysql数据库面试题_运维面试题之数据库mysql篇:mysql主从复制原理?mysql的复制是基于3个线程1、master上的binlogdump线程负责把binlog事件传到slave2、slave上面的IO线程负责接收binlog事件,并写入relaylog3、save上面的SQL线程负责读取relaylog并执行innodb和myisam引擎的主要区别?InnoDB支持事物,MyISAM不支持InnoDB支持外键,M…

大家好,又见面了,我是你们的朋友全栈君。

mysql篇:

mysql主从复制原理?

mysql的复制是基于3个线程

1、master上的binlog dump线程负责把binlog 事件传到slave

2、slave上面的IO线程负责接收binlog 事件,并写入 relay log

3、save上面的SQL线程负责读取relay log并执行

innodb和myisam引擎的主要区别?

InnoDB支持事物,MyISAM不支持

InnoDB支持外键,MyISAM不支持

InnoDB不支持全文索引,MyISAM支持

InnoDB支持锁行,MyISAM只支持锁表

InnoDB数据存储在表空间,MyISAM存储在文件中

binlog支持哪几种格式?

statement:只记录执行语句

row:记录每行数据的变更过程

mixed:上面两种模式的混合模式,mysql会根据具体的SQL来决定记录statement或者row格式

XtraBackup备份的原理?

直接拷贝表空间文件,由于不锁表所以数据可能会不一致,所以会同时监听mysql的redo log日志变化,redo log包含了InnoDB数据的所有改动情况

在通过redo log对表空间文件进行crash recovery从而生成完整的备份

为什么要用索引?

默认情况下mysql要查找一个数据,需要从第一行数据开始读整个表直到读到到目标数据

索引也是一张表,该表保存了主键与索引字段,并指向实体表的记,有索引的情况下,会先在索引中查找对应的值,然后根据匹配的索引记录找到对应的数据行

redis篇:

redis的数据类型有哪几种?

字符串(String)

哈希(Hash)

列表(List)

集合(Set)

有序集合(sorted set)

reids的线程模型?

redis的IO模型是单线程,使用多路线程I/O复用模型来提升处理效率

使用单线程主要是redis的数据是在内存当中的IO速度很快,多线程会需要切换上下文从而影响CPU性能

redis的持久化策略?

RDB:一快照形式是直接把内存中的数据保存到一个dump文件中,按变更次数定时保存

AOF:redis把所有修改的命令都存到一个文件里

redis的主从复制过程?

先进行一次全量同步,master节点生成RDB文件的快照,slave接收到文件后清除旧数据,然后把文件加载到内存中

当master有写操作时,master使用PSYNC命令连接到slave同步增量数据

reids集群哨兵模式的特性?

监控:每个哨兵会不断监控master和slave是否在正常工作

提醒:如果哨兵监控的redis出了问题,哨兵可以通知管理员和其它应用程序

故障转移:如果master未按预期工作,哨兵可以选举出新的master继续工作

配置程序:客户端需要先连接哨兵,哨兵会告知客户当前master节点的地址

redis事务有什么特点?

redis事务本质上一组命令的集合,其特点就是一次性、顺序性、排他性的执行一个队列中的一系列命令

当一个命令执行失败其它命令还会继续执行,也不能回滚,所以redis的事务不能保证原子性

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134677.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 腾讯收购冰川网络_冰河是谁

    腾讯收购冰川网络_冰河是谁应朋友的邀约,不久前去腾讯交流学习了。这次的收获还是蛮大的,今天,跟小伙伴们分享下这次去腾讯交流和学习的体会。

    2022年8月22日
    10
  • pycharm怎么设置代码补全_vs2010代码自动补全

    pycharm怎么设置代码补全_vs2010代码自动补全代码补全功能在PyCharm上是一流的。默认情况下PyCharm会在你输入的时候给出建议:由于此功能可有点耗电,你可以通过选择File→PowerSaveMode来禁用它。您仍然可以通过Control-Space显式使用这一功能。…

    2022年8月28日
    3
  • 编程语言难度排名_最难学的七大编程语言,VB 第一,Python垫底,看你学的排第几…

    在很多人眼里程序员的标配就是黑框眼镜+格子衫+双肩包+牛仔裤+运动鞋,拥有了这些可能就被判定为一个程序员。而如何判定一个程序员的工作年限,那就需要从他的头发浓密度上去判断,如果头发过于浓密,说明是初级程序员,如果秃顶了,可能是高级程序员。嗯?程序员的头发浓密不是应该和编程语言的难易程度相关吗?像我这种在面对数学难题的时候总是喜欢拽头发,导致我的发量变少了。01最难学的七大编程语言众所周知,编程界有…

    2022年4月4日
    2.5K
  • 【JavaScript框架封装】实现一个类似于JQuery的属性框架的封装

    【JavaScript框架封装】实现一个类似于JQuery的属性框架的封装

    2021年6月9日
    104
  • LC5.最长回文字串[通俗易懂]

    LC5.最长回文字串[通俗易懂]中心扩展法主要思路是每次选一个中点,然后向两边扩展,找出以该中点对应的最长的回文串的长度,然后维护一个全局的最长回文串长度变量。对于奇偶数长度的不同处理方式:expandAroundCenter方法中如果传入同一个点的索引,则表示以该点为中心,对应着探索字符串长度为奇数的情况如果传入两个点的索引,则表示以这两个点之间为中心,对应着探索字符串长度为偶数的情况/***@Classn…

    2022年7月24日
    6
  • 服务降级的实现

    服务降级的实现服务降级 站在系统整体负荷角度实现 关闭系统中某些边缘服务保证系统核心服务运行 Emps 核心服务 Depts 边缘服务 1 客户端 openfeign hystrix 实现服务降级实现 引入 hystrix 依赖 配置文件开启 feign 支持 hystrix 在 feign 客户端调用加入 fallback 指定降级处理 开发降级处理方法 2 开启 openfeign 支持服务降级 feign hystrix enabled true 开启 openfeign 支持降级

    2025年7月13日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号