Mysql 运维优化必须知道的几个命令

MySQL数据库 --- 运维篇 一、日志 1.1、错误日志 错误日志是 MySQL 中最重要的日志之一,它记录了当 mysqld 启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息。当数据库出现任何故障导致无法正常使用时,建议首先查看此日志。 该日志是默认开启的,默认存放目录 /var/log/,默认的日志文件名为 mysqld.log 。查看日志位置: show variables like '%log_error%'; 1.2、二进制日志 1.2.1、介绍 二进制日志(BINLOG)记录了所有的 DDL(数据定义语言 阅读详情
针对SQL语句维护,运行的命令以及命令详解

#显示当前session中所有的统计参数(对于所有存储引擎的表操作都会有累计),常关心的几个参数

show status like 'Com_%';

上面输出参数比较常用的了解一下:

Com_select:        执行select次数,一次查询只累加1
Com_insert:        执行insert次数,对于批量插入,只累计1
Com_update:      执行update次数,执行update次数

Com_delete:        执行delete次数,执行delete次数

#只针对InnoDB存储引擎

show status like 'Innodb_rows_%';

上面输出参数比较常用的了解一下:

Innodb_row_read:            SELECT查询返回行数
Innodb_row_inserted:      执行INSERT操作插入行数
Innodb_row_updated:      执行UPDATE操作更新行数

Innodb_row_deleted:       执行DELETE操作删除行数


#试图连接Mysql服务器次数

show status like 'Connections';

#服务器工作时间

show status like 'Uptime';

#慢查询次数
show status like 'Slow_queries';


#通过explain和desc来查看执行计划

explain/desc   query_statement(SQL语句)

对执行计划的每个列进行说明
一、 select_type:表示SELECT的类型,常见取值有
(1)、SIMPLE(简单表,即不使用表连接或者子查询),
(2)、PARMARY(主查询,即外层查询),
(3)、UNION(UNION中的第二个或者后面的查询语句),
(4)、SUBQUERY(子查询第一个SELECT)。

(5)、DERIVED(派生表 From 里面的子查询)

二、table:输出表结果

三、 type:表示在MYSQL在表中找到所需行的方式,或者叫访问类型,以下类型是从左到右,性能由最差变最好
all->index->range->ref->eq_ref->const,system->null
(1)type=all :全表扫描,MYSQL遍历全表来找来匹配行
(2)type=index :搜索全扫描,MYSQL遍历整个索引来查询匹配行
(3)type=range :索引扫描范围,常见于<、<=、>、>=等操作
(4)type=ref :使用非唯一索引扫描或唯一索引的前缀扫描,返回匹配某个单独值的记录行(ref经常出现在join中)
(5)type=eq_ref :使用唯一索引,对于每个检索值,表中只有一条记录匹配。(多表关联中使用primary key 或者unique index 为关联条件)
(6)type=const/system :单表中最多有一个匹配行,查询起来非常速度,所以这个匹配行中的其他列的值可以被优化器在当前查询中当做常量
来处理,例如,根据主键primary key 或 唯一索引 unique index 进行查询。
(7)type=null :MYSQL不用访问表或者索引,直接就能够得到结果,例如,select 1 from dual where 1

四、 possible_keys:表示查询时可能用到的索引
五、 key:表示实际使用的索引
六、 key_len:使用到索引字段长度
七、 rows:扫描行的数量
八、 Extra:执行情况的说明和描述,包含不适合在其他列中显示但对执行计划非常重要的额外信息。


#使用 explain extended  命令加上  show warnings,我们能够看到SQL真正执行之前优化器做了哪些处理。可以查看到经过优化后的sql语句

案例:

EXPLAIN EXTENDED
select DISTINCT c.Tag
from be_Blogs a 
join be_Posts b on a.BlogId = b.BlogID
join be_PostTag c on c.BlogID = b.BlogID;
SHOW WARNINGS



# explain partitions 查看sql所访问的分区
EXPLAIN PARTITIONS
select DISTINCT c.Tag
from be_Blogs a 
join be_Posts b on a.BlogId = b.BlogID
join be_PostTag c on c.BlogID = b.BlogID;


#查看是否支持show profiles
select @@have_profiling;

#设置profiles开启

set profiling = 1;

#可以通过 show profiles 查看当前SQL的 QueryID 值为多少
select DISTINCT c.Tag
from be_Blogs a 
join be_Posts b on a.BlogId = b.BlogID
join be_PostTag c on c.BlogID = b.BlogID;
show profiles

#查看执行过程中线程每个状态和消耗时间

show profile for query QueryID(通过show profile 查询出来的QueryID);

#选择查看CPU耗费时间

show profile cpu for query QueryID;

#查看SQL解析执行过程中每个步骤对应的源码的文件、函数名以及具体的源文件行数。
show profile source for query 140; 



Mysql 锁信息查询语句

#输出一个字符串文本,可以额外研究,内含信息量的信息,对数据库整体运行情况,对高性能调优很有帮助
show engine innodb status


#现在获取的锁,但是不含没有获取的锁,而且只是针对INNODB的。

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS; 


#包含了所有正在执行的的事物相关信息(INNODB),而且包含了事物是否被阻塞或者请求锁。
select * from information_schema.innodb_trx;


#系统锁等待相关信息,包含了阻塞的一行或者多行的记录,而且还有锁请求和被阻塞改请求的锁信息等。
select * from information_schema.INNODB_LOCK_WAITS;


#查看正在被锁定的的表

show OPEN TABLES where In_use > 0;


有兴趣的朋友也可以了解一下mysql抓取慢查询日志信息,点此传送

MySQL的性能优化及自动化运维实践与Mysql高并发优化 首先,我们来看看DBA的具体工作,我觉得 DBA 真的很忙:备份和恢复、监控状态、集群搭建与扩容、数据迁移和高可用,这是我们 DBA 的功能。 了解这些功能以后要对体系结构有更加深入的了解,你不知道怎么处理这些故障和投诉的事情。 所以我们要去了解缓存/线程、SQL优化、存储引擎以及SQL审计以及锁与实务、体系结构更深一点,就去研究内核原理和源码定制,DBA有这么多工作,他们就像一个小怪兽一样等着我们去解决。 今天我站在更加全面的角度跟大家分享一下我觉得我在这一年多DBA工作当中的经验,希望可以给大家带 阅读详情

相关推荐

运维:mysql常用的服务器状态命令

以上是一些常用的服务器状态运行命令,大家如果还有比较常用的命令欢迎补充交流!

IT技术分享社区 2934

MySQL入门到精通——运维篇(基础篇——进阶篇——运维篇)本文以MySQL8.0版本以上为例

文章目录前言MySQL——运维篇一、日志1.日志-错误日志2.日志-二进制日志3.日志-查询日志4.日志-慢查询日志二、主从复制1.主从复制-概述2.主从复制-原理3.主从复制-搭建3.1.主从复制-搭建-主库配置3.2.主从复制-搭建-从库配置3.2.主从复制-搭建-测试三、分库分表1.分库分表-介绍1.1.分库分表-介绍1.2.分库分表-介绍-拆分方式2.分库分表-MyCat概述2.1.分库分表-MyCat概述-安装2.2.分库分表-MyCat概述-核心概念3.分库分表-MyCat入门3.1分库分表-M

又菜又爱玩的小熊 3364

别再死记硬背注意力机制了!用Python+PyTorch从零实现一个HAN(Hierarchical Attention Network)

本文详细介绍了如何使用Python和PyTorch从零实现Hierarchical Attention Network(HAN),通过代码级解析帮助读者深入理解层次注意力机制。文章涵盖词级和句子级注意力层的构建、完整HAN架构的实现、训练技巧及注意力可视化方法,特别适合希望掌握高级NLP技术的开发者。

weixin_28744423的博客 166

MySQL运维篇

为了确保数据库产品的稳定性,很多数据库拥有双机热备功能。也就是,第一台数据库服务器,是对外提供增删改业务的生产服务器;第二台数据库服务器,主要进行读的操作。

qq_40492693的博客 3247

Xilinx-复旦微-FPGA-眼图BlockDesign系统制作-针对PCIE系统

XIlinx-复旦微电子-FPGA-眼图BlockDesign系统制作-针对PCIE系统,手把手教你如何建立眼图测试

weixin_43444334的博客 2599

西南交通大学车辆工程专业大四上车辆综合实训ame仿真部分

西南交通大学车辆工程专业大四上车辆综合实训ame仿真建模部分

qq_64814052的博客 1245

MySQL 运维篇

MySql 运维、日志、binlog、读写分离、MyCat ,一主一从,双主双从

青竹暖回阳的博客 1610

《第二十二篇》Cross-Attention:注意力机制详解-代码实现和公式详解《二》

本文详细介绍了Cross-Attention的原理、公式和实现。Cross-Attention用于Transformer解码器和Encoder-Decoder结构,通过查询向量(Q)与键、值向量(K、V)的交互实现序列对齐。核心公式为softmax(QK^T/√d_k)V,其中Q来自Decoder,K、V来自Encoder。文章还给出了多头注意力机制公式和PyTorch实现代码,包括投影计算、注意力分数计算和输出处理。代码示例展示了如何构建一个完整的Cross-Attention模块,并演示了其在解码器查询

guoguozgw的博客 2214

MySQL基础运维知识点大全

MySQL是一种流行的开源关系型数据库管理系统,广泛应用于Web应用程序。MySQL的运维工作是数据库管理员(DBA)的核心工作之一,包括数据备份与恢复、数据库性能优化、安全性管理等任务。

Bo_B0的博客 2781

从Chiplet到UCIE:D2D互联技术如何重塑半导体设计生态

本文探讨了D2D互联技术在半导体设计中的革命性作用,从Chiplet到UCIE标准的演进如何重塑行业生态。详细分析了D2D互联的技术本质、架构选择及UCIE标准带来的变革,并展望了未来光学D2D和3D集成等趋势。高速互联接口技术的突破为AI加速器和计算芯片提供了更高带宽和能效。

weixin_29292535的博客 932

五、MT8168 音频驱动之SPEAKER

本章主要讲解MT8168平台的内部SPEAKER驱动配置。分为HP接法和LINE OUT接法。2.1.3 audio_custom_exp.h设置。2.1.4 mixer_paths.xml设置。2.2.3 mixer_paths.xml设置。2.1.2 ProjectConfig 设置。2.2.2 ProjectConfig 设置。2.2.1 deconfig设置。2.1.1 DTS设置。......

Joon2020的博客 1664

Mysql运维常用命令回顾整理

前景 Mysql作为开源数据库的中坚力量之一,虽然目前已被甲骨文收购,面临闭源风险,但是mysql扔是我们运维工作中最常面对的工作,那如何做好mysql运维工作,甚至做好mysql的基础运维,都是维稳业务持久层的关键,故本文收集相关资料整理MySQL运维工作常用的命令,以作记录,供日常运维时参考查证。 Mysql运维 MySQL运维工作常用命令和操作主要包括:对MySQL数据库状态的查看、性能的优...

企业实战系列集 ●●● https://ximenjianxue.blog.youkuaiyun.com 4331

电子科技大学计算机预推免(最终去向)

电子科技大学,预推免报名时必须要有一封本校老师写的推荐信,推荐信基本上就是复试的入场券,所以一定要提前联系老师,拿到推荐信。只要有机会进了面试,我觉得老师对于双非并不歧视,面试的个人表现才是关键性决定因素,技巧性也是很强的,如果有需要帮助的,欢迎私信~~

D1379951481的博客 3368

MySQL服务器的运维与优化

指定MySQL查询缓冲区的大小,用来缓冲select的结果,并在下一次同样查询的时候不再执行查询而直接返回结果,根据Qcache_lowmem_prunes的大小,来查看当前的负载是否足够高,在数据库写入量或是更新量也比较大的系统,该参数不适合分配过大。进行排序查询时,MySQL会首先扫描一遍该缓冲,以避免磁盘搜索,提高查询速度,如果需要排序大量数据,可适当调高该值。来做MYISAM表全表扫描的缓冲大小,对表进行顺序扫描的请求将分配一个读入缓冲区,MySQL会为它分配一段内存缓冲区。最大连接(用户)数。

2301_82330629的博客 992

【SpringBoot 3.x 第43节】你还敢说 Spring 启动慢是“宿命”?Spring AOT 把启动剧本都提前写死了,你服不服?

🏆本文收录于《滚雪球学SpringBoot 3》,专门攻坚指数提升,本年度国内最系统+最专业+最详细(永久更新)。

**My Coding Family** 543

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

MySQL数据库的性能优化及自动化运维与Mysql高并发优化详细教程

首先,我们来看看DBA的具体工作,我觉得 DBA 真的很忙:备份和恢复、监控状态、集群搭建与扩容、数据迁移和高可用,这是我们 DBA 的功能。了解这些功能以后要对体系结构有更加深入的了解,你不知道怎么处理这些故障和投诉的事情。所以我们要去了解缓存/线程、SQL优化、存储引擎以及SQL审计以及锁与实务、体系结构更深一点,就去研究内核原理和源码定制,DBA有这么多工作,他们就像一个小怪兽一样等着我们去解决。今天我站在更加全面的角度跟大家分享一下我觉得我在这一年多DBA工作当中的经验,希望可以给大家带来启发和帮助

程序源日志的博客 1284

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

mysql8 重启命令_MySQL 8.0 有哪些特别好用的运维便捷命令?

有人说目前为止8.0是最好的版本,我们来看看在运维方面MySQL 8.0带来了哪些便捷命令。自MySQL 8.0 GA版本发布以来,MySQL生态发生了很大的变化,推出了很多功能 ,有人说目前为止8.0是最好的版本。随之而来的在运维方面带来了很多便捷命令。下面选出日常运维常用的最便捷的4个命令:RESTART,PERSIST,RETAIN CURRENT PASSWORD,EXPLAIN。REST...

weixin_42303079的博客 3977

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

运维笔记:MySQL SQL 命令图解

本文系统讲解MySQL SQL命令体系,涵盖DDL、DQL、DML等核心语法及优化策略。主要内容包括:1)SQL执行流程与SELECT语句执行顺序;2)DDL操作(建表、索引、约束)及表结构变更注意事项;3)DQL查询(JOIN类型、子查询、CTE)与执行计划分析;4)DML增删改操作优化;5)索引原理、失效场景及B-Tree结构;6)事务隔离级别与锁机制;7)SQL性能优化最佳实践,包括索引设计、查询重写和分页优化。特别强调通过EXPLAIN分析执行计划,避免常见性能陷阱,形成"编写-分析-优化

ececec12的博客 1057

简易mysql运维_MySQL 8.0 运维便捷命令

有人说目前为止8.0是最好的版本,我们来看看在运维方面MySQL 8.0带来了哪些便捷命令。自MySQL 8.0 GA版本发布以来,MySQL生态发生了很大的变化,推出了很多功能 ,有人说目前为止8.0是最好的版本。随之而来的在运维方面带来了很多便捷命令。下面选出日常运维常用的最便捷的4个命令:RESTART,PERSIST,RETAIN CURRENT PASSword,EXPLAIN。REST...

weixin_39575737的博客 357

MySQL实战——执行优化、运维优化、架构优化

目录前言执行优化为什么使用数据索引能提高效率认识影响结果集理解执行状态数据库异常分析流程执行优化总结 前言 本篇文章针对用户群为已经使用过 mysql 环境,并有一定开发经验的工程师。 针对高并发,海量数据的互联网环境。 本文语言为口语,非学术标准用语。 以实战和解决具体问题为主要目标,非应试,非常规教育。 非技术挑战,非高端架构师培训,请高手自动忽略。 友情提醒,在校生学习本教程可能对成绩提高有害无益。 文章部分内容来自 厦门游家公司(4399.com) 某位大佬写的内部培训分享手册。 如有侵权 立即

“实用”是软件压倒一切的要素 1029

MySQL 运维之日常运维篇 一

MySQL运维核心指南:监控预警与性能优化 摘要: 本文系统阐述了MySQL日常运维的关键要点,重点关注监控指标分析和性能问题解决方案。服务器层面需监控CPU使用率、I/O等待和内存使用情况,分别对应计算密集型、I/O密集型和内存不足三类问题。针对高CPU场景,提出终止异常会话、SQL优化和读写分离等措施;对于高I/O等待,推荐索引优化、缓冲池调整和存储升级方案;内存问题则需排查泄漏、调整配置和实施缓存策略。通过"监控→定位→优化→迭代"的闭环流程,实现数据库"稳、安、快&qu

qq_65380630的博客 1000

MySQL 基础运维

MySQL 基础运维技术MySQL部署MySQL日常运维MySQL性能优化SQL优化案例MySQL常见故障处理MySQL 基础语句练习 MySQL架构 连接层 SQL服务层 存储层 mysql分支:percona,mariadb MySQL查询语法顺序 ①SELECT ②FROM ③LEFT JOIN ④ON ⑤WHERE ⑥GROUP BY ⑦HAVING ⑧ORDER BY ⑨LIMIT docker run --name C7-MySQL --privileged=true -p 3307:3306

果子哥丶的博客 903

你真的知道运维是干嘛的吗?

如果你是一个好奇的读者、或者是互联网相关的工作人员、或者你本身是一个从事于互联网的运维或IT人员本身,但是你自己真的知道运维具体是干嘛的吗?从我潜水各个运维和IT的微信群里多年观察到的现象来看,岗位虽然都是运维,但是技术栈、技能水平和工资待遇都是属于多样化的(水平,能力,工资的关联性也没有很强,其中的关联性既不一定是正向趋势,也不一定是负向趋势)并且日常的聊天和解惑中,能看出其中大多数的人是存在着明显的所谓知识的诅咒的现象,知见障,或者说存在局限性。

漠效的博客 7286

运维人员 使用mysql必备技能的技术

一、MySQL 运维基础能力1.1 Linux 系统与网络服务在当今数字化时代,MySQL 数据库作为一款广泛应用的开源数据库管理系统,在各类应用中发挥着至关重要的作用。而对于运维人员来说,掌握 MySQL 运维技能是确保数据库稳定、高效运行的关键。在深入探讨 MySQL 运维技能之前,先让我们聚焦于 Linux 系统与网络服务,这是 MySQL 运维的基石。CentOS/RHEL 系统作为 Linux 家族中的重要成员,以其稳定性和强大的功能备受青睐。

浩特-ht的博客 1509

mysql运维常用命令

MySQL Community Server--------mysql的社区版本,开源、免费 MySQL Enterprise Edition---------mysql企业版,非免费 MySQL Cluster-----------------------mysql集群版本,开源、免费 目录 一、常用表结构及数据导入导出命令 二、mysql 修改用户密码 三、mysql 添加用户与授权访问 四、数据表优化 五、mysql备份还原 一、常用表结构及数据导入导出命令 导出数据库-表结.

zbx2010的专栏 361

MySQL数据库的性能优化及自动化运维实践与Mysql高并发优化经验

首先,我们来看看的具体工作,我觉得 DBA 真的很忙:备份和恢复、监控状态、集群搭建与扩容、数据迁移和高可用,这是我们 DBA 的功能。了解这些功能以后要对体系结构有更加深入的了解,你不知道怎么处理这些故障和投诉的事情。所以我们要去了解缓存/线程、、存储引擎以及SQL审计以及锁与实务、体系结构更深一点,就去研究内核原理和源码定制,DBA有这么多工作,他们就像一个小怪兽一样等着我们去解决。今天我站在更加全面的角度跟大家分享一下我觉得我在这一年多DBA工作当中的经验,希望可以给大家带来启发和帮助。

程序源日志的博客 777
上一篇: Socket 简单交互案例
下一篇: Mysql 锁
Mark_XC
博客等级 码龄9年 16粉丝 32原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值