Redis基础
介绍
Redis(Remote Dictionary Server)是一个开源的高性能键值对存储系统,以其快速、灵活和可扩展性而著称。它是一个内存中的数据结构存储系统,支持多种数据类型,可以作为数据库、缓存、消息队列和发布/订阅系统使用。
Redis应用场景:
- 存储缓存用的数据;
- 需要高速读/写的场合使用它快速读/写;
Redis的架构由以下主要组件构成:
- Redis服务器 (redis-server):核心服务,负责数据存储、处理客户端请求和执行数据结构操作。
- Redis客户端 (redis-cli):命令行工具,用于与服务器进行交互,执行各种Redis命令。
Redis 因配置不当可以造成未授权访问。攻击者无需认证访问到内部数据,可导致敏感信息泄露,也可以恶意执行操作。
安装客户端
Windows:https://github.com/qishibo/AnotherRedisDesktopManager
Linux:
1sudo apt-get update
2sudo apt install redis-tools
或者编译安装:https://redis.io/download
1# 下载Redis
2wget http://download.redis.io/releases/redis-6.0.16.tar.gz
3
4# 解压
5tar zxvf redis-6.0.16.tar.gz
6
7# 到src目录下
8cd redis-5.0.5/src
9
10# 编译
11apt install gcc
12apt install make
13make
连接认证
Windows:
Linux:
1redis-cli -h [hostname] -p [port] -a [password]
2
3# [hostname]:Redis服务器地址
4# [port]:Redis服务器监听的端口,默认6379
5# [password]:Redis服务器的密码
6
7redis-cli -h [hostname] -p [port]
8auth [passwd]

服务操作命令
1# 查看redis进程详细信息
2ps aux | grep redis
3
4# 启动redis
5redis-server
6redis-server <config_path>
7
8# 本地测试连接
9redis-cli
10
11# 取 Redis 服务器的各种信息和统计数据
12info
13
14# 重启服务
15/etc/init.d/redis-server restart
16
17# 开启 redis 认证
18sudo find / -name "redis.conf" 2>/dev/null
19sudo vim /etc/redis/redis.conf
20# 添加下面这行代码,默认密码是:foobared
21requirepass <password>
22
23# Redis配置文件关闭 IP地址绑定,开启外连
24vim /etc/redis/redis.conf
25bind 0.0.0.0 -::1 # 0.0.0.0 表示监听所有的 IPv4 地址,而 -::1 表示监听 IPv6 中的本地回环地址。
26protected-mode no # 关闭保护模式,好像不需要
27/etc/init.d/redis-server restart
数据操作命令
1# 设置键值对
2set key value
3
4# 获取键对应的值
5get key
6
7# 删除键值对
8del key
9
10 # 列出当前数据库中的所有键
11keys *
12
13# 将 Redis 数据库中的数据以 RDB(Redis Database)格式进行持久化保存
14save
15
16# 清空 Redis 服务器中的所有数据库中的数据,谨慎操作
17flushall
配置管理命令
1# 设置工作目录
2config set dir /home/test
3
4# 设置备份文件名
5config set dbfilename redis.rdb
6
7# 检查工作目录是否设置成功
8config get dir
9
10# 检查备份文件名是否设置成功
11config get dbfilename