1.基础知识

Redis 是用 C 语言开发的一个开源的高性能键值对(key-value)数据库。
它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止 Redis 支持的键值数据类型如下:

  • 字符串(String)
  • 列表(lists)
  • 集合(sets)
  • 有序集合(sorts sets)
  • 哈希表(hashs)

2.Redis 的应用场景

缓存(数据查询、短连接、新闻内容、商品内容等。

  • 分布式集群架构中的 session 分离。
  • 聊天室的在线好友列表。
  • 任务队列。(秒杀、抢购、12306 等等)
  • 应用排行榜。
  • 网站访问统计。
  • 数据过期处理(可以精确到毫秒)

3.安装 Redis

下面介绍在 Linux 环境下,Redis 的安装与部署 使用 Redis-3.0 稳定版,因为 Redis 从 3.0 开始增加了集群功能。
可以通过官网下载 http://download.Redis.io/releases/
或者使用 linux wget 命令

1
wget http://download.redis.io/releases/redis-6.2.6.tar.gz
BASH

将 redis-6.2.6.tar.gz 移动到/usr/local 下

1
mv redis-6.2.6.tar.gz /usr/local
BASH

解压二进制包

1
tar -zxvf redis-6.2.6.tar.gz
BASH

进入解压后的目录进行编译,注意:PREFIX需要指定的文件夹需要是空的

1
2
cd redis-6.2.6
make PREFIX=/usr/local/redis install
BASH

进入安装目录 bin 下

1
cd /usr/local/redis/bin
AWK

目录结构是这样的

redis-benchmark redis 性能测试工具
redis-check-aof AOF 文件修复工具
redis-check-rdb RDB 文件修复工具
redis.conf redis 配置文件
redis-sentinal redis 集群管理工具
redis-server redis 服务进程

4.配置文件

1
2
3
4
mkdir /usr/local/redis/conf
cp /usr/local/redis-6.2.6/redis.conf /usr/local/redis/conf
cd /usr/local/redis/conf
vim redis.conf
BASH

给redis加请求密码,(输入 /requirepass 搜索)

1
2
# 去掉开头#号 
requirepass 你的密码
BASH

设置有几个储存库,搜索 /databases

1
databases 3
BASH

设置可远程访问,搜索 /bind

1
bind 0.0.0.0
BASH

设置后台启动,搜索 /daemonize

1
daemonize yes
BASH

4.启动与停止 Redis

1
/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
BASH

4.1 连接 Redis

1
./redis-cli -p 6379 -a 密码
BASH

4.2 停止 Redis

1
/usr/local/redis/bin/redis-cli -a 密码 shutdown
BASH

4.3 让 Redis 开机自启

1
vim /etc/rc.local
BASH

把如下内容添加进去

1
/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
BASH

5.异常处理

5.1 redis-cli shutdown 出现 (error) NOAUTH Authentication required

Redis 设置密码登录后,想关闭 Redis 服务器,需要

1
Redis-cli -a 密码 shutdown
ARDUINO

5.2 Redis 编译报致命错误:jemalloc/jemalloc.h:没有那个文件或目录

分配器 allocator, 如果有 MALLOC 这个 环境变量, 会有用这个环境变量的 去建立 Redis。
而且 libc 并不是默认的 分配器, 默认的是 jemalloc, 因为 jemalloc 被证明 有更少的 fragmentation problems 比 libc。
但是如果你又没有 jemalloc 而只有 libc 当然 make 出错。 所以加这么一个参数,运行如下命令:

1
make MALLOC=libc
ROUTEROS

5.3 如果此时出现 gcc …Not found

需要安装 gcc

1
2
3
4
5
Ubuntu
sudo apt-get install gcc
Centos
yum install update
yum install gcc
CMAKE

https://cuifuan.github.io/2022/01/29/linux/soft/Linux下Redis安装和部署/
作者
cuifuan
发布于
2022年1月29日
许可协议