首页 > 数据库 >mysql优化入门

mysql优化入门

时间:2023-10-30 14:40:09浏览次数:32  
标签:full statements 入门 mysql log sql TABLE 优化 schema

查看慢sql

Select * from information_schema.processlist;

Show [full] processlist; 不加full只能显示前100字符 


通过慢日志

Slow query log 记录时间超过long_query_time的SQL

log_slow_admin_statements记录ALTER

TABLE, ANALYZE TABLE, CHECK TABLE, CREATE INDEX, DROP INDEX, OPTIMIZE TABLE, and REPAIR

TABLE

log_queries_not_using_indexes记录不使用的索引查询,限制参数log_throttle_queries_not_using_indexes,每分钟的记录数


慢查询的日志分析工具

mysqldumpslow mysql自带

pt-query-digest 参数比较丰富


通过Sys schema查询慢sql

需要performance_schema=ON

• UPDATE performance_schema.setup_consumers SET ENABLED = 'YES';

• UPDATE performance_schema.setup_instruments SET ENABLED = 'YES', TIMED = 'YES';

(影响性能)

一般x$开头是原始数据,其他开头为转换过的数据


schema_table_statistics表的改动和io

schema_tables_with_full_table_scans全表扫,优先优化

schema_auto_increment_columns自增主键

schema_index_statistics索引改动情况

schema_redundant_indexes schema_unused_indexes  冗余索引和未使用索引

statements_with_full_table_scans全表扫sql信息

statement_analysis sql汇总信息,events_statements_summary_by_digest数据来源

statements_with_errors_or_warnings error和warning sql  

statements_with_sorting statements_with_temp_tables临时表sql

statements_with_runtimes_in_95th_percentile  runtime在95%的SQL


查看运行时间最长的sql

select * from sys.statement_analysis order by

total_latency desc limit l\G


查看innodb_buffer_page会导致innodb buffer pool扫描影响性能


Explain analyze、explain  分析sql


若于执行计划不一致

optimizer trace查看


set optimizer_trace=‘enabled=on'

执行sql

select * from

information_schema.optimizer_trace;



标签:full,statements,入门,mysql,log,sql,TABLE,优化,schema
From: https://blog.51cto.com/u_16082244/8088283

相关文章

  • MySQL8.0新特性之:不可见索引
    概念描述  MySQL从8.0版本开始支持不可见索引(invisibleindex)也可叫隐式索引,隐形索引或者隐藏索引。不可见索引是不被MySQL优化器使用的,但是优化器会正常维护它。使用场景非主键上的索引使用测试删除索引对性能的影响,而无需进行破坏性更改(通常对于大表来说,删除或者重建索引的影响......
  • TypeScript入门到精通——TypeScript类型系统基础——类
    类 JavaScript是一门面向对象的编程语言,它允许通过对象来建模和解决实际问题。同时,JavaScript也支持基于原型链的对象继承机制。虽然大多数的面向对象编程语言都支持类,但是JavaScript语言在很长一段时间都没有支持它。在JavaScript程序中,需要使用函数来实现类的功能。 ......
  • 一、小程序简单入门
     1.下载微信开发者工具概览|微信开放文档(qq.com)2.查看官网文档(开发->指南->起步、目录结构、配置小程序)简单了解小程序的文件架构3.发送HTTP请求(js文件中操作)3.1wx.request(json),发送https请求时需要将外部网站添加到小程序后台(开发->开发管理->开发设置->服......
  • mysql将某一个月所有天数构造出来
    写项目时会遇到统计某个月每一天数据的场景mysql可以将某个月的所有日期构造出来DAY()函数:返回给定日期的月份的日期部分LAST_DAY()函数:返回某个月最后一天的日期STR_TO_DATE()函数:将字符串格式转换成日期格式ADDDATE()函数:将指定的日期值添加到现有日期上,并返回结果SELE......
  • TypeScript入门到精通——TypeScript类型系统基础——类型别名
    类型别名 如同接口声明能够为对象类型命名,类型别名声明能够为TypeScript中的任意类型命名。一、类型别名声明 类型别名声明能够定义一个类型别名,它的基本语法如下所示:typeAliasName=Type 在该语法中,type是声明类型别名的关键字;AliasName表示类型别名的名称;Ty......
  • C++U5-深度优先搜索-03(记忆化搜索、剪枝和优化)
    ......
  • windwos下mysql开启ssl
    1.下载opensslhttps://slproweb.com/products/Win32OpenSSL.html2.配置openssl到环境变量 3.创建证书及密钥mysql_ssl_rsa_setup.exe--datadir=d:/app/mysql/certs--verbose参数说明-d,--datadir=name数据目录路径-?,--help显示帮助信息并退出-s,--suffix=nameX.50......
  • 解决MYSQL查询报错 Expression #4 of SELECT list is not in GROUP BY clause and con
    原因:在MySQL5.7.5后,默认开启了ONLY_FULL_GROUP_BY,所以导致了之前的一些SQL无法正常执行,其实,是我们的SQL不规范造成的,因为groupby之后,返回的一些数据是不确定的,所以才会出现这个错误。执行下面的命令后,重启你的代码,就可以了selectversion(),@@sql_mode;SETsql_mode=(SELECTRE......
  • 本机计算机上的mysql启动后停止
    本机计算机上的mysql启动后停止原因:mysql5.0和mysql8.0配置不同把my.ini改成以下设置然后再重新mysqld--initialize-insecure--user=mysql然后再启动netstartmysqlmysql8.0下面的路劲可自定义[client]default-character-set=utf8[mysql]default-character-set=utf8[mysql......
  • CVer从0入门NLP(一)———词向量与RNN模型
    ......