1.使用iftop可以查看网络使用情况,安装: yum install iftop iftop -n 2.使用iotop可以查看磁盘io使用情况,安装: yum install iotop iotop...按p键可以将TID变为PID,按o键可以将当前活跃的显示出来而不是显示所有进 3.监控io性能 iostat -x 磁盘使用
今天听到看部门同事有遇到IO过高的问题 , 简单的查询了下 ? iostat命令: %user:CPU处在用户模式下的时间百分比。 %nice:CPU处在带NICE值的用户模式下的时间百分比。...因此基本思路就是: 尽量避免磁盘的随机IO , 尽量利用磁盘预读缓存 , 利用局部性原理 尽可能地顺序读写一个文件 单进程读写硬盘 避免对大目录操作 把小文件的读写转换为大文件的写
在文件系统中,MySQL将每个数据库保存为数据目录下的一个子目录。创建表时,MySQL会在数据库子目录下创建一个和表同名的.frm文件保存表的定义。...例如创建一个名为MyTable的表,MySQL会在MyTbale.frm文件中保存该表的定义。可以使用SHOW TABLE STATUS命令显示表的相关信息。...Data_free:在MySQL 中是文件系统中未使用空间的值。换句话说,分配给表或分区但当前未被数据使用的空间量。它指示操作系统或 MySQL 服务器可能回收但尚未释放的空间量,也叫做数据碎片。
MySQL性能优化-查看执行慢的SQL语句 查看执行慢的SQL语句,需要先开启慢查询日志 默认情况下,MySQL数据库没有开启慢查询日志 慢日志常用配置项 #是否启用慢查询日志 slow_query_log...= ON #指定慢查询日志文件位置及名称 slow_query_log_file = /var/lib/mysql/my-slow.log #慢查询执行时间阈值,超过此时间会记录,默认为10,单位为s...show variables like '%slow_query_log%'; 查看慢查询日志存放文件位置 show variables like '%slow_query_log%'; 查看long_query_time...阈值 show variables like '%long_query_time%'; 修改配置文件配置慢日志 #使用vi编辑器编辑mysql配置信息 vi /etc/my.cnf #设置以下配置项:...#是否启用慢查询日志 slow_query_log = ON #指定慢查询日志文件位置及名称 slow_query_log_file = /var/lib/mysql/my-slow.log #慢查询执行时间阈值
监控io性能: iostat -x 百分比监控磁盘负载 iotop 如果没有这个命令 可以 yum install -y iotop 安装 iotop 查看 io 的性能使用 主要关注 io 的百分之是否使用过高...free命令(查看内存使用): 总内存 = 使用中内存+剩余内存+buff/cache available 包含了 free 和buff/cache 剩余的部分 free 查看内存使用情况 单位=kb...free -h 直观的查看内存使用情况 -h = 给内存加上具体的单位 ps命令: ps aux 把当前的所有进程用静态方式显示出来 我们主要关注 STAT 列 D 不能中断的进程 R run状态的进程...当我们想要强制关闭一个进程时就需要使用到这个 命令:kill 加上进程 PID 下面的数字就可以强制关闭进程 ps aux | grep 加上进程具体的名字 监控网络状态: netstat -lnp 查看监听端口...(主要关注有哪些端口被监听) netstat -an 查看系统的网络连接状况 netstat -an | awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print
笔记内容: l 10.6 监控io性能 l 10.7 free命令 l 10.8 ps命令 l 10.9 查看网络状态 l 10.10 linux下抓包 笔记日期:2017.8.25 10.6 监控...io性能 ?...磁盘的io是一个非常重要的指标,所以要更详细的查看磁盘状态,需要用到iostat命令,如果之前已经安装了sysstat包的话,在安装sysstat包时iostat命令就已经被安装了。 ...sar -b也能够查看磁盘信息: ? iostat重要的是-x选项,能够显示%util这个指标,这个指标表示CPU等待磁盘io的百分比,如果这个百分比很大就表示磁盘io很忙。...netstat -lnp命令可以查看监听端口: ? netstat -an 可以查看系统所有的网络连接状况: ? netstat -lntp只查看tcp的: ? 只查看udp的就加上u: ?
查看索引 mysql> show index from tblname; mysql> show keys from tblname; · Table 表的名称。...在MySQL中,有值‘A’(升序)或NULL(无分类)。 · Cardinality 索引中唯一值的数目的估计值。通过运行ANALYZE TABLE或myisamchk -a可以更新。...基数越大,当进行联合时,MySQL使用该索引的机 会就越大。 · Sub_part 如果列只是被部分地编入索引,则为被编入索引的字符的数目。如果整列被编入索引,则为NULL。
使用异步 I/O使用异步 I/O 技术,如 aio,提高 I/O 操作的并发性能。5....监控和日志记录 I/O 使用情况 定期记录磁盘 I/O 使用情况:while true; do iostat -x 1 1 >> /var/log/io_usage.log sleep...60 done解释:这个脚本会每分钟记录一次 iostat 命令的输出,将结果写入 /var/log/io_usage.log 文件中,方便后续分析。...使用 dstat 命令 记录和查看系统活动报告:dstat -cdngy 1 10解释:dstat -cdngy 1 10 命令会每秒记录一次磁盘 I/O、CPU、网络、系统和磁盘使用情况,共记录10次
监控系统状态 iostat -x 磁盘使用 iotop 磁盘使用 查看磁盘使用情况 在运维工作中,除了查看CPU和内存之外,磁盘的io也是非常重要的一个指标 有时候,CPU和内存有内存,但系统负载就是很高...,我们用vmstat命令查看到 b 列或者是 wa 列 较大,这时候就说明磁盘有瓶颈,那么我们就需要更详细的查看磁盘的状态 iostat命令 iostat命令,在查看系统输入输出设备和CPU的使用情况...等待,就是说你这个磁盘有多少时间占用你CPU的 这个CPU有一部分是留给进程处理计算的,还有一部分时间是等待io的,等待磁盘读写的,这个就是一个百分比 若这个占比达到百分之五六十,就说明这个磁盘io处理太差了...硬盘很慢的话,则必然会影响系统性能。那么即使CPU运行速度再快,硬盘跟不上,那么始终会存在瓶颈。...[root@localhost ~]# iotop命令 在发现磁盘io很忙、很频繁的时候,要想知道是哪一个进程在频繁的读写呢?
线上mysql数据库爆出一个慢查询,DBA观察发现,查询时服务器IO飙升,IO占用率达到100%, 执行时间长达7s左右。...从100%降到不到1% 在SSD机器上测试,优化前大约需要7s,优化后第一条0.3s,第二条0.1s,优化后执行速度是原来的10倍以上,IO从100%降到不到1% 可以看出,优化前磁盘io是性能瓶颈,SSD...【理论分析】 MySQL在执行SQL查询时可能会用到临时表,一般情况下,用到临时表就意味着性能较低。...表的设计原则 使用临时表一般都意味着性能比较低,特别是使用磁盘临时表,性能更慢,因此我们在实际应用中应该尽量避免临时表的使用。...使用explain查看执行计划,Extra列看到Using temporary就意味着使用了临时表。
登录该服务器后通过 iostat -x 1 10 查看了相关磁盘使用信息。...由上图可知,vdb磁盘的 %util【IO】几乎都在100%,原因是频繁的读取数据造成的。...await:平均每次IO请求等待时间。(包括等待队列时间和处理时间,毫秒为单位) r_await:平均每次IO读请求等待时间。...通过这个命令可以看见比较详细信息,如:进程号,磁盘读取量,磁盘写入量,IO百分比,涉及到的命令是什么「两个都是 grep 命令造成的IO读取量大」。...可见其中 grep 命令占用了大量的读IO,之后可根据 PID 查看相关进程信息。 说明:本图与上图的PID不同,原因是上图涉及的进程执行完了,本图是之后执行产生的进程【都执行的同一个脚本】。
前言 如需查看MySQL的登录日志,首先要确认开启了general_log general_log会记录所有的SQL操作,一般不建议开启。...内容 查看general_log日志是否开启和存放目录 show global variables like '%general%'; 默认是以文件输出的,不输出到表格中。...查看登录日志信息 tail -f xxxxxx.log | grep "Connect" 开启general_log set global general_log=on;
记一次linux下较重要的几项负载信息查看方式 1.cpu、memory负载 root@test:~$ top #top命令,可以查看 cpu 及 memory 的使用及负载情况 top - 09:34...:32.65 rcu_sched 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh 在top下按“1”查看...CPU核心数量,shift + p :按cpu使用率大小排序,shif + m 按内存使用率高低排序 2.io负载 root@test:~$ iostat -x #iostat 命令可以查看io负载情况
对于IO模型的优化进程,一是操作系统的支持,减少系统调用,用户态与内核的切换;二是机制的变换,从命令式到响应性的转变 ---- 高性能架构 只温习Socket/IO知识太无趣了,我们要温故知新,升华一下...站在架构师的角度,当然需要特别关注高性能架构的设计。高性能架构设计主要集中在两方面: 1.尽量提升单服务器的性能,将单服务器的性能发挥到极致。2.如果单服务器无法支撑性能,设计服务器集群方案。...答:因为 Netty 采用了 Reactor 模式 问题 2:为什么用了 Reactor 模式性能就高? 答:因为 Reactor 模式是基于 IO 多路复用的事件驱动模式。...问题 3:为什么 IO 多路复用性能高? 答:因为 IO 多路复用既不会像阻塞 IO 那样没有数据的时候挂起工作线程,也不需要像非阻塞 IO 那样轮询判断是否有数据。...第三,工作线程没有 IO 操作的时候可以做其他事情,能够大大提升系统的整体性能。
裸设备 raw device 磁盘I/O性能评判标准 正常情况下,svctm应该是小于await值的,而svctm的大小和磁盘性能有关,CPU、内存的负荷也会对svctm值造成影响,过多的请求也会间接导致...如果svctm的值与await很接近,表示几乎没有I/O等待,磁盘性能很好。...“vmstat –d”命令组合 通过“vmstat –d”命令组合也可以查看磁盘的统计数据。...24-3-centos ~]# vmstat -d 3 2 disk- ------------reads------------ ------------writes----------- -----IO...632 22 0 0 0 0 0 0 [root@VM-24-3-centos ~]# 显示了磁盘的reads、writes和IO
下面会用到information_schema的tables来进行统计,首先进入 use information_schema; 查看data_length : 记录表的大小(单位字节) select...concat(round(sum(data_length/1024*1024*1024),2),'G') as data from tables; 查看表的大小,按指定的库名和表名 select concat...DATA_LENGTH/1024*1024*1024),2),'G') as data from TABLES where table_schema='库名' and table_name='表名'; 查看指定的数据库大小...select concat(round(sum(DATA_LENGTH/1024*1024*1024),2),'G') as data from TABLES where table_schema='库名'; 查看所有表大小并排序
# 1.查看所有数据库容量大小 select table_schema as '数据库', sum(table_rows) as '记录数', sum(truncate(data_length/1024...information_schema.tables group by table_schema order by sum(data_length) desc, sum(index_length) desc; # 2.查看所有数据库各表容量大小...2) as '索引容量(MB)' from information_schema.tables order by data_length desc, index_length desc; # 3.查看...index_length/1024/1024, 2)) as '索引容量(MB)' from information_schema.tables where table_schema='demo'; # 4.查看
一般使用iostat命令监控I/O性能 1.iostat命令可用参数列表: OPTIONS -c Display the CPU utilization report.
服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型。...接下来,我们详细分析四种常见的IO模型的实现原理。为了方便描述,我们统一使用IO的读操作作为示例。 一、同步阻塞IO 同步阻塞IO模型是最简单的IO模型,用户线程在内核进行IO操作时被阻塞。 ?...相比于IO多路复用模型,异步IO并不十分常用,不少高性能并发服务程序使用IO多路复用模型+多线程任务处理的架构基本可以满足需求。...本文从基本概念、工作流程和代码示例三个层次简要描述了常见的四种高性能IO模型的结构和原理,理清了同步、异步、阻塞、非阻塞这些容易混淆的概念。...通过对高性能IO模型的理解,可以在服务端程序的开发中选择更符合实际业务特点的IO模型,提高服务质量。希望本文对你有所帮助。
1、磁盘IO总的统计信息:vmstat -D 2、vmstat -d //每个磁盘的读写统计 image.png wa等待IO image.png 3、iostat -d image.png...4、iostat -x 更详细的统计信息 image.png 5、sar -d也可以查看 6、lsof +D /usr/bin //查看目录下的所有文件被哪些程序调用 image.png...7、strace -c -p pid 查看进程的读写IO,时间等 strace -tt ..../perf //查看程序的执行过程,-tt时间