您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

MySql性能相关的一些概念(性能tip0)_MySQL

2024/5/12 3:31:25发布38次查看
bitscn.com
题首:这是最近读《高性能mysql 第二版》记录下来的东西~
#读锁(共享锁)、写锁(排他锁):读锁是共享的,互不阻塞,读取同一资源互不影响;写锁排他,一个写锁会阻塞其他的读写操作。
#锁定对象的粒度:表锁和行锁。
表锁:整个表加锁,当写操作时,加写锁,资源访问排他。当没有写时,加读锁,读锁互不冲突。写锁比读锁有高优先级。开销较小。
行级锁:对一行加锁,开销大,支持最大并发处理。
#事务:acid
a原子性:一个事务是一个原子不可分的工作单元,内部的工作不会被部分执行,要么全部执行,要么根本不执行
c一致性:数据库从一种一致状态转到另一种一致状态,事务执行过程中的数据改变不会影响数据库数据。
i 隔离性:某个事务的结果只有在事务完成后才对其他事务可见。
d持久性:一个事务提交后的结果改变将是持久的,不会马上消失。
#mvcc:多版本并发控制
#几个存储引擎:
myisam:加表锁,在select查询时可以在同一张表完成插入(并发插入),可以基于blob和text的前500字符进行相关索引。
innodb:事务引擎,适合处理大量短期事务,基于聚簇索引,不压缩索引
memory:基于堆的,内存存储,支持哈希索引
archive:只支持insert和select,不支持索引,缓冲了数据写操作,插入时使用zlib算法压缩,比myisam磁盘io消耗少,所有 的select查询执行全表扫描,适合logging,支持行级锁。
存储引擎 mysql版本 事务 锁粒度 主要应用 忌用 myisam 全部 不支持 支持并发插入的表锁 select,insert,高负载 读写并重的场合 myisam merge 全部 不支持 支持并发插入的表锁 分段归档,数据仓库 许多全局查找 memory(heap) 全部 不支持 表锁 中间计算,静态数据查找 大型数据集,持久性存储 innodb 全部 支持 支持mvcc的行级锁 事务处理 无 falcon 6.0 支持 支持mvcc的行级锁 事务处理 无 archive 4.1 支持 支持mvcc的行级锁 日志记录,聚合分析 需要随机读取、更新、删除 csv 4.1 不支持 表锁 日志记录,大规模加载外部数据 需要随机读取、索引 blackhole 4.1 支持 支持mvcc的行级锁 日志记录或同步归档 除非有特别目的,否则不适合任何场合 federated 5.0 n/a n/a 分布式数据源 除非有特别目的,否则不适合任何场合 ndb cluster 5.0 支持 行级锁 高可靠性 大部分典型应用 pbxt 5.0 支持 支持mvcc的行级锁 事务处理,日志记录 需要聚集索引 soliddb 5.0 支持 支持mvcc的行级锁 事务处理 无 maria 6.x 支持 支持mvcc的行级锁 替代myisam 无
摘自 change dir bitscn.com
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product