我们经常会使用Explain去查看执行计划,这个众所周知。但我在面试时问面试者,你用Explain主要是看什么?对方的回答大多是“查看是否有使用到索引”,很显然我对这个回答不太满意。...(1分钟系列)》、《如何利用工具,迅猛定位低效SQL? | 1分钟系列》 测试的MySQL版本为InnoDB 5.7.22
在上一篇中 如何使用慢查询快速定位执行慢的 SQL?...比如想要对comment_id=500000 或者user_id=500000的数据进行查询,数据表中 comment_id 为主键,user_id 是普通索引,我们可以查看下执行计划: EXPLAIN...比如我们想要对user_id=500000的评论进行查询,使用 EXPLAIN 查看执行计划: EXPLAIN SELECT comment_id, comment_text, user_id FROM...假设我们对product_comment表和 usre 表进行联查,关联条件是两张表的 user_id 相等,使用 EXPLAIN 进行执行计划查看: EXPLAIN SELECT * FROM product_comment...我们在查看执行计划的时候,通常希望执行计划至少可以使用到 range 级别以上的连接方式,如果只使用到了 all 或者 index 连接方式,我们可以从 SQL 语句和索引设计的角度上进行改进。
如何在ClickHouse中查看SQL的执行计划? 这也是很多朋友经常会提到的问题,今天就尝试解答这个高频问题。...例如,执行下面的语句,就能看到相应SQL的执行计划: clickhouse-client -h ch7.nauu.com --send_logs_level=trace 执行计划: Union Expression × 2 Expression MergeTreeThread 这条查询使用了2个线程执行,并最终通过Union合并了结果集...ranges 所以,最终需要读取到内存的预估数据量,现在只需要65536行(8192 * 8): Reading approx. 65536 rows with 2 streams ---- 现在你知道如何查看分析日志了吗
查看表索引:show index from user_member;##查看表索引 ?...使用explain命令查看query语句的性能: EXPLAIN select * from user_feedback;##查看执行计划中的sql性能 ? ?...第一个查询是全表扫描,第二个是索引扫描: 区别在于type:all是全表扫描 index 通过索引扫描 或者在查询中输入需要查看执行计划的语句,点击执行,然后点击解释。...选择解释标签,就可以查看到sql的执行计划了 ?...mysql需要进行额外的步骤来发现如何对返回的行排序。它根据连接类型以及存储排序键值和匹配条件的全部行的行指针来排序全部行。
我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。...(QEP:sql生成一个执行计划query Execution plan) mysql> explain select * from user; expain出来的信息有10列,分别是id、select_type...EXPLAIN不考虑各种Cache • EXPLAIN不能显示MySQL在执行查询时所作的优化工作 • 部分统计信息是估算的,并非精确值 • EXPALIN只能解释SELECT操作,其他操作要重写为SELECT后查看执行计划
如何查询 SQL 执行频率 关于查询 SQL 执行频率,我们可以使用 show global status like 'Com___',(这后边是 7 个下划线),这条命令可以显示当前数据库中增删改查等各个语句的使用次数...show prifile for query id 查看具体各个阶段的耗时 这两条命令结合在一起,可以明确告诉我们这条 SQL 在执行中,到底耗时在那一步,比如是某个子查询或者 Server 层数据传输等具体原因...得出时间消耗在那个环节之后,我们便可以使用具体的执行计划来进行针对性的优化,下边着重介绍一下关于 SQL 执行计划的使用。...要想查看是哪个函数,可在 EXPLAIN 语句之后紧跟一个 SHOW WARNING 语句。 rows MySQL 估算会扫描的行数,数值越小越好。...以上就是关于 explain 执行计划结果中的字段说明,具体的含义很多都是我从官网直接拿过来的,比较枯燥,当然也不需要你死记硬背,只要你在 SQL 优化过程中,有意识的使用 explain 分析它的执行计划
这里所谓的Linux版本信息,包括Linux内核版本信息和Linux系统版本信息。...下面分别介绍 >>> (笔者在Ubuntu12.04中进行操作并截图如下) 一、查看Linux内核版本信息 方法1:登陆Linux,在终端输入 cat /proc/version 方法2:登陆Linux...,在终端输入 uname -a 方法3:登陆Linux,在终端输入 uname -r 二、查看Linux系统版本信息 方法1:登陆Linux,在终端输入 cat /etc/issue 方法2:登陆...而我们使用命令 uname -a 的信息就是从该文件获取的,当然用 cat /proc/version 方法直接查看它的内容也可以达到同等效果。...另外,加上参数”-a”是获得详细信息,如果不加参数为查看系统名称。
在服务器的日常使用中,有时候会遇到某些端口被占用的情况发生,那么怎么查看端口被占用了呢? 下面简单介绍一下使用命令,可以参考端口被占用的情况。及时解决端口被占用的问题。...方法一: 1.先用ps -ef | grep xxx(某个进程),可以查看某个进程的pid。 2.再用netstat -anp | grep pid号,可以查看到该进程占用的端口号!...方法二: 直接用lsof命令可以查看端口使用情况! 常用命令: 1,lsof -i:端口号 2,netstat -tunlp|grep 端口号 这两个命令都可以查看端口被什么进程占用。
本文链接:https://blog.csdn.net/weixin_40313634/article/details/101630426 查看端口占用 $: netstat -anp | grep 8888
du命令 参考文章:how to check directory size in Linux 用于显示目录或文件的大小。...显示当前目录文件或者文件占用空间:du 显示指定文件或文件夹的大小:du test.txt 方便阅读的格式查看目录所占空间情况:du -h test 仅显示当前文件夹的总计:du -s * 以方便阅读的方式查看指定目录层级的空间占用情况...:du -lh --max-depth=1 du命令排序 查看目录大小的命令是du(当然也可以查看文件大小),例如:du ems_data,就是查看ems_data目录下各子目录的大小;du,就是查看当前目录下各子目录的大小...;du *,就是查看当前目录下各子目录和文件的大小。...为了提高查看效果,我们需要对结果进行排序,因为du的命令结果很乱,例如: 从大到小排列:du ems_data | sort -nr 按目录名排列:du ems_data | sort +1 -2 选出排在前面的
前言 使用explain命令可以查看一条查询语句的执行计划,这篇文章记录一下查询计划的各个属性的值极其含义. ? 那么我们按照图中的顺序逐个字段的看一下....5 UNION 出现在union后的查询语句中 6 UNION RESULT 从UNION中获取结果集,例如上文的第三个例子 table 查询的数据表,当从衍生表中查数据时会显示 x 表示对应的执行计划
标准内核与Linux发行版(如redhat)内核的区分 见下面的描述(摘自:https://www.kernel.org/releases.html) Distribution kernels Many...Linux distributions provide their own “longterm maintenance” kernels that may or may not be based on
Linux下如何查看版本信息, 包括位数、版本信息以及CPU内核信息、CPU具体型号等等,整个CPU信息一目了然。 ...1、# uname -a (Linux查看版本当前操作系统内核信息) Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:54:28 EST...2003 i686 athlon i386 GNU/Linux 2、# cat /proc/version (Linux查看当前操作系统版本信息) Linux version 2.4.20...Hat Linux release 9 (Shrike) 4、# cat /proc/cpuinfo (Linux查看cpu相关信息,包括型号、主频、内核信息等) processor ...查看版本说明当前CPU运行在32bit模式下, 但不代表CPU不支持64bit) Linux查看版本说明当前CPU运行在32bit模式下 6、# lsb_release -a
Linux系统中如何查看Tomcat端口?本篇文章为大家分享一下Linux系统中查看Tomcat端口的具体方法,有需要的朋友可以参考一下。...分别执行命令: ps -ef| grep tomcat sudo netstat -apn | grep 7507 # 进程ID根据上条命令查看 如图:
查看Linux版本 cat/etc/issue Linaro 12.07 \n \l 2....查看内核版本 1)cat/proc/version Linux version 2.6.38-13-generic(buildd@rothera) (gcc version 4.5.2 (Ubuntu/...Linaro 4.5.2-8ubuntu4)) #57-Ubuntu SMP Mon Mar 5 18:10:14 UTC 2012 Linux version 3.4.29+ (ubuntu@linux-server...ubuntu 2.6.38-13-generic#57-Ubuntu SMP Mon Mar 5 18:10:14 UTC 2012 i686 i686 i386GNU/Linux Linux ubuntu...print the kernelrelease 查看内核发行版本 -v, –kernel-version print the kernelversion 查看内核版本 -m, –machine print
今天iptables居然不能使用了,赶紧查看了一下Linux版本了。居然更新到了CentOS7。...这里分享下查看命令: cat /etc/redhat-release cat /etc/centos-release 或者 rpm -q redhat-release rpm -q centos-release...:systemctl is-enabled firewalld.service 查看已启动的服务列表:systemctl list-unit-files|grep enabled 查看启动失败的服务列表...:systemctl --failed 3.配置firewalld-cmd 查看版本: firewall-cmd --version 查看帮助: firewall-cmd --help 显示状态: firewall-cmd...--state 查看所有打开的端口: firewall-cmd --zone=public --list-ports 更新防火墙规则: firewall-cmd --reload 查看区域信息: firewall-cmd
下面我将在Linux中查看Nginx是否启动的过程记录,分享出来。...工具/原料 Linux Nginx 通过进程判断 第一种方法:查看进程列表并过滤 Linux每个应用运行都会产生一个进程,那么我们就可以通过查看...第二种方法:直接查看进程id ps -C nginx -o pid 这种直接返回pid的方式比较适合跟其他程序结合使用,比如在shell/python脚本中执行这个命令拿到pid,让后根据pid来判断
Linux中如何查看ssh版本?ssh是系统的安全外壳协议,已发展了好几个版本,本篇文章重点为大家讲解一下Linux下查看ssh版本具体方法。...用文本编辑器打开/etc/ssh/sshd_config,并且查看”Protocol”字段。 如果如下显示,就代表服务器只支持SSH2。...具体说来,就是强制ssh使用特定的SSH协议,接着我么查看SSH服务器的响应。
我们在 Linux 下进行开发时,有时也需要知道当前的硬件信息,比如:CPU几核?使用情况?内存大小及使用情况?USB设备是否被识别?等等类似此类问题。下面良许介绍一些常用的硬件查看命令。...SMC9514 Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub lsscsi lsscsi 可以列出诸如硬盘/光驱等...0 184M 0% /run/user/1001 tmpfs 184M 0 184M 0% /run/user/1000 free free命令可以查看系统中使用的
所以这个过程中日志查看是很用的,我们项目一般部署在Linux环境,所以对于查看日志,也是需要了解熟悉Linux的相关命令才能查看的。...本文将详细介绍如何在Linux环境下查看Java项目的日志文件,关于tail命令的用法,同时推荐快捷方便的工具。1....使用命令行工具查看日志定位到项目日志文件,就可以进行查看了,可以是vim命令打开文件,但是日志文件一般很大,所以Linux提供了多种命令行工具来查看和操作文件,包括查看日志文件。...但是这些都是在Linux服务器进行操作的,一不小心容易出错,所以推荐一个小工具NppFTP,可以直接在notepad安装插件,安装完成直接就可以在Windows系统查看文件一言查看日志。...总结总的来说,日志查看是每个程序必备的技能。在Linux环境下查看Java项目的日志文件需要了解日志文件的位置和如何使用命令行工具、文本编辑器或专门的日志查看工具来查看和解析它们。
领取专属 10元无门槛券
手把手带您无忧上云