数据库
文章平均质量分 73
数据库
晴光
这个作者很懒,什么都没留下…
展开
-
mysql优化
对于一个以数据为中心的应用,数据库的好坏直接影响到程序的性能,因此数据库性能至关重要。一般来说,要保证数据库的效率,要做好以下四个方面的工作: 1.数据库设计 通俗地理解三个范式,对于数据库设计大有好处。在数据库设计中,为了更好地应用三个范式,就必须通俗地理解三个范式(通俗地理解是够用的理解,并不是最科学最准确的理解): 第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解;(只要是关系型数据库都满足1NF) 第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识(设置主键),即实体原创 2020-07-01 08:33:28 · 101 阅读 · 0 评论 -
高性能sql
在sql查询中为了提高查询效率,我们常常会采取一些措施对查询语句进行sql优化,下面总结的一些方法,有需要的可以参考参考。 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值...原创 2020-06-30 15:22:45 · 218 阅读 · 0 评论 -
数据库锁机制
主要是针对锁粒度划分的。 一般分为:行锁、表锁、库锁 (1)行锁:访问数据库的时候,锁定整个行数据,防止并发错误。 (2)表锁:访问数据库的时候,锁定整个表数据,防止并发错误。 行锁 和 表锁 的区别: 表锁: 开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突概率高,并发度最低 行锁: 开销大,加锁慢;会出现死锁;锁定粒度小,发生锁冲突的概率低,并发度高 2. 悲观锁 和 乐观锁 (1)悲观锁:顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人原创 2020-06-30 15:14:58 · 213 阅读 · 0 评论