用到啥学啥,mysql数据库优化成了这几天的老大难问题。疯狂的寻找mysql优化的资料,觉得有用的不少,记录下跟大家分享,对了,这里仅仅是mysql数据库本身的优化,没有写磁盘之类的:
开始之前,介绍俩mysql的命令:
show global status; 查看运行状态的,显示运行各种状态值
show variables; 查询MySQL服务器配置信息的
ps:在命令里面设置配置信息的话,下次重启不起作用,所以要写到my.cnf里面。
1.慢查询
就是语句执行需要的时间,如果超过设定的值,则进行记录。
show variables like '%slow%';这个可以查看是否开启及设置的时间,单位为秒。
show global status like '%slow%';这个是查看统计情况
2.连接数
遇见”MySQL: ERROR 1040: Too many connections”的情况,一种是访问量确实很高,MySQL服务器抗不住,这个时候就要考虑增加从服务器分散读压力,另外一种情况是MySQL配置文件中max_connections值过小:
show variables like 'max_connections';查看最大连接数
mysql> show global status like 'Max_used_connections'查看目前出现的最大连接数
推荐的两个者的比例:Max_used_connections / max_connections * 100% ≈ 85%
3.Key_buffer_size
show variables like 'key_buffer_size';显示目前Key_buffer_size的设置值,单位是字节。
那么这个参数设置多少合适呢,一般是内存的1/4大小。如何确定一个合适的值呢?
show global status like 'key_read%';这个是看索引请求(Key_read_requests)的,还可以查看内存中没有找到直接从硬盘读取索引(Key_reads)。两者的比值Key_reads / Key_read_requests越小越好,至少是1:100,1:10000算是很不错。不过比例再大的话,也没有很大的意义了。
MySQL服务器还提供了key_blocks_*参数:show global status like 'key_blocks_u%';
Key_blocks_unused表示未使用的缓存簇(blocks)数,Key_blocks_used表示曾经用到的最大的blocks数,比如这台服务器,所有的缓存都用到了,要么增加key_buffer_size,要么就是过渡索引了,把缓存占满了。比较理想的设置:
Key_blocks_used / (Key_blocks_unused + Key_blocks_used) * 100% ≈ 80%
4.Open_tables
show global status like 'open%tables%';查看打开表的情况
Open_tables表示打开表的数量,Opened_tables表示打开过的表数量,如果Opened_tables数量过大,说明配置中table_cache(5.1.3之后这个值叫做table_open_cache)值可能太小。
比较适合的值:
Open_tables / Opened_tables * 100% >= 85%
Open_tables / table_cache * 100% <= 95%
5.查询缓存(query cache)
详细出处:mysql数据库优化 - 23生活
http://www.23live.cn/article.asp?id=436
分享到:
相关推荐
MySQL 数据库优化技巧总结 MySQL 数据库优化是数据库管理和开发者非常关心的一个问题。由于 MySQL 数据库的性能优化可以直接影响到整个应用系统的性能和用户体验,因此掌握 MySQL 数据库优化技巧对开发者和数据库...
MySQL数据库优化SQL篇PPT课件.pptx 本PPT课件主要讲述了MySQL数据库优化的重要知识点,特别是SQL优化方面的内容。从执行计划、SELECT语句、IN和EXIST语句、LIMIT语句、RAND函数、Order by、Group by、Distinct和...
MySQL数据库优化MySQL数据库优化MySQL数据库优化MySQL数据库优化
简单描述数据库优化方案,以及数据库一些常用的操作,包括一些简单的查询语句,函数使用,合适学习mysql的读者。 简单描述数据库优化方案,以及数据库一些常用的操作,包括一些简单的查询语句,函数使用,合适学习...
MySQL数据库优化实践主要涵盖硬件配置、操作系统层面的调整以及文件系统的优化等方面,这些优化措施能够显著提高MySQL数据库的性能和响应速度。 首先,硬件优化是基础。开启BBWC(Battery Backed Write Cache)能...
MySQL数据库优化方案及应用主要关注的是提升数据库性能和系统稳定性,以应对高并发访问场景。在本文中,我们将深入探讨数据库优化的各种策略和技术,以及如何通过Amoeba for MySQL中间层代理和分布式数据库架构实现...
MYSQL数据库优化秘籍,大牛出的,值得你反复研读 MySQL在Linux环境下的安装 文件引擎MyISAM与InnoDB比较 LOAD DATA INFILE/mysqldump DBA的分析命令 MySQL的系统配置参数、诊断操作系统的状态 MySQL的分库分表,分区...
MySQL数据库优化SQL篇.ppt,适用于企业级项目开发
MySQL数据库优化SQL篇学习教案 MySQL数据库优化SQL篇学习教案旨在帮助读者学习和掌握 MySQL 数据库优化的相关知识,涵盖了 SELECT 语句优化、执行计划、IN 和 EXISTS 语句、LIMIT 语句、RAND 函数、Order、Group、...
Mysql数据库优化总结-飞鸿无痕-ChinaUnix博客................................................................................................................
MySQL数据库优化攻略涉及的知识点繁多,主要包括以下几个方面: 1. 优化目的:数据库优化的主要目的是提升数据库的稳定性和效率,减少应用响应时间,提升用户体验,避免页面访问错误。这意味着优化工作不仅仅是为了...
本文将深入探讨MySQL数据库优化的各种策略和方法。 1. **选择MySQL的意义** MySQL因其灵活的存储引擎架构、高性能、低资源消耗和广泛的语言支持而成为企业首选的数据库系统。然而,随着业务的发展,如高并发连接、...
MySQL数据库优化学习笔记 在数据库管理系统中,MySQL是一款广泛应用的关系型数据库,因其开源、免费、高效的特点,被广泛用于各种规模的项目。然而,随着数据量的增长和业务复杂度的提高,性能优化变得至关重要。本...
mysql数据库优化文档,有喜欢的童鞋可以看一下
mysql数据库优化视频教程,文件内含百度云下载链接,请自行下载观看,链接失效时可联系邮箱补发,谢谢,赶快下载吧,即下即用~