MySQL的简单优化】的更多相关文章

1.选取最适用的字段属性: 表字段尽量设小,不要给数据库增加没必要的空间:如:值为'01'.'02',给char(2)即可: 2.使用连接(JOIN)来代替子查询(Sub-Queries): 使用join是因为MySQL不需要在内存中创建临时表来完成这个逻辑上的需要两个步骤的查询工作. 3.建立索引: 一般用在JOIN,WHERE判断,ORDERBY排序字段上. 4.避免使用select * from 表名: 需要什么字段就写什么字段. 5.尽量避免在WHERE中!=或者<>,否则放弃使用索引…
合理的建立索引的建议: (1)  越小的数据类型通常更好:越小的数据类型通常在磁盘.内存和CPU缓存中都需要更少的空间,处理起来更快. (2)  简单的数据类型更好:整型数据比起字符,处理开销更小,因为字符串的比较更复杂.在MySQL中,应该用内置的日期和时间数据类型,而不是用字符串来存储时间:以及用整型数据类型存储IP地址. (3)  尽量避免NULL:应该指定列为NOT NULL,除非你想存储NULL.在MySQL中,含有空值的列很难进行查询优化,因为它们使得索引.索引的统计信息以及比较运算…
1,yum  2,源码 3,二进制 4,源码+yum 不管哪种方式装完成数据库,都需要对数据库做一些优化. 优化数据库 mysql> select host,user from mysql.user; +-----------+------+ | host | user | +-----------+------+ | 127.0.0.1 | root | | :: | root | | localhost | | | localhost | root | | www | | | www | r…
一.如何发现需要优化的SQL 主要使用MySQL的慢查日志对有效率问题的SQL进行监控 第一步:启动慢查日志的监控 打开开关,将未使用索引的查询记录到慢查日志中 设置查询时间,当查询时间大于这个值,就记录到慢查日志中 打开开关,启动慢查日志监控 第二步:使用慢查日志分析工具比如mysqldumpslow或者pt-query-digest来 查看有执行效率问题的SQL 二.如何对某条SQL优化 通过explain查看SQL的执行计划: 一是执行计划中SQL是走索引还是全表扫描.如select ma…
##################################mysql 2进制安装和简单优化####################################################### mkdir /home/fly/tools cd /fly/tools/ rz -y #上传 ls useradd -s /sbin/nologin -M mysql #建用户 id mysql tar xf mysql-5.6.39-linux-glibc2.12-x86_64.tar…
mysql简单优化思路 作为开发人员,数据库知识掌握的可能不是很深入,但是一些基本的技能还是要有时间学习一下的.作为一个数据库菜鸟,厚着脸皮来总结一下 mysql 的基本的不能再基本的优化方法. 为了更好的说明,我假想出来了一个业务场景,可能在实际业务中并不存在这样的场景,只为举例说明问题: 表结构说明 用户账号表(account),主要存储用户账号.密码.注册时间等信息,1万条数据 用户基本信息表(userinfo),主要存储用户个人信息,包括年龄.性别等,关联 account 表,关联字段…
mysql对cpu的利用特点: 5.1之前,多核支持较弱:5.1可利用4个核:5.5可利用24核:5.6可利用64个核:每个连接对应一个线程,每个并发query只能使用一个核 mysql对内存的利用特点: 有全局内存和会话内存,建议将会话内存设置较小: 内存管理简单.有效(如在高并发环境下,可以增加物理内存以减少物理IO,提高并发性能): query cache建议关闭或设置很小(query cache 有一个全局的锁,有任何的DML,都会导致query cache再更新一下): 执行计划没有缓…
mysql之优化器.执行计划.简单优化 2018-12-12 15:11 烟雨楼人 阅读(794) 评论(0) 编辑 收藏 引用连接: https://blog.csdn.net/DrDanger/article/details/79092808https://blog.csdn.net/wildpen/article/details/81335777   sql语句在sql层的流程: 用户传入sql-----查询缓存(命中缓存可直接返回结果)----解析器(生成sql解析树)----预处理器(…
一.mysql中的优化 where语句的优化 1.尽量避免在 where 子句中对字段进行表达式操作select id from uinfo_jifen where jifen/60 > 10000;优化后:Select id from uinfo_jifen where jifen>600000; 2.应尽量避免在where子句中对字段进行函数操作,这将导致mysql放弃使用索引 select uid from imid where datediff(create_time,'2011-11…
mysql查询过程: 客户端发送查询请求. 服务器检查查询缓存,如果命中缓存,则返回结果,否则,继续执行. 服务器进行sql解析,预处理,再由优化器生成执行计划. Mysql调用存储引擎API执行优化器生成的执行计划进行查询. 返回结果. 优化数据访问: 只获取必要的数据: 是否查询了多余的记录: 多表关联时是否返回了全部列: 是否总是取出全部列(避免select *): 是否重复查询相同的数据(缓存代替). 避免额外的记录扫描:查询开销衡量标准(响应时间.扫描行数.返回行数) 响应时间:服务时…