为你自己学Redis
  • README
  • 安装
    • macos下安装redis
  • 第1章 构建Redis开发环境
    • 1.1 Redis概述
    • 1.2 了解必要的Docker技能
    • 1.3 安装和配置基于Docker的Redis环境
  • 第2章 实践Redis的基本数据类型
    • 2.1 Redis缓存初体验
    • 2.2 针对字符串的命令
    • 2.3 针对哈希类型变量的命令
    • 2.4 针对列表类型变量的命令
    • 2.5 针对集合的命令
    • 2.6 针对有序集合的命令
  • 第3章 实践Redis的常用命令
    • 3.1 键操作命令
    • 3.2 HyperLogLog相关命令
    • 3.3 lua脚本相关命令
    • 3.4 排序相关命令
  • 第4章 实践Redis服务器和客户端的操作
    • 4.1 Redis服务器管理客户端的命令
    • 4.2 查看Redis服务器的详细信息
    • 4.3 查看并修改服务器的常用配置
    • 4.4 多个客户端连接远端服务器
  • 第5章 Redis数据库操作实战
    • 5.1 切换数据库操作
    • 5.2 Redis事务操作
    • 5.3 地理位置相关操作
    • 5.4 位图数据类型的应用
    • 5.5 慢查询实战分析
  • 第6章 Redis数据持久化操作
    • 6.1 Redis持久化机制概述
    • 6.2 AOF持久化机制实战
    • 6.3 RDB持久化机制实战
    • 6.4 如何选用持久化方式
  • 第7章 搭建Redis集群
    • 7.1 搭建基于主从复制模式的集群
    • 7.2 搭建哨兵模式的集群
    • 7.3 搭建cluster集群
  • 第8章 GO整合MySQL与Redis
    • 8.1 GO通过redigo读写Redis
    • 8.2 Go与各种Redis数据类型
    • 8.3 Redis与MySQL的整合
    • 8.4 Redis缓存实战分析
  • 第9章 Redis应用场景与案例实现
    • 9.1 Redis消息队列实战
    • 9.2 Go实战Redis分布式锁
Powered by GitBook
On this page
  • 4.1.1 获取和设置客户端的名字
  • 4.1.2 通过CLIENT LIST命令查看客户端的信息
  • 4.1.3 通过CLIENT PAUSE命令暂停客户端的命令
  • 4.1.4 通过CLIENT KILL命令中断客户端连接
  • 4.1.5 通过SHUTDOWN命令关闭服务器和客户端
  1. 第4章 实践Redis服务器和客户端的操作

4.1 Redis服务器管理客户端的命令

4.1.1 获取和设置客户端的名字

  • CLIENT GETNAME

    • 功能:获取客户端的名字

  • CLIENT SETNAME

    • 语法:CLIENT SETNAME name

    • 功能:设置客户端的名字

例:

127.0.0.1:6379> CLIENT GETNAME
(nil)
127.0.0.1:6379> CLIENT SETNAME myName
OK
127.0.0.1:6379> CLIENT GETNAME
"myName"

4.1.2 通过CLIENT LIST命令查看客户端的信息

  • CLIENT LIST

    • 功能:查看当前所有连接到服务器的客户端信息

例:

127.0.0.1:6379> CLIENT LIST
id=3 addr=127.0.0.1:59254 laddr=127.0.0.1:6379 fd=8 name=myName age=6363 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=26 qbuf-free=40928 argv-mem=10 obl=0 oll=0 omem=0 tot-mem=61466 events=r cmd=client user=default redir=-1

其中:

属性
含义

id

客户端编号

addr

客户端地址

laddr

服务端地址

age

客户端的连接时长,单位:秒

idle

客户端的空闲时长,单位:秒

cmd

客户端最近执行的命令

user

登录到服务器用到的用户名

4.1.3 通过CLIENT PAUSE命令暂停客户端的命令

  • CLIENT PAUSE

    • 语法:CLIENT PAUSE timeout

    • 功能:若当前Redis服务器负载过大,可通过该命令暂停执行来自客户端的命令.其中timeout的单位为毫秒.服务端会在暂停的时长结束后再执行来自客户端的命令

例:暂停10s后执行命令

127.0.0.1:6379> CLIENT PAUSE 10000
OK
127.0.0.1:6379> SET name Peter
OK
(2.67s)

其中的2.67s表示该命令被暂停的时长

4.1.4 通过CLIENT KILL命令中断客户端连接

  • CLIENT KILL

    • 语法:CLIENT KILL [ip:port]

    • 功能:中断指定的客户端连接

例:

查看当前所有连接

127.0.0.1:6379> CLIENT LIST
id=3 addr=127.0.0.1:59254 laddr=127.0.0.1:6379 fd=8 name=myName age=6919 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=26 qbuf-free=40928 argv-mem=10 obl=0 oll=0 omem=0 tot-mem=61466 events=r cmd=client user=default redir=-1
id=4 addr=127.0.0.1:46400 laddr=127.0.0.1:6379 fd=9 name= age=20 idle=20 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 argv-mem=0 obl=0 oll=0 omem=0 tot-mem=20496 events=r cmd=command user=default redir=-1
id=5 addr=127.0.0.1:40846 laddr=127.0.0.1:6379 fd=10 name= age=2 idle=2 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 argv-mem=0 obl=0 oll=0 omem=0 tot-mem=20496 events=r cmd=command user=default redir=-1

注:此处通过docker exec -it myFirstRedis /bin/bash进入容器后,再执行redis-cli,即可再创建一个客户端连接

中断IP为127.0.0.1,端口为46400的连接:

127.0.0.1:6379> CLIENT KILL 127.0.0.1:46400
OK
127.0.0.1:6379> CLIENT LIST
id=3 addr=127.0.0.1:59254 laddr=127.0.0.1:6379 fd=8 name=myName age=7040 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=26 qbuf-free=40928 argv-mem=10 obl=0 oll=0 omem=0 tot-mem=61466 events=r cmd=client user=default redir=-1
id=5 addr=127.0.0.1:40846 laddr=127.0.0.1:6379 fd=10 name= age=123 idle=123 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 argv-mem=0 obl=0 oll=0 omem=0 tot-mem=20496 events=r cmd=command user=default redir=-1

在被中断的客户端中执行命令:

127.0.0.1:6379> CLIENT LIST
Error: Server closed the connection

可以看到,该客户端的连接已经被中断了

注:该命令只是中断客户端的链接,并不是中断服务器本身的服务

4.1.5 通过SHUTDOWN命令关闭服务器和客户端

  • SHUTDOWN

    • 功能:终止服务端上的所有连接并终止服务端

例:

127.0.0.1:6379> SHUTDOWN
not connected>
Previous第4章 实践Redis服务器和客户端的操作Next4.2 查看Redis服务器的详细信息

Last updated 1 year ago