数据库
文章平均质量分 85
单手入天象
这个作者很懒,什么都没留下…
展开
-
sqlite优化简单分析
文章目录前言一、sqlite 的读写性能二、sqlite 优化1.关键参数2.性能优化3.数据安全性优化总结前言SQLite 原本就是一款轻型的数据库,面向轻量级应用或者安卓应用等的使用场景。轻量级的设定也注定他并发读写性能不高,如果有高并发的要求更应该选择 mysql 等数据库。一、sqlite 的读写性能说起读写性能,大家都喜欢拿 QPS 和 TPS 说事,那我们就简单了解下 sqlie 的这两个指标测试环境:硬件参数CPU8核,Intel® Xeon® CPU E原创 2022-03-11 17:01:00 · 2842 阅读 · 0 评论 -
sqlite使用中要注意的细节
文章目录前言一、sqlite的锁二、发生死锁的情况三、事务使用后引发的问题总结前言我们比较常用的数据库诸如mysql,需要安装第三方服务,但是如果我们只是开发一个小型的项目,不想要额外维护一个数据库服务器,这时候可以选用内嵌的数据库 sqlite。一、sqlite的锁要想实现sqlite的并发编程,就得考虑ACID(原子性、一致性、隔离性、持久性),而sqlite是通过锁的机制来实现的。sqlite是一个文件数据库,所有的数据都在一个db文件中,而从单个进程的角度来看,数据库文件可以处于五种原创 2022-03-01 16:59:00 · 1018 阅读 · 0 评论 -
sql 语法中 join 的所有用法总结(简单例子)
join 常见的用法有:left join (left outer join)right join (right outer join)join (inner join)full join(full outer join 、outer join)cross join说明:left join 就是 left outer join、 right join 就是 right outer join、 join 就是 inner join 、full join 就是 full outer jo原创 2021-04-09 15:18:10 · 9168 阅读 · 1 评论 -
数据优化的方式
首先是sql优化(包括设计数据库字段结构、索引等优化;还有就是优化sql语句)结合explain分析语句 优化索引 减少表连接,可适当增加冗余字段(该字段的更新操作的频率要小) 多表连接情况下,把表数据量大的放于最前面,可以减少查询行数 避免使用左模糊查询和全模糊查询,用 inStr()、chartIndex()替换,或使用搜索引擎 避免对字段进行NULL值判断(这样会放弃索引,走全表扫描),使用 not null + default 的方式设计字段 查询的字段写出具体的列明,不要使用 *原创 2020-07-10 17:17:17 · 770 阅读 · 0 评论 -
分库分表
分库分表用于应对当前互联网常见的两个场景——大数据量和高并发。他们都可以分为垂直拆分和水平拆分两种。垂直拆分是根据业务将一个库(表)拆分为多个库(表)。如:将原本同一张表中经常访问和不常访问的字段,拆分至不同的表中;按业务划分将不同的表存放在不同的库里。 水平拆分则是根据分片算法将一个库(表)拆分为多个库(表)。如:将原本的order表拆分成order_1、order_2、order_3多张表,每个表的数据结构一模一样,存取数据都是要按照ID的最后一位以3取余,尾数是1的放入第1个表,尾数是2的放入第原创 2020-07-10 16:58:31 · 118 阅读 · 0 评论 -
设计数据表结构要注意的事项
尽可能的使用not null,除非业务需要使用null为什么不建议默认是null呢?a.null并不能等值对比,这就造成了一些麻烦,例如我要判断col2是null和1的行,就要拆分写成col2 is null or col2=1;另外在一些join查询里,null的不相等也会造成一些麻烦。b.count()不计算null,也就是count(col2),所得的计数,是不包括有null值的行,这跟count(*)就有区别了,对于不熟悉的人可能会混淆,但我认为这些差别应该要知道,要统计表总行数,直接co原创 2020-06-21 14:17:28 · 752 阅读 · 0 评论