运维 mysql、redis 、RocketMQ性能排查

news/2024/12/20 1:01:52/

MySQL查看数据库连接数

1. SHOW STATUS命令-查询当前的连接数

MySQL 提供了一个 SHOW STATUS 命令,可以用来查看服务器的状态信息,包括当前的连接数。

SHOW STATUS LIKE 'Threads_connected';

这个命令会返回当前连接到服务器的线程数,即当前的数据库连接数。

2. 查看information_schema数据库-查看当前所有活动连接的信息。

information_schema 是 MySQL 的一个系统数据库,它包含了数据库的元数据。通过查询 information_schema 中的 PROCESSLIST 表,可以查看当前所有活动连接的信息。

SELECT * FROM information_schema.PROCESSLIST;

这个查询会列出所有当前活动的连接,包括每个连接的 ID、用户、客户端地址、执行的查询等信息。

3. SHOW PROCESSLIST命令-返回当前所有活动连接的列表

SHOW PROCESSLIST 命令与查询 information_schema.PROCESSLIST 表的效果类似,它直接返回当前所有活动连接的列表。

SHOW PROCESSLIST;

4. max_connections -查看最大连接数

除了查看当前的连接数,你可能还想知道数据库配置的最大连接数。这可以通过查看 max_connections 状态变量来实现。

SHOW VARIABLES LIKE 'max_connections';

5. performance_schema - 使用性能模式

MySQL 的性能模式(Performance Schema)提供了更详细的性能监控信息,包括数据库连接的统计信息。要启用性能模式,你需要确保它已经启动,然后可以查询相关的表。

-- 启用性能模式
SET GLOBAL performance_schema = ON;-- 查询连接统计信息
SELECT * FROM performance_schema.data_locks;

6. 查看死锁

SHOW OPEN TABLES命令可以显示当前所有被打开的表。当表被锁住时,该表将被显示为Locked状态。

SHOW OPEN TABLES;

执行上述命令后,将会返回一个结果集,其中包含了当前所有被打开的表的信息。如果某个表被锁住了,你将会在结果集中找到该表,并且在Type列中的值为表锁定的类型(例如,READ或WRITE)

查询进程:

show processlist;

查看正在锁的事务:

select * from information_schema.innodb_locks;

查看等待锁的事务:

select * from information_schema.innodb_locks_w

7. 数据库解锁所有的表

 unlock tables;

Redis 客户端常见命令

redis_69">1. info clients 可以查看当前的redis连接数

使用 INFO 命令可以让你知道当前的连接数(connected_clients),以及配置文件中设置的最大连接数(maxclients)。

redis-cli info clients

如果是在reids的客户端下命令中就去掉 redis-cli

这个命令会输出类似客户端的连接这样的信息:

connected_clients:30
cluster_connections:30
blocked_clients:0
tracking_clients:0
clients_in_timeout_table:0
maxclints:10000
connected_clients:3
  • CLIENT LIST redis查看详细连接
  • CLIENT LIST 获取客户端列表
  • CLIENT SETNAME 设置当前连接点redis的名称
  • CLIENT GETNAME 查看当前连接的名称
  • CLIENT KILL ip:port 杀死指定连接

2. maxclients -最大连接数调整

config get maxclients 可以查询redis允许的最大连接数

配置文件方式修改最大连接数

127.0.0.1:6379> CONFIG GET maxclients##1) "maxclients"##2) "10000"
127.0.0.1:6379>

Redis配置文件调整maxclients参数
如果你发现现有的连接数接近或者达到了最大连接数限制,你可以在Redis的配置文件 redis.conf 中调整 maxclients 的值。
记得这个值应该在你的服务器可以接受的范围内,不要超过服务器的负载能力。

maxclients 10000

重新加载Redis配置
修改完配置文件后,需要重新加载让它生效。可以使用以下命令:

redis-cli -p <port> CONFIG RELOAD

或者重启Redis服务:

你就调整了Redis的最大连接数。但是,记得做任何配置更改前先评估你的服务器,以确保它可以处理更多的连接。

redis_125">config set maxclients num 可以设置redis允许的最大连接数

127.0.0.1:6379> CONFIG set maxclients 10
OK
127.0.0.1:6379>

redisservicemaxclients_100000_132">启动redis.service服务时加参数–maxclients 100000来设置最大连接数限制

redis-server --maxclients 100000 -f /etc/redis.conf

3. 合理设置超时时间:

在 Redis 的配置文件 redis.conf 中,你可以找到 timeout 项来设置这个值:

timeout 300

这里的设置意味着如果客户端连接空闲了 300 秒,就会被自动断开。如果你将其设置为 0,就表示禁用自动断开功能。

redis__147">4.查看redis 版本

redis__149">5.redis 启动

./redis-server ../redis.conf    
(1) ./redis-server --version

客户端输入INFO命令
在这里插入图片描述


http://www.ppmy.cn/news/1556521.html

相关文章

推送本地仓库到远程git仓库

目录 推送本地仓库到远程git仓库1.1修改本地仓库用户名1.2 push 命令1.3远程分支查看 推送本地仓库到远程git仓库 删除之前的仓库中的所有内容&#xff0c;从新建库&#xff0c;同时创建一个 A.txt 文件 清空原有的远程仓库内容&#xff0c;重新创建一个新的仓库&#xff0c;…

[x86 ubuntu22.04]投影模式选择“只使用外部”,外部edp屏幕无背光

1 问题描述 CPU&#xff1a;G6900E OS&#xff1a;ubuntu22.04 Kernel&#xff1a;6.8.0-49-generic 系统下有两个一样的 edp 屏幕&#xff0c;投影模式选择“只使用外部”&#xff0c;内部 edp 屏幕灭&#xff0c;外部 edp 屏幕无背光。DP-1 是外部 edp 屏幕&#xff0c;eDP-1…

Redis内存淘汰策略有哪些

Redis内存淘汰策略有哪些 简单来说&#xff1a; volatile-lru&#xff08;least recently used&#xff09;&#xff1a;从已设置过期时间的数据集&#xff08;server.db[i].expires&#xff09;中挑选最近最少使用的数据淘汰 volatile-ttl&#xff1a;-------------------要…

Web安全攻防入门教程——hvv行动详解

Web安全攻防入门教程 Web安全攻防是指在Web应用程序的开发、部署和运行过程中&#xff0c;保护Web应用免受攻击和恶意行为的技术与策略。这个领域不仅涉及防御措施的实现&#xff0c;还包括通过渗透测试、漏洞挖掘和模拟攻击来识别潜在的安全问题。 本教程将带你入门Web安全攻…

ubuntu server 安装

1 获取ubuntu https://ubuntu.com/download/server 2 安装ubuntu 详细教程查看视频&#xff1a; ubunut server 安装_哔哩哔哩_bilibili

如何搭建政务服务网站?政务服务网站包含哪些内容?

政务网致力于向公众提供政府工作的相关信息、政策法规的公开和解读,促进政府与公众之间的沟通与互动。公众可以随时随地通过网站了解到当地政府工作的政策方向、政策公告、行政许可和公共服务等相关信息。 一、在政府网站的建设中&#xff0c;有几个关键方面需要重点关注&#…

Sql注入(靶场)14-20关

第十四关 跟上面一样闭合换成" 第一步查询库名 " and updatexml(1,concat(1,(select database())),1)# 第二步查询表名 " and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schemasecurity)),1)# 第…

LLM模型的generate和chat函数区别

在 Hugging Face 的 transformers 库中&#xff0c;GPT&#xff08;Generative Pre-trained Transformer&#xff09;类的模型有两个常用的生成文本的方法&#xff1a;generate 和 chat。这两个方法在使用上有一些区别。通常公司发布的 LLM 模型会有一个基础版本&#xff0c;还…