mysql面试题之死锁

fenggeblog fenggeblog     2023-02-24     344

关键词:

什么是死锁?锁等待?如何优化这类问题?通过数据库哪些表可以监控?

死锁是指两个或多个事务在同一资源上互相占用,并请求加锁时,而导致的恶性循环现象。当多个事务以不同顺序试图加锁同一资源时,就会产生死锁。

锁等待:mysql数据库中,不同session在更新同行数据中,会出现锁等待

重要的三张锁的监控表innodb_trx,innodb_locks,innodb_lock_waits

 如何优化锁:

1、尽可能让所有的数据检索都通过索引来完成,从而避免Innodb因为无法通过索引键加锁而升级为表级锁定

2、合理设计索引。不经常使用的列最好不加锁

3、尽可能减少基于范围的数据检索过滤条件

mysql面试题之为什么要为innodb表设置自增列做主键?

为什么要为innodb表设置自增列做主键?1.使用自增列做主键,写入顺序是自增的,和B+数叶子节点分裂顺序一致2.表不指定自增列做主键,同时也没有可以被选为主键的唯一索引,InnoDB就会选择内置的rowid作为主键,写入顺序和rowi... 查看详情

mysql面试题之如何优化一条有问题的sql语句?(代码片段)

如何优化一条有问题的sql语句?针对sql语句的优化。我们可以从如下几个角度去分析回归到表的设计层面,数据类型选择是否合理大表碎片的整理是否完善表的统计信息,是不是准确的审查表的执行计划,判断字段上面有没有合... 查看详情

mysql面试总结

MySQL面试总结#MySQL的存储引擎`MyISAM`(默认表类型):非事务的存储引擎,基于传统的`ISAM`(有索引的顺序访问方法)类型,是存储记录和文件的标准方法,不是事务安全,不支持外键,适用于频繁的查询。表锁,不会出现死锁... 查看详情

sql面试题之三(难度:简单|含答案)(代码片段)

Sql面试题之三(难度:简单|含答案)答案: 1、SELECTB.name,B.DepartT.ContentFROMB,TWHERE(T.Content=‘税法培训‘andT.workcode=b.workcode)2、  查看详情

java面试题之手写arraylist

packagecom.xingtu.sdk.sdk;publicclassMyArrayList<T>privateT[]array;privateinttheSize;publicMyArrayList()this(10);privateMyArrayList(intlength)trynewException();catch(Exceptione)e.printStackTrace 查看详情

java面试题之编程火星车问题

/***author:Kevin*date:2011-07-17*function:TheproblemofMarscar.*ChinafirmlyopposesObama-Dalaimeeting*TheWARisactuallybegun!NowyouaretheCommanderoftheFleet.*YoucaninputcommandtocontroltheMarsCartogostra 查看详情

拓展面试题之-linuxmongodbnginxphp面试题

1为什么Linux要分为用户空间和内核空间?解析1在CPU的所有指令中,有些指令是非常危险的,如果错用,将导致系统崩溃,比如清内存、设置时钟等。如果允许所有的程序都可以使用这些指令,那么系统崩溃的概率将大大增加。2C... 查看详情

java面试题之谈谈reactor模型

reactor是什么?事件驱动可以处理一个或多个输入源通过ServiceHandle同步的将输入事件采用多路复用分发给相应的RequestHandler(一个或多个)处理具体可参考:https://my.oschina.net/u/1859679/blog/1844109 查看详情

java面试题之java基础

 1、作用域public,private,protected,以及不写时的区别答:区别如下:作用域          当前类      同一package 子孙类      查看详情

node.js面试题之2017(代码片段)

...以及NPM模块角度来看,Node.js的发展让人目不暇接,那么面试题也得与时俱进。原文:Node.jsInterviewQuestionsandAnswers(2017Edition)译者:Fundebug为了保证可读性,本文采用意译而非直译。问题什么是错误优先的回调函数?如何避免回调地狱... 查看详情

面试题之------java反射机制

 一、反射机制概述Java反射机制是在运行状态中,对于任意一个类,都能够获得这个类的所有属性和方法,对于任意一个对象都能够调用它的任意一个属性和方法。这种在运行时动态的获取信息以及动态调用对象的方法的功... 查看详情

java面试题之java基础

1.JDK和JRE有什么区别?JRE(JavaRuntimeEnvironment),Java运行时环境,也就是Java平台。所有的Java程序都要在JRE下才能运行。普通用户只需要运行已开发好的java程序,安装JRE即可。JDK(JavaDevelopmentKit)是程序开发者用来编译、调试java程序用... 查看详情

面试题之python基础(代码片段)

基础语法输入和输出代码中要修改不可变的数据会出现什么问题,抛出什么异常?代码不会征程运行,抛出TypeError异常a=1,b=2,不用中间变量交换a和b的值?1#方法12a=a+b3b=a-b4a=a-b56#方法2:7a=a^b8b=b^a9a=a^b1011#方法312a,b=b,aViewCode   ... 查看详情

java精选面试题之springboot三十三问

SpringBootSpringBoot是微服务中最好的Java框架.我们建议你能够成为一名SpringBoot的专家.问题一:SpringBoot、SpringMVC和Spring有什么区别?SpringFrameSpringFramework最重要的特征是依赖注入。所有SpringModules不是依赖注入就是IOC控制反转。当我们... 查看详情

经典面试题之老鼠试药与汉明码

前几天看了介绍汉明码的视频,当即就想到了这道面试题,k只小白鼠检测n瓶药中的1瓶毒药,初学者很容易被唬住,解法也鲜有提及背后的原理,以至于我当时看完完全不理解。其实就是信息传输中的汉明码检验,一段长度为n... 查看详情

java面试题之hashmap和treemap的区别

HashMap和TreeMap的区别相同点:都是以key和value的形式存储;key不可以重复;都是线程不安全的;不同点:HashMap的key可以为空TreeMap的key值是有序的(使用了红黑树的二叉树结构存储的Entry) 查看详情

java面试题之----string的intern(代码片段)

When---什么时候需要了解String的intern方法:面试的时候(蜜汁尴尬)!虽然不想承认,不过面试的时候经常碰到这种高逼格的问题来考察我们是否真正理解了String的不可变性、String常量池的设计以及String.intern方法所做的事情。但... 查看详情

java面试题之----hashmap常见面试题总结

...这显示出你已经用过HashMap,而且对它相当的熟悉。但是面试官来个急转直下,从此刻开始问出一 查看详情