MyISAMMysql5.5之前的默认数据库引擎,最为常用。拥有较高的插入,查询速度,但不支持事务InnoDB事务型数据库的首选引擎,支持ACID事务,支持行级锁定,MySQL5.5起成为默认数据库引擎BDB源自BerkeleyDB,事务型数据库的另一种选择,支持COMMIT和ROLLBACK等其他事务特性Memory所..
分类:
数据库 时间:
2017-06-16 17:38:43
阅读次数:
271
一、事务的基础知识数据库事务:复杂的事务要分步执行,要么整体生效、要么整体失效。必须满足:原子性、一致性、隔离性、持久性。数据并发问题:脏读:A读取了B未提交的更改数据。不可重复读:A两次读,第二次读到了B已经提交的数据。(行级锁)幻读(虚读):A读取B新提交的新..
分类:
编程语言 时间:
2017-06-08 17:54:46
阅读次数:
211
简单介绍InnoDB给MySQL提供了具有提交,回滚和崩溃恢复能力的事务安全(ACID兼容)存储引擎。InnoDB锁定在行级并且也在SELECT语句提供一个Oracle风格一致的非锁定读。这些特色增加了多用户部署和性能。没有在InnoDB中扩大锁定的需要,因为在InnoDB中行级锁定适合非常小的空间。..
分类:
数据库 时间:
2017-05-22 21:27:53
阅读次数:
260
MySQL有三种锁的级别:页级、表级、行级。 MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking); BDB存储引擎采用的是页面锁(page-levellocking),但也支持表级锁; InnoDB存储引擎既支持行级锁(row-level locking),也 ...
分类:
数据库 时间:
2017-05-16 12:54:01
阅读次数:
205
MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关1.MyISAM:不支持事务,用于只读程序提高性能 2.InnoDB:支持ACID事务、行级锁、并发 3.Berkeley DB:支持事务 MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关1.MyISAM:不 ...
分类:
数据库 时间:
2017-05-10 17:52:21
阅读次数:
243
背景知识:MySQL有三种锁的级别:页级、表级、行级。 MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking);BDB存储引擎采用的是页面锁(page-level locking),但也支持表级锁;InnoDB存储引擎既支持行级锁(row-level lockin ...
分类:
数据库 时间:
2017-05-04 11:09:47
阅读次数:
420
innodb 的行锁是在有索引的情况下,没有索引的表是锁定全表的. 表锁演示(无索引) Session1: mysql> set autocommit=0; mysql> select * from innodb_test;+ + +| id | name |+ + +| 1 | woshicesh ...
分类:
数据库 时间:
2017-04-29 21:02:45
阅读次数:
187
Mysql的大多数事务型存储引擎实现的都不是简单的行级锁。基于提升并发性能的考虑,他们一般都同时实现了MVCC.实现了非阻塞的读操作,写操作也只锁定必要的行。 MVCC的实现,是通过保存数据在某个时间点的快照来实现的。即为:不管需要执行多长时间,每个事务看到的数据都是一致的。 不同的存储引擎的MVC ...
分类:
Web程序 时间:
2017-04-21 23:43:59
阅读次数:
207
此篇文章来源于微信公众号[架构师之路],为了帮助记忆,现在抄写与此,如有侵权,告知立刻删除,谢谢! 军规使用场景:并发量大、数据量大的互联网业务 基础规范 必须使用 InnoDB 存储引擎:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高 必须使用 UTF8 字符集:万国码、 ...
分类:
数据库 时间:
2017-04-17 10:02:54
阅读次数:
214
分为排它锁和共享锁,当一个事务获得排它锁后,其它事务不能进行读或写操作,当一个事务获得共享锁后,其它事务可以进行读操作但不能写。 排它锁也叫写锁或x锁,共享锁叫读锁或s锁。 按保护内容来分: dml锁,保护数据的完整和一致性,分tm锁(又称表级锁)和tx锁(又称行级锁或事务锁) ddl锁,保护数据对 ...
分类:
数据库 时间:
2017-04-15 10:01:04
阅读次数:
246