数据库性能优化
2016-03-04 19:12
281 查看
1在设计阶段:
*避免全表扫描,在where和order by的列中加入索引
*避免null值,用0来替代null
*一些数据重复的列不必要加索引,比如性别
*索引并不是越多越好,索引越多insert时候效率越低,一张表不要超过6个索引
*避免更新索引列,如果经常改变该列,则要考虑是否加索引
*若某列为数字型数据,就不要设置成字符串类型
*如果表数据量大就减少索引
2sql语句优化:
*避免使用!= 或者<>,数据库引擎会全盘扫描
*避免使用or 可以用union来替代or
*in 和 not in 避免使用,用between来代替
*like %..% 也会全表扫描
*避免使用select *
*避免向客户端返回大数据
3 java代码优化:
*数据边取边处理,有的数据要存缓存
*使用jdbc连接数据库
*避免全表扫描,在where和order by的列中加入索引
*避免null值,用0来替代null
*一些数据重复的列不必要加索引,比如性别
*索引并不是越多越好,索引越多insert时候效率越低,一张表不要超过6个索引
*避免更新索引列,如果经常改变该列,则要考虑是否加索引
*若某列为数字型数据,就不要设置成字符串类型
*如果表数据量大就减少索引
2sql语句优化:
*避免使用!= 或者<>,数据库引擎会全盘扫描
*避免使用or 可以用union来替代or
*in 和 not in 避免使用,用between来代替
*like %..% 也会全表扫描
*避免使用select *
*避免向客户端返回大数据
3 java代码优化:
*数据边取边处理,有的数据要存缓存
*使用jdbc连接数据库
相关文章推荐
- Mysql_学习笔记
- kettle多个文件间共享数据库连接
- 在windows上部署使用Redis
- Mysql数据库主从心得整理
- mysql常用查询命令
- RHEL7 postgreSQL安装
- oracle 自动关闭 数据库连接
- oracle 11g dblink 查询的bug --10053用处
- Oracle和Sql 日期格式与字符串格式相互转换
- 理解一下ORACLE数据库
- ubuntu 安装mysql
- SQLHelper类
- 总结mysql的安装
- MYSQL 日期格式
- npoi与memcached中的ICSharpCode.SharpZipLib版本冲突的解决方案
- C++自制Redis 数据库 (十五)【重构】数据库学习(四)
- MySQL数据库修改名称的三种方法
- 数据库基础
- windows下安装redis
- Mysql 分页语句Limit用法