`
fuhao_987
  • 浏览: 61791 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

简单的优化mysql,提高查询性能

阅读更多
其实下面要讲的优化方法都是大家熟悉的,只是对于自己来说,是前进了一小步,而且看到结果很满意。免不了有点高兴,所以就写下来。

问题:在php中用select语句查询mysql数据库,返回结果很慢。实在不能忍受
1、最开始的情况:
php中的select语句:
select article_diffsize.content from article_diffsize,article_info where article_diffsize.ArticleID = article_info.ArticleID and article_info.ArticleName='计算机程序'

mysql
两个表article_diffsize,article_info没有建任何索引
结果这个从php中读取数据过程,所花的时间是:

6s啊,这是一个多么长的时间啊。。。
因为对mysql的优化完全没有概念。所以跑去图书馆,借了本书《php 和mysql web 开发》。
看到里面讲用explain可以获取关于sql语句如何执行的信息。运行以后发现rows太多,然后按照方法给article_diffsize,article_info两个表的ArticleID都加上了索引。
2、
时间是:

发现select语句出来是这么个情况:

16311行啊~!!!怎么还有这么多。。
也不知道要怎么办了。
3、
看到书里有一行select语句是用join来实现两个表连接,抱着尝试的心态,把select语句改为如下:
select content from article_diffsize left join article_info on (article_diffsize.ArticleID = article_info.ArticleID)where article_info.ArticleName='计算机程序'

时间:

explain后:

4、
还是不行啊,不过感觉改变select和建立索引是个好方法。。最后,我采用了这种方式:
select content from article_diffsize where ArticleID = (select ArticleID from article_info where ArticleName='计算机程序')

然后给article_info表的ArticleName建了个索引
然后。。。。。
时间:

explain结果:

不到1s的时间。。可以接受了。。。
分享到:
评论

相关推荐

    mysql优化/pdf

    因此,使用最新版本的MySQL是提高性能的一个简单方法。 ## 2. 为MySQL服务器配置合适的硬件 MySQL的性能很大程度上取决于服务器的硬件配置。确保服务器具有充足的内存、处理器和磁盘空间会提高MySQL的性能。 ## 3...

    MySQL调优及mysql性能优化.doc

    Mysql性能优化就是通过合理安排资源,调整系统参数使MySql运行更快、更节省资源。 不难发现,原来mysql调优其实就是从时间、空间这两个方面来进行优化 mysql怎么调优 第一:选择最合适的字段属性。 mysql在创建...

    MySQL数据库运维.pdf

    如何进行优化,提高 MySQL 数据库的性能?如何架构部署 MySQL 集群、架构跨 IDC 的分布式 MySQL 集群?如何实现 MySQL 数据库的 HA?将在本课程中跟大家分享。 课程大纲: 第 1 课 机器选型、系统规划 机器选型 业务...

    MySQL查询优化技术系列讲座之使用索引

    然而,如果没有使用索引,在很多情况下,你试图使用其它的方法来提高性能都是在浪费时间。首先使用索引来获取最大的性能提高,接着再看其它的技术是否有用。这一部分讲述了索引是什么以及索引是怎么样提高查询性能的...

    202311月最新MySQL-71到精选面试题题及答案涵编程题和存储知识点-20231120.pdf

    索引优化:讨论了如何使用索引来提高查询性能,包括索引类型、索引设计原则等。 事务管理:介绍了事务的概念、事务隔离级别、事务的ACID特性等。 面试编程题:提供了一些常见的MySQL编程题,要求面试者用SQL语句解决...

    SQL语句优化提高数据库性能

    性能不理想的系统中除了一部分是因为应用程序的负载确实超过了服务器的实际处理能力外,更多的是因为系统存在大量的SQL语句需要优化。为了获得稳定的执行性能,SQL语句越简单越好。对复杂的SQL语句,要设法对之进行...

    MySQL性能优化配置参数之thread_cache和table_cache详解

    MySQL里面为了提高客户端请求创建连接过程的性能,提供了一个连接池也就是 Thread_Cache池,将空闲的连接线程放在连接池中,而不是立即销毁.这样的好处就是,当又有一个新的请求的时候,mysql不会立即去创建连接 线程,...

    在MySQL中获得更好的全文搜索结果

    在此,开发 者只需要简单地标记出需要全文查找的字段,然后使用特殊的MySQL方法在那些字段运行搜索,这不仅仅提高了性能和效率(因为MySQL对这些字段做了索 引来优化搜索),而且实现了更高质量的搜索,因为MySQL...

    SQLyog安装教程(mysql数据库界面软件)

    它还支持对表结构进行编辑和优化,以提高数据库的性能。 SQL查询:SQLyog提供了一个强大的SQL查询编辑器,使用户可以轻松地编写和执行SQL查询。它还支持自动完成、语法高亮和错误检查,以帮助用户编写准确的SQL语句...

    mysql 搜索之简单应用

    如何在MySQL中获得更好的全文搜索结果 作者: Techrepublic.com.com 2006-04-03 11...在此,开发者只需要简单地标记出需要全文查找的字段,然后使用特殊的MySQL方法在那些字段运行搜索,这不仅仅提高了性能和效率

    MySQL 的 20+ 条最佳实践

    这是提高性能的最有效的方法之一,这是由数据库引擎私下处理的。当同一个查询被多次执行,结果会直接从缓存里提取,这样速度就很快。 主要的问题是,这对程序员来说太简单了,不容易看到,我们很

    Mysql中SQL语句不使用索引的情况

    众所周知,增加索引是提高查询速度的有效途径,但是很多时候,即使增加了索引,查询仍然不使用索引,这种情况严重影响性能,这里就简单总结几条MySQL不使用索引的情况 如果MySQL估计使用索引比全表扫描更慢,则不...

    PHP和MySQL Web开发第4版pdf以及源码

    12.2 提高MySQL数据库的安全性 12.2.1 从操作系统角度来保护MySQL 12.2.2 密码 12.2.3 用户权限 12.2.4 Web问题 12.3 获取更多关于数据库的信息 12.3.1 使用SHOW获取信息 12.3.2 使用DESCRIBE获取关于列的...

    怎样正确创建MySQL索引的方法详解

    MySQL在300万条记录左右性能开始逐渐下降,虽然官方文档说500~800w记录,所以大数据量建立索引是非常有必要的。MySQL提供了Explain,用于显示SQL执行的详细信息,可以进行索引的优化。 什么是索引? MySQL官方对索引...

    PHP和MySQL WEB开发(第4版)

    12.2 提高MySQL数据库的安全性 12.2.1 从操作系统角度来保护MySQL 12.2.2 密码 12.2.3 用户权限 12.2.4 Web问题 12.3 获取更多关于数据库的信息 12.3.1 使用SHOW获取信息 12.3.2 使用DESCRIBE获取关于列的信息 ...

    基于PHP+MySQL WSTShop电子商务系统.zip

    PHP提供mysqli、PDO等数据库扩展,能够无缝连接MySQL,进行SQL查询、数据插入、更新、删除等操作,实现动态网站的数据持久化。此外,PHP还支持与其他数据库系统的连接,如PostgreSQL、SQLite、Oracle等,具有良好的...

    PHP+MySQL实现的问卷调查系统.zip

    PHP提供mysqli、PDO等数据库扩展,能够无缝连接MySQL,进行SQL查询、数据插入、更新、删除等操作,实现动态网站的数据持久化。此外,PHP还支持与其他数据库系统的连接,如PostgreSQL、SQLite、Oracle等,具有良好的...

    基于PHP+MySql实现的一个简单的图书管理系统,功能参考了自己学校的图书管理系统,一个练手项目.zip

    PHP提供mysqli、PDO等数据库扩展,能够无缝连接MySQL,进行SQL查询、数据插入、更新、删除等操作,实现动态网站的数据持久化。此外,PHP还支持与其他数据库系统的连接,如PostgreSQL、SQLite、Oracle等,具有良好的...

    PHP+mysql 这是一个自主开发的购物商城.zip

    PHP提供mysqli、PDO等数据库扩展,能够无缝连接MySQL,进行SQL查询、数据插入、更新、删除等操作,实现动态网站的数据持久化。此外,PHP还支持与其他数据库系统的连接,如PostgreSQL、SQLite、Oracle等,具有良好的...

Global site tag (gtag.js) - Google Analytics