学习 Redis - 3. 进阶
Redis 数据备份与恢复
备份
127.0.0.1:6379> SAVE
OK
备份还有一个在后台执行bgsave
127.0.0.1:6379> BGSAVE
Background saving started
该命令将在 redis 安装目录中创建dump.rdb
文件。
安装目录可以用 config get dir
获取到
127.0.0.1:6379> CONFIG GET dir
dir
/Users/admin/Dxxxx
Redis 安全
可以通过 redis 的配置文件设置密码参数
,这样客户端连接到 redis 服务就需要密码验证,这样可以让你的 redis 服务更安全。
默认的密码是空,通过config set requirepass
来设置密码。
127.0.0.1:6379> CONFIG GET requirepass
requirepass
127.0.0.1:6379> CONFIG SET requirepass "123"
OK
127.0.0.1:6379> CONFIG GET requirepass
requirepass
123
127.0.0.1:6379>
如果没有授权成功是不可以执行命令的
。
比如下面先输入错误密码1234
,然后执行命令失败, 然后输入正确密码123
,执行成功。
(base) ➜ PYTHON redis-cli --raw
127.0.0.1:6379> AUTH 1234
WRONGPASS invalid username-password pair
127.0.0.1:6379> set test1 123
NOAUTH Authentication required.
127.0.0.1:6379> AUTH 123
OK
127.0.0.1:6379> set test1 123
OK
Redis 性能测试
redis-benchmark
该命令是在 redis 的目录下执行的,而不是 redis 客户端的内部指令。
以下实例同时执行 100 个请求来检测性能:
(base) ➜ PYTHON redis-benchmark -n 100 -q
PING_INLINE: 50000.00 requests per second
PING_BULK: 25000.00 requests per second
SET: 33333.33 requests per second
GET: 33333.33 requests per second
INCR: 33333.33 requests per second
LPUSH: 50000.00 requests per second
RPUSH: 20000.00 requests per second
LPOP: 50000.00 requests per second
RPOP: 14285.71 requests per second
Redis 管道技术
Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。这意味着通常情况下一个请求会遵循以下步骤:
- 客户端向服务端发送一个查询请求,并监听Socket返回,通常是以阻塞模式,等待服务端响应。
- 服务端处理命令,并将结果返回给客户端。
可以用 python redis
库来执行这个。设置了密码需要输入密码才可以访问可以操作。
>>> r = redis.StrictRedis(host="localhost", port=6379, password='123', db=0)
>>> r.set("111", '123')
True
总结
Redis常见的功能,有备份,设置密码,性能测试,以及管道技术,和其他语言的搭建脚本。
github博客
微信公众号:chasays, 欢迎关注一起吹牛逼,也可以加微信号「xxd_0225」互吹。
作者:叉叉敌
博客:https://chasays.github.io/
微信公众号:Chasays, 欢迎关注一起吹牛逼,也可以加个人微信号「xxd_0225」互吹。
本博客大多为学习笔记或读书笔记,本文如对您有帮助,还请多推荐下此文,如有错误欢迎指正,相互学习,共同进步。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现