上一篇
凌晨2点,电商平台的秒杀活动突然出现页面加载缓慢的问题,运维工程师小李迅速打开终端,通过几行Redis命令快速定位到是热门商品库存缓存出现了异常,这种关键时刻,熟练的Redis命令行操作就像一把瑞士军刀,能快速解决问题,本文将带你全面掌握Redis服务器的登录连接和核心命令操作,让你也能拥有这样的"超能力"。
当Redis服务安装在本机时,连接非常简单:
redis-cli
这个命令会默认尝试连接127.0.0.1的6379端口(Redis默认配置),看到0.0.1:6379>
提示符,说明已经成功连接。
要连接远程Redis服务器,需要指定主机和端口:
redis-cli -h your_redis_host -p 6379
如果服务器设置了密码保护,连接时需要认证:
redis-cli -h your_redis_host -p 6379 -a yourpassword
注意:直接在命令行显示密码不安全,生产环境建议先连接再认证
更安全的做法是先连接,再通过AUTH命令认证:
redis-cli -h your_redis_host -p 6379 127.0.0.1:6379> AUTH yourpassword OK
连接后,首先可以检查服务器状态:
0.0.1:6379> PING PONG
这个简单命令可以测试连接是否正常。
查看服务器信息:
0.0.1:6379> INFO
这会返回大量服务器信息,可以配合特定参数获取特定部分:
0.0.1:6379> INFO memory # 查看内存信息 127.0.0.1:6379> INFO clients # 查看客户端连接信息
Redis是键值存储,键操作是基础:
# 设置键值 127.0.0.1:6379> SET username "张三" OK # 获取键值 127.0.0.1:6379> GET username "张三" # 检查键是否存在 127.0.0.1:6379> EXISTS username (integer) 1 # 设置过期时间(秒) 127.0.0.1:6379> EXPIRE username 3600 (integer) 1 # 查看剩余生存时间 127.0.0.1:6379> TTL username (integer) 3598 # 删除键 127.0.0.1:6379> DEL username (integer) 1
# 设置多个键值 127.0.0.1:6379> MSET age 30 city "北京" OK # 获取多个键值 127.0.0.1:6379> MGET age city 1) "30" 2) "北京" # 数值增减 127.0.0.1:6379> INCR age (integer) 31 127.0.0.1:6379> DECR age (integer) 30
适合存储对象:
# 设置哈希字段 127.0.0.1:6379> HSET user:1000 name "李四" age 28 (integer) 2 # 获取所有字段 127.0.0.1:6379> HGETALL user:1000 1) "name" 2) "李四" 3) "age" 4) "28" # 获取单个字段 127.0.0.1:6379> HGET user:1000 name "李四"
# 从左侧插入 127.0.0.1:6379> LPUSH tasks "写报告" (integer) 1 127.0.0.1:6379> LPUSH tasks "开会" (integer) 2 # 从右侧插入 127.0.0.1:6379> RPUSH tasks "发邮件" (integer) 3 # 获取列表范围 127.0.0.1:6379> LRANGE tasks 0 -1 1) "开会" 2) "写报告" 3) "发邮件"
无序唯一元素集合:
# 添加元素 127.0.0.1:6379> SADD tags "Redis" "数据库" "缓存" (integer) 3 # 查看所有元素 127.0.0.1:6379> SMEMBERS tags 1) "数据库" 2) "缓存" 3) "Redis" # 检查成员 127.0.0.1:6379> SISMEMBER tags "Redis" (integer) 1
带分数的有序集合:
# 添加带分数成员 127.0.0.1:6379> ZADD leaderboard 100 "玩家A" 200 "玩家B" (integer) 2 # 按分数范围查询 127.0.0.1:6379> ZRANGEBYSCORE leaderboard 150 300 1) "玩家B"
# 搜索键(使用通配符) 127.0.0.1:6379> KEYS user:* 1) "user:1000" # 清空当前数据库 127.0.0.1:6379> FLUSHDB OK # 清空所有数据库 127.0.0.1:6379> FLUSHALL OK # 选择数据库(默认16个,编号0-15) 127.0.0.1:6379> SELECT 1 OK
使用管道(pipeline)提高批量操作效率:
echo -e "SET key1 value1\nSET key2 value2\nGET key1" | redis-cli --pipe
0.0.1:6379> EVAL "return redis.call('GET', KEYS[1])" 1 username "张三"
# 监控实时命令 127.0.0.1:6379> MONITOR # 查看慢查询 127.0.0.1:6379> SLOWLOG GET 10
完成操作后,可以优雅退出:
0.0.1:6379> QUIT
或者直接关闭连接:
0.0.1:6379> SHUTDOWN
注意:SHUTDOWN会关闭Redis服务器,生产环境慎用
Redis命令行工具redis-cli是与Redis服务器交互的利器,从简单的键值存储到复杂的数据结构操作,掌握这些命令能让你在数据处理时事半功倍,建议先在测试环境练习这些命令,熟练后再应用到生产环境,能力越大责任越大,操作生产数据前务必做好备份。
本文由 叶醉易 于2025-08-09发表在【云服务器提供商】,文中图片由(叶醉易)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://up.7tqx.com/wenda/576525.html
发表评论