数据库优化基本策略

1.选择正确类型的sql。

有时候你想要动态生成sql,却发现自己开发的系统性能只需要使用静态sql。

2.放开锁定策略

locking越严格,性能越差。到底是用乐观锁还是悲观锁?请权衡数据库数据的完整性,为了性能~

3.频繁提交

尽快提交,以释放各种锁和程序代码中的数据库对象。这样能降低冲突的数量并及时释放内存。

4.考虑批处理

不一定非要在联机状态下才能做每件事情。实现关键任务,关键业务时候,应批量的对数据进行处理。

5.避免连接

尤其是两张字段很多的大表。请使用索引而不是什么狗P的左右连接。

6.利用特定的数据库特性

oracle有oracle的特性,mysql有mysql的特性。当你想做数据库移植时候,请遵循各种数据库厂商的数据库产品独有的特性。

7.只获取自己需要的列

当要得到你想要的列。请不要用select * from table而是用select id,name from table。

使用尽可能小的结果集,更易于处理和传递。

8.避免where子句中的or

不要写name ="smith" or name = 'frank'。请写name in ('smith','frank').后者比前者更高效

9.避免like子句

name like 's%'这样的子句会对数据库表进行扫描,开销极其巨大,其实只要在name列上定义索引,很多数据库都会高效执行

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值