# 1. 介绍
官网地址:https://redis.io/download (opens new window)
下面来源于官网介绍百度翻译而来。
Redis 是一个开源(BSD 许可)的内存数据结构存储,用作数据库、缓存和消息代理。Redis 提供数据结构,如字符串、哈希、列表、集合、带范围查询的排序集合、位图、hyperloglogs、地理空间索引和流。Redis 具有内置复制、Lua 脚本、LRU 逐出、事务和不同级别的磁盘持久性,并通过 Redis Sentinel 和 Redis Cluster 的自动分区提供高可用性。
您可以在这些类型上运行原子操作,例如附加到字符串;递增散列中的值;将元素推送到列表中;计算集合交、并、差;或者获取排序集中排名最高的成员。
为了获得最佳性能,Redis 使用内存中的数据集。根据您的用例,您可以通过定期将数据集转储到磁盘或将每个命令附加到基于磁盘的日志来持久化数据。如果您只需要功能丰富的网络内存缓存,还可以禁用持久性。
Redis 还支持异步复制,具有非常快速的非阻塞第一次同步、自动重新连接和网络拆分上的部分重新同步。
其他特色包括:
- 事务
- 发布/订阅
- Lua 脚本
- 生存时间有限的 key
- LRU 逐出 key
- 自动故障切换
您可以使用大多数编程语言中的 Redis。
Redis 是用 ANSIC 编写的,可以在大多数 POSIX 系统(如 Linux、*BSD 和 OSX)中工作,没有外部依赖关系。Linux 和 OS X 是开发和测试 Redis 最多的两种操作系统,我们建议使用 Linux 进行部署。Redis 可以在 Solaris 派生的系统(如 SmartOS)中工作,但支持是最好的。没有对 Windows 版本的官方支持。
# 2. 安装
wget https://download.redis.io/releases/redis-6.2.5.tar.gz
tar xzf redis-6.2.5.tar.gz
cd redis-6.2.5
mkdir /usr/redis-6.2.5
make install PREFIX=/usr/redis-6.2.5
cd /usr/redis-6.2.5/bin ./redis-server
2
3
4
5
6
# 3. 设置后台运行
vi redis.conf
cp /usr/local/src/redis-6.2.5/redis.conf /usr/redis-6.2.5/bin/redis.conf
daemonize yes
2
# 4. 设置账号密码
因为 6.x 版本新增了 ACL 的权限控制,本篇就不过多介绍,但是官方为了保证向下兼容,Redis6 保留了 default 用户,只要配置 requirepass
即可。
客户端链接会报错 (error) NOAUTH Authentication required.
,只要输入 auth 123456
即可。
# requirepass foobared
requirepass 123456
2
# 5. 设置外网访问
bind 127.0.0.1
protected-mode no #允许访问
./redis-cli -h 192.168.0.100 -p 6379 -a 123456
2
3
# 6. systemctl 服务管理
vim /usr/lib/systemd/system/redis.service
改成自己的路径
[Unit]
Description=Redis
After=network.target
[Service]
Type=forking
PIDFile=/var/run/redis_6379.pid
ExecStart=/usr/redis-6.2.5/bin/redis-server /usr/redis-6.2.5/bin/
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
2
3
4
5
6
7
8
9
10
11
12
13
14
systemctl daemon-reload
systemctl start redis
systemctl status redis
systemctl enable redis
systemctl is-enable redis
2
3
4
5