![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
文章平均质量分 77
iteye_13925
这个作者很懒,什么都没留下…
展开
-
mysql explain
在 explain的帮助下,您就知道什么时候该给表添加索引,以使用索引来查找记录从而让select 运行更快。如果由于不恰当使用索引而引起一些问题的话,可以运行 analyze table来更新该表的统计信息,例如键的基数,它能帮您在优化方面做出更好的选择。explain 返回了一行记录,它包括了 select语句中用到的各个表的信息。这些表在结果中按照mysql即将执行的查询中读取的...原创 2012-07-17 11:15:58 · 64 阅读 · 0 评论 -
mysql锁机制以及对性能的优化
为了给高并发情况下的mysql进行更好的优化,有必要了解一下mysql查询更新时的锁表机制。 一、概述 MySQL有三种锁的级别:页级、表级、行级。 MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking);BDB存储引擎采用的是页面锁(page-level locking),但也支持表级锁;InnoDB存储引擎既支持行级锁(row-level l...原创 2012-07-17 11:17:27 · 119 阅读 · 0 评论 -
MySql锁表和锁行实现进程间同步
由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主键,MySQL才会执行Row lock (只锁住被选取的资料例) ,否则MySQL将会执行Table Lock (将整个资料表单给锁住)。 举个例子: 假设有个表单products ,里面有id跟name二个栏位,id是主键。 例1: (明确指定主键,并且有此笔资料,row lock) SELECT * F...原创 2012-07-17 11:37:54 · 608 阅读 · 0 评论 -
数据库死锁
数据库在进行insert,update,delete这些更新操作的时候为了保证数据一致性都会使用排他锁。 一个事务里进行update操作,在事务结束之前(commit or rollback)排他锁不会被释放。因此在一个事务里update多条数据的时候执行顺序就尤为重要,两个并发事务中更新操作的执行顺序不同就有可能产生死锁:(x, y分别表示一行数据) transaction ...2013-05-08 14:30:07 · 121 阅读 · 0 评论 -
DBCP连接池参数
[b]DBCP连接池参数说明如下:[/b]1、maxActive="10":表示并发情况下最大可从连接池中获取的连接数。2、maxIdle="5":如果在并发时达到了maxActive=10,那么连接池就必须从数据库中获取10个连接来供应用程序使用,当应用程序关闭连接后,由于maxIdle=5,因此并不是所有的连接都会归还给数据库,将会有5个连接保持在连接池种中,状态为空闲。由于我们没有使...原创 2012-10-25 10:49:44 · 135 阅读 · 0 评论