当前位置: 首页 > news >正文

网页设计做网站首页品牌策划方案范文

网页设计做网站首页,品牌策划方案范文,湛江网站制作优化,网站备案喷绘目录: 第一题. MySQL中InnoDB引擎的行锁是怎么实现的?第二题. InnoDB存储引擎的锁的算法有三种第三题. 什么是死锁?怎么解决?第四题. 数据库的乐观锁和悲观锁是什么?怎么实现的?第五题. 为什么要使用视图&a…

在这里插入图片描述

目录:

  • 第一题. MySQL中InnoDB引擎的行锁是怎么实现的?
  • 第二题. InnoDB存储引擎的锁的算法有三种
  • 第三题. 什么是死锁?怎么解决?
  • 第四题. 数据库的乐观锁和悲观锁是什么?怎么实现的?
  • 第五题. 为什么要使用视图?什么是视图?

第一题. MySQL中InnoDB引擎的行锁是怎么实现的?

答:InnoDB是基于索引来完成行锁
例: select * from tab_with_index where id = 1 for update;
for update 可以根据条件来完成行锁锁定,并且 id 是有索引键的列,如果 id不是索引键那么InnoDB将完成表锁,并发将无从谈起

第二题. InnoDB存储引擎的锁的算法有三种

  • Record lock:单个行记录上的锁
  • Gap lock:间隙锁,锁定一个范围,不包括记录本身
  • Next-key lock:record+gap 锁定一个范围,包含记录本身

相关知识点:

  1. innodb对于行的查询使用next-key lock
  2. Next-locking keying为了解决Phantom Problem幻读问题
  3. 当查询的索引含有唯一属性时,将next-key lock降级为record key
  4. Gap锁设计的目的是为了阻止多个事务将记录插入到同一范围内,而这会导致幻读问题的产生
  5. 有两种方式显式关闭gap锁:(除了外键约束和唯一性检查外,其余情况仅使用record lock) A. 将事务隔离级别设置为RC B. 将参数innodb_locks_unsafe_for_binlog设置为1

第三题. 什么是死锁?怎么解决?

死锁是指两个或多个事务在同一资源上相互占用,并请求锁定对方的资源,从而导致恶性循环的现象。

常见的解决死锁的方法

  1. 如果不同程序会并发存取多个表,尽量约定以相同的顺序访问表,可以大大降低死锁机会。
  2. 在同一个事务中,尽可能做到一次锁定所需要的所有资源,减少死锁产生概率;
  3. 对于非常容易产生死锁的业务部分,可以尝试使用升级锁定颗粒度,通过表级锁定来减少死锁产生的概率;

如果业务处理不好可以用分布式事务锁或者使用乐观锁

第四题. 数据库的乐观锁和悲观锁是什么?怎么实现的?

数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。
悲观锁:假定会发生并发冲突,屏蔽一切可能违反数据完整性的操作。在查询完数据的时候就把事务锁起来,直到提交事务。实现方式:使用数据库中的锁机制
乐观锁:假设不会发生并发冲突,只在提交操作时检查是否违反数据完整性。在修改数据的时候把事务锁起来,通过version的方式来进行锁定。实现方式:乐一般会使用版本号机制或CAS算法实现。

两种锁的使用场景
从上面对两种锁的介绍,我们知道两种锁各有优缺点,不可认为一种好于另一种,像乐观锁适用于写比较少的情况下(多读场景),即冲突真的很少发生的时候,这样可以省去了锁的开销,加大了系统的整个吞吐量。
但如果是多写的情况,一般会经常产生冲突,这就会导致上层应用会不断的进行retry,这样反倒是降低了性能,所以一般多写的场景下用悲观锁就比较合适

第五题. 为什么要使用视图?什么是视图?

为了提高复杂SQL语句的复用性和表操作的安全性,MySQL数据库管理系统提供了视图特性。所谓视图,本质上是一种虚拟表,在物理上是不存在的,其内容与真实的表相似,包含一系列带有名称的列和行数据。但是,视图并不在数据库中以储存的数据值形式存在。行和列数据来自定义视图的查询所引用基本表,并且在具体引用视图时动态生成。

视图使开发者只关心感兴趣的某些特定数据和所负责的特定任务,只能看到视图中所定义的数据,而不是视图所引用表中的数据,从而提高了数据库中数据的安全性

如果我的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力
在这里插入图片描述

http://www.tj-hxxt.cn/news/102743.html

相关文章:

  • 推广网站有多少家西安百度关键词优化
  • php部署网站软文广告是什么
  • 瑞安外贸网站制作百度站长工具综合查询
  • 个人网站怎么申请北京百度推广优化排名
  • 云库做供应链的网站优化关键词排名外包
  • 个人艺术作品网站建设策划书搜索引擎推广seo
  • 网站界面设计的要求电子商务网站建设与管理
  • 网站 外包 版权seo网站管理
  • 金昌网站建设营销型网站建设多少钱
  • 微信公众平台注册不了安卓优化软件
  • 一起做网店的类似网站seo专业培训费用
  • 自己做网站步骤 域名免费发布信息网网站
  • 网站做宣传的免费渠道有那种seo搜索引擎实训心得体会
  • wordpress外链图片无法显示适合seo软件
  • 网架提升公司成都网站seo公司
  • 邵阳做网站建设识万物扫一扫
  • 黄冈最专业的公司网站建设平台ui设计培训班哪家好
  • 个人备案网站做淘宝客可以怎么创建自己的网站
  • 在网站上做的图表怎么放到PPT里面如何推广
  • 网站开发与推广就业全球搜索引擎
  • 六盘水网站建设网络营销推广的手段
  • app软件开发课程网络seo推广培训
  • zencart 团购网站网站快速排名上
  • 叫别人做网站需要注意什么整合营销传播的概念
  • 营销型网站建设找哪家北京营销推广公司
  • 河南省建设工程标准定额管理网站网络广告的形式有哪些
  • 东营市建设项目工伤保险是哪个网站短视频运营方案策划书
  • wordpress作品集网站seo优化工具
  • 资阳网站优化互联网营销推广渠道
  • 广西教育平台网站建设网络营销的方法有哪些