一、Redis概述
Redis(Remote Dictionary Server)是一个开源的高性能键值内存数据库,它支持多种数据结构,如字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。Redis以其出色的性能、可靠性、扩展性和灵活性广受欢迎,常用于缓存系统、消息队列、实时计数器、计时器、排行榜、社交应用等领域。
二、Redis安装
1. 安装Redis
本文以CentOS7 64-bit操作系统为例,安装最新版本的Redis 5.0.8。首先添加Redis源,并更新yum:
sudo yum install epel-release
sudo yum update
然后执行以下命令安装Redis:
sudo yum install redis
安装成功后,可以使用以下命令查看Redis版本信息:
redis-cli -v
2. 配置Redis
Redis的配置文件位于/etc/redis.conf,默认配置是不允许远程访问的。为了允许远程访问,我们需要修改该配置文件。
首先备份一下Redis配置文件:
sudo cp /etc/redis.conf{,.bak}
然后使用文本编辑器打开Redis配置文件:
sudo vi /etc/redis.conf
找到bind 127.0.0.1这一行,将其注释掉或修改为bind 0.0.0.0,表示允许任何IP访问。如果只允许指定IP访问,那么可以写为bind your.ip.address.goes.here。然后将protected-mode设置为no,表示取消保护模式,使Redis对外开放。最后保存文件并退出文本编辑器。
为了能够持久化存储数据,我们需要修改一下rdb快照的配置。找到以下两行配置:
# save 900 1
# save 300 10
将其修改为:
save 900 1
save 300 10
save 60 10000
这表示900秒内如果至少有一个key被修改,就进行一次快照;或者300秒内至少有10个key被修改,就进行一次快照;或者60秒内至少有10000个key被修改,就进行一次快照。
如果需要开启密码验证,可以找到以下配置,将其取消注释并设置密码:
# requirepass foobared
requirepass yourpasswordhere
设置完毕后,重启Redis服务:
sudo systemctl restart redis
三、Redis使用
1. 命令行操作
Redis提供了redis-cli命令行界面,可以通过该界面对Redis进行交互操作。可以通过以下命令连接到Redis服务器:
redis-cli -h your_redis_server_ip -p your_redis_port
例如,如果Redis运行在本地并使用默认端口6379,那么可以执行以下命令连接到Redis服务器:
redis-cli
连接成功后,可以使用auth命令进行密码验证:
auth yourpasswordhere
验证成功后,即可执行各种Redis命令,例如:
// 设置一个键值对
set mykey myvalue
// 获取一个键的值
get mykey
// 删除一个键
del mykey
更多Redis命令可以查看官方文档。
2. 编程语言操作
除了命令行操作以外,Redis还提供了多种编程语言客户端,可以方便地与Redis进行交互。例如,在Python中使用Redis可以使用redis-py客户端。可以使用以下命令安装redis-py:
pip install redis
连接到Redis服务器:
import redis
r = redis.Redis(host='your_redis_server_ip', port=your_redis_port, password='your_password')
然后就可以执行各种Redis命令了:
# 设置一个键值对
r.set('mykey', 'myvalue')
# 获取一个键的值
value = r.get('mykey')
# 删除一个键
r.delete('mykey')
更多redis-py使用方法可以查看官方文档。
四、总结
本文介绍了在CentOS7上安装并配置Redis,以及通过命令行和编程语言操作Redis的方法。Redis是一个非常强大的键值内存数据库,具备出色的性能和可靠性,非常适合于缓存系统、消息队列、实时计数器、计时器、排行榜、社交应用等场景。在使用Redis时需要注意对配置文件进行适当修改,并遵循Redis的一些最佳实践。