简介
- 全称:Remote Dictionary Server
- 译名:远程字典服务器
- Redis是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。
下载
地址:https://redis.io/

下载完成后上传到服务器
安装
下面操作需要root用户
安装gcc环境
yum install -y gcc-c++
查看是否装好gcc
rpm -qa | grep gcc

解压
tar -zxvf redis-6.2.5.tar.gz -C $B_HOME/
cd $B_HOME
mv redis-6.2.5 redis
cd redis/src
编译
make
安装
make install
查看/usr/local/bin,可以看到redis命令
ls -l /usr/local/bin

启动服务
去到redis解压好的那个地方,那里有个redis.conf
cd $B_HOME/redis
启动redis服务
redis-server redis.conf

另开窗口查看服务端口
netstat -anp | grep 6379

常用配置
vim redis.conf
后台运行
daemonize的no修改为yes,前台运行就会改为后台运行
# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
# When Redis is supervised by upstart or systemd, this parameter has no impact.
daemonize yes
网络
此处把bind设为192.168.1.103,后续可以用Python连接Redis
#bind 127.0.0.1 -::1
bind 192.168.1.103
持久化
- Redis持久化有RDB和AOF(Append-only file),此处介绍RDB。
- RDB:在指定的时间间隔内 将内存中的数据集快照写入磁盘,恢复时 将快照文件直接读到内存
| RDB策略 | 说明 |
|---|---|
save 3600 1 | 3600秒内 如果至少有1个key的值变化 就保存 |
save 300 10 | 300秒内 如果至少有10个key的值变化 就保存 |
save 60 10000 | 60秒内 如果至少有10000个key的值变化 就保存 |
save "" | 禁用RDB |
基本操作
启动redis客户端
redis-cli
string
添加键值对
SET k1 v1
查询键值
GET k1

设置键值的同时,添加过期时间(单位:秒)
SETEX k2 5 v2

list
双向链表

set
集合:无序的,不重复的

hash


从根据key和field取value

zset
有序的set:保存值时附带score信息,这个score用于排序
ZADD kzs 4 m0 8 m1 2 m2

ZRANGEBYSCORE kzs 0 9
返回指定分数区间内的数据,从小到大排列

连接Redis
Python连接Redis
安装
pip install redis
代码
import redis
HOST = '192.168.1.103'
PORT = 6379
r = redis.Redis(host=HOST, port=PORT)
r.set("key1", "value1")
print(r.get("key1"))
Scala连接Redis
依赖
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
代码
import redis.clients.jedis.Jedis
object MyRedisUtil {
val host: String = "192.168.1.103"
val port: Int = 6379
// 获取Jedis(不使用连接池)
def getJedisClient: Jedis = {
new Jedis(host, port)
}
}
7081



被折叠的 条评论
为什么被折叠?



