本文要说的是由MySQL数据库引起的网站打开速度慢的一个排查思路,如果是带宽跑满等其他情况则需要用其他方法

执行数据库语句,看看有没有语句长时间出现,正常数据都是毫秒执行,如果好几秒都在列表里,那肯定是有问题

mysql > show full processlist ;

也可以通过-e选项执行后grep过滤

mysql -uroot -p -e "show full processlist" |grep -vi sleep

开启慢查询日志,如超过2秒的查询记录进日志

vi /etc/my.cnf

slow_query_log = on #开启慢查询日志

slow_query_log_file = filename #指定日志文件保存路径

long_query_time = 2 #指定达到多少秒才算慢查询

如果发现语句有多个查询条件且重复值多,那么在重复少的条目上创建索引

排查实例:

某论坛打开速度很慢,按上述方式检查后发现有很多查询语句,都是用论坛的搜索框搜索的,那么优化思路如下:

1、网站程序上做调整,需要登录后才能搜索,这样可以减少搜索次数,减轻数据库压力

2、如果有大量频繁的搜索,分析web日志(awstats),有可能是爬虫,封掉就可以了

2、数据库做主从同步,读写分离

3、数据库前端做Memcache缓存服务器

4、类似'%避孕套%'这样的语句很难做索引优化,可以通过专门的搜索服务(如Sphinx)来实现搜索,不让数据库去做这个事。

mysql数据库加载太慢_MySQL数据库导致网站打开速度慢的解决思路相关推荐

  1. mysql数据库加载太慢_mysql千万级数据库插入速度和读取速度的调整记录

    一般情况下mysql上百万数据读取和插入更新是没什么问题了,但到了上千万级就会出现很慢,下面我们来看mysql千万级数据库插入速度和读取速度的调整记录吧. (1)提高数据库插入性能中心思想:尽量将数据 ...

  2. mysql怎么加载bak文件_MySQL数据库(表)的导入导出(备份和还原)

    一)在同一个数据库服务器上面进行数据表间的数据导入导出: 1. 如果表tb1和tb2的结构是完全一样的,则使用以下的命令就可以将表tb1中的数据导入到表tb2中: insert into db2.tb ...

  3. mysql数据库加载太慢_使用MySQL数据库很慢

    对于2000数据库,您应该调整table cache设置.您肯定在此缓存中有很多缓存未命中. 尝试使用mysqltunner和/或tunning_primer.sh获取有关设置潜在问题的其他信息. 现 ...

  4. 影响PHP+MySQL网站打开速度的几个因素

    最近经常听朋友说网站打开很慢,导致每天会损失很多IP.网站打开速度慢,原因是多方面的,除去网络本身的原因不说,服务器及程序本身的原因也是影响网站打开慢的重要原因.下面结合自己的一些经验,谈谈PHP+M ...

  5. Spring 3.1 –从数据库加载XML配置的属性

    Spring使通过其PropertyPlaceholderConfigurer和(Spring 3.1之前)PropertySourcesPlaceholderConfigurer(Spring 3. ...

  6. 你所不知道的SQL Server数据库启动过程(用户数据库加载过程的疑难杂症)

    转http://www.cnblogs.com/zhijianliutang/p/4100103.html 前言 本篇主要是上一篇文章的补充篇,上一篇我们介绍了SQL Server服务启动过程所遇到的 ...

  7. Paging3、Room使用,1、从本地Room数据库加载 2、直接网络获取数据加载 3、网络访问数据到Room数据库再加载 4、封装使用

    目录 1.从本地Room数据库加载数据 viewmodel fragment中使用 页面 数据库相关 2.直接网络获取数据加载 3.网络访问数据到Room数据库再加载数据 自定义RemoteMedia ...

  8. Asp .NetCore 从数据库加载配置(一)

    一般来说,Asp .NetCore 应用从官方默认的appsetting.json文件中读取就好,而且利用option模式中的 IOptionsSnapSot<T>.IOptionsMon ...

  9. python数据批量写入iq数据库_通过Load table命令将数据文件加载到Sybase IQ数据库里面的Python脚本...

    CREATE TABLE poc_app.sys_ftp_cfg ( ftp_id              varchar(100) NOT NULL,          --话单文件名标记 ftp ...

  10. azure云数据库_从Azure Databricks将数据加载到Azure SQL数据库

    azure云数据库 In this article, we will learn how we can load data into Azure SQL Database from Azure Dat ...

最新文章

  1. 程序员百万年薪进阶指南(一)
  2. 设计模式(一) 单例模式
  3. 用matlab分析时间响应教程,基于Matlab的多自由度耦合滑移模型的动力响应可靠度分析...
  4. 【秒懂设计模式】单例设计模式
  5. lua5.3 获取table的元素数量
  6. (Windows和Linxu双系统)Alibaba套件sentinel1.7下载和nacos1.3和seate-server1.3下载
  7. 【编程好习惯】复用代码以提高可维护性
  8. jfinal 获取路径
  9. python的模拟登录原理_python---cookie模拟登陆和模拟session原理
  10. Sweet Home 3D 是Web三维效果图
  11. 2017年11月11日
  12. 谷歌首页被别的网站篡改
  13. MIT Place Pulse数据集及google街景图片爬取
  14. android外设按键,Android 外接键盘的按键处理 .
  15. (STM32CubeMX)超声波模块测距传感器学习笔记
  16. STM32入门:STM32F401CDU6库函数工程文件搭建
  17. python第一周心得
  18. aircrack安装并破解wifi
  19. 手机usb计算机无法连接,手机usb连不上电脑怎么办实际解决
  20. Scala和Kotlin脚本编程

热门文章

  1. 天才小毒妃 第922章 把金针还给我
  2. python输出今天的日期和今天的日期时间
  3. 数显之家快讯:【SHIO世硕心语】中国武侠背后的传奇家族-海宁查氏,如何兴盛600年?
  4. 小米手机系统服务组件是干什么的_小米手机的云服务也太好用了吧?!手机丢了完全不用怕了...
  5. python程序怎么给别人运行_如何把自己写的python程序给别人用
  6. java实现pdf导出
  7. Linux------进程概念、进程控制
  8. aio-pika的使用
  9. powerbi使用说明_个人如何免费注册 PowerBI 账号(终极说明)
  10. 12.图形裁剪——二维裁剪+三维裁剪+Sutherland-Cohen裁剪算法+中点分割算法