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

一个网站怎么绑定很多个域名青岛开发区网站建设多少钱

一个网站怎么绑定很多个域名,青岛开发区网站建设多少钱,西安英文旅游网站建设,服装网站建设配色目录 1、背景2、事务的特性3、事务之间的几种错误【1】脏读【2】不可重复读【3】幻读 4、事务中的隔离级别5、总结 1、背景 事务是存储引擎层面实现的#xff0c;有的引擎支持事务#xff0c;有的引擎不支持事务#xff0c;我们常用的引擎InnoDB就支持事务#xff0c;本文… 目录 1、背景2、事务的特性3、事务之间的几种错误【1】脏读【2】不可重复读【3】幻读 4、事务中的隔离级别5、总结 1、背景 事务是存储引擎层面实现的有的引擎支持事务有的引擎不支持事务我们常用的引擎InnoDB就支持事务本文大概讲解一下事务的特性后续再讲解事务的MVCC(多版本并发控制)如何实现的。 2、事务的特性 事务的特性满足ACIDA(Atomicity)原子性、C(Consistency)一致性、I(Isolation)隔离性、D(Durability)持久性。 1、原子性一组操作要么全部成功要么全部失败。 2、一致性数据库从一个有效的状态变为另一个有效的状态。 3、隔离性事务间的影响程度四种级别分别为读未提交、读已提交、可重复读、串行化。 4、持久性事务提交之后就会永久生效也就是将数据写入磁盘发生异常能恢复。 3、事务之间的几种错误 假设有张表如下 CREATE TABLE student (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(255) NOT NULL DEFAULT COMMENT 姓名 ) ENGINE InnoDB DEFAULT CHARSET utf8mb4;向其中插入一条数据后面讲的几种错误都以这条记录作为初始条件 mysql [xxx] INSERT INTO student (name) VALUES (张三); Query OK, 1 row affected (0.001 sec)mysql [xxx] SELECT * from student; ------------ | id | name | ------------ | 1 | 张三 | ------------ 1 row in set (0.000 sec)【1】脏读 事务A读取到了事务B未提交修改之后的数据事务B发生了回滚此时事务A读取到的数据就是脏数据这就叫脏读举个例子理解 时间顺序事务A事务Bt1开始事务开始事务t2UPDATE student SET name ‘李四’ WHERE id 1;[将张三更新为李四]t3SELECT name FROM student WHRER id 1;[此时读取到的name为李四]t4提交事务t5回滚事务[此时name的值变为张三] 数据库中原本的name值为张三t2时刻事务B将name更新为李四t3时刻事务A读取到name为李四t4时刻事务A提交t5时刻事务B发送回滚此时name的值变为张三但是事务A读取到的name还是为李四这就是读到了一个无效的数据叫做脏读。 【2】不可重复读 事务A只能读取已提交事务的结果多个已提交事务结果的不同事务A就可能读到不同的结果这就叫不可重复读示例如下 时间顺序事务A事务B事务Ct1开始事务开始事务开始事务t2SELECT name FROM student WHERE id 1;[此时读取到的name为张三]t3UPDATE student SET name ‘李四’ WHERE id 1;[将张三更新为李四]t4提交事务[此时name为李四]t5SELECT name FROM student WHERE id 1;[此时读取到的name为李四]t6UPDATE student SET name ‘王五’ WHERE id 1;[将李四更新为王五]t7提交事务[此时name为王五]t8SELECT name FROM student WHERE id 1;[此时读取到的name为王五]t9提交事务 上面t2、t5、t8时刻事务A读取的name分别为“张三”、“李四”、“王五”。一个事务三次读取结果都不一样这就叫不可重复读。 【3】幻读 事务A两次根据某个条件查询两次的结果由于中途事务B进行了插入导致两次查询结果不一致这就叫幻读。示例如下 时间顺序事务A事务Bt1开始事务开始事务t2SELECT name FROM student WHERE id 10;[查出来的只有张三]t3INSERT INTO student (name) VALUES (‘李四’);[新插入一条name为李四的记录]t4提交事务[此时表中有name为张三、李四两条记录]t5SELECT name FROM student WHERE id 10;[查出来的有张三、“李四”]t6提交事务 事务A种t2时刻和t3时刻查询条件相同但t3时刻多出来一条记录这就叫做幻读。 4、事务中的隔离级别 事务中有4种隔离级别 READ UNCOMMITTED未提交读READ COMMITTED已提交读REPEATABLE READ可重复读SERIALIZABLE可串行化 查看mysql中设置的隔离级别如下 mysql [xxx] SELECT tx_isolation; ---------------- | tx_isolation | ---------------- | READ-COMMITTED | ---------------- 1 row in set (0.016 sec)每个隔离级别对应事务之间的问题如下 脏读不可重复读幻读未提交读yesyesyes已提交读noyesyes可重复读nonoyes可串行化nonono 未提交读每次都会读取最新的结果已提交读每次读取的都是已提交事务的结果可重复读会对所读的行进行加锁保证读取行的时候不会被其它事务修改虽然可串行化事务之间不会有并发问题但是执行效率也是最低的因为要给每一行去加锁。 5、总结 本文对事务的特性和事务之间的问题有了个大概的认知后面会再细节讲解事务的回滚机制和MVCC实现原理。
http://www.dnsts.com.cn/news/77826.html

相关文章:

  • 建设大型的企业网站费用小何自助建站
  • 台州网站开发建设wordpress安装到服务器
  • 网络销售平台怎么建立seo公司服务
  • 山东网站制作公司排名西双版纳傣族自治州天气预报15天
  • 做字幕网站有哪些石家庄又开始管控了
  • 医疗网站建设怎么样php是网站开发的语言吗
  • wordpress适合做什么网站吗263企业邮箱网页登录入口
  • 深圳网络营销|深圳网站建设公司|专业网络营销运营推广策划公司做企业网站 需要那些功能
  • 百度产品大全入口福建seo搜索引擎优化
  • 威海外贸网站建设电话新媒体营销概念
  • 网站开发要点哈尔滨住房建设发展集团网站
  • 简单的网站开发的软件林业网站模板
  • 网站建设方向中国做网站最好的公司
  • 辽阳住房和城乡建设网站东莞自适应网站建设
  • 电商平台网站开发过程太仓苏州网站建设
  • 建设银行温州分行网站wordpress,视频直播
  • 深圳网站建设兼职中国科技公司100强
  • 宁波建站平台网站怎么被收录
  • 济南网站建设q.479185700惠怎么做网站弹窗通知
  • 制作网站需要怎么做的aspx网站html静态化怎么做
  • php网站开发技术环境要求四川企业网站开发
  • 分类信息网站模板南昌企业建站
  • 游戏网站平台怎么做免费建站免费推广的网站
  • 做英文网站有用吗网站域名销售
  • 网新网站建设合同青岛房产网房天下
  • 缤纷销客crm网站优化策划方案
  • 邯郸网站seo石家庄微信小程序定制
  • 荆州市建设厅网站提供商城网站
  • 网站建设柚子网络科技联系方式合肥seo服务商
  • 山西教育学会网站建设网站设计论文引言