数据库优化分层思想
可以分別從SQL語句層面、SQL配置層面、SQL架構(gòu)層面和業(yè)務(wù)層面來優(yōu)化。
?SQL 語句層面
1. 調(diào)優(yōu)策略
*號的處理(只是提取必要字段,減少流量)大SQL(拆分、逐步縮小結(jié)果集)合理的索引(where字句后面的條件)類型轉(zhuǎn)換(“符號的使用)盡量不要用范圍查詢,或者縮小檢索范圍(e.g.程序邏輯 update)2. 哪些SQL需要調(diào)優(yōu)
找開發(fā)查看程序日志(e.g.接口 -> 后臺服務(wù))查看慢查詢?nèi)罩静榭唇y(tǒng)計:最多調(diào)用、最占流量SQL配置層面
1. 哪些配置需要關(guān)注
Query_Cachemax_connectionswait_timeoutlockSQL架構(gòu)層面
主從復(fù)制(讀寫分離)考慮數(shù)據(jù)一致性分庫分表(UID倒數(shù)幾位取模)映射關(guān)系是否均勻負(fù)載均衡LVS、F5、Nginx多級緩存redis
業(yè)務(wù)層面的思考
表字段拆分1.某些列字段不常用2.text(適用key-value)拆分出來,新建一個詳情表方便運維(DDL)、便于緩存、提高查詢性能冷數(shù)據(jù)備份把每年歷史數(shù)據(jù)導(dǎo)出去,縮小檢索范圍程序邏輯的處理UPdate全表的例子
轉(zhuǎn)載于:https://www.cnblogs.com/evilxr/p/4001240.html
總結(jié)
- 上一篇: 免费动态域名解析
- 下一篇: [20140928]创建连接到MySQL