Redis安装(Centos安装)及配置

1、下载

这里为了加速下载,选择了华为镜像地址:https://mirrors.huaweicloud.com/redis/

# 切换到 /usr/local/src
cd /usr/local/src

# 使用 curl 下载 redis 
curl -O https://mirrors.huaweicloud.com/redis/redis-5.0.7.tar.gz

# 解压
tar zxvf redis-5.0.7.tar.gz

2、安装

这一步构建需要 CentOS 安装了 gcc ,否则会报错 /bin/sh: cc: command not found,如果报错了之后,再安装 gcc ,需要删除解压的 redis ,重新解压再构建 ,执行 yum -y install gcc-c++ 即可安装 gcc

# 切换到 redis 解压文件夹
cd redis-5.0.7

# 构建
make

# 切换到 ./src
cd src

# 安装 redis 到 /usr/local/redis
make install PREFIX=/usr/local/redis

3、拷贝默认的配置文件到配置目录

# 创建 ./etc 目录
mkdir /usr/local/redis/etc

# 拷贝 redis.conf 到 ./etc
cp /usr/local/src/redis-5.0.7/redis.conf /usr/local/redis/etc

4、修改配置文件

  • 修改为后台可运行
    daemonize no 改为 daemonize yes (是否为进程守护,关闭ssh窗口后即是否在后台继续运行, 如果是docker容器,这一项不修改)

  • 设置密码
    requirepass foobared 的注释去掉,将foobared改为需要的密码

  • 关闭保护模式
    protected-mode yes改为protected-mode no

  • 取消绑定本地地址

    如果不取消绑定,无法远程连接 redis

    注释掉bind 127.0.0.1

  • 修改持久化的存放路径(可选)
    dir ./ 修改为 dir /usr/local/redis/data

5、CentOS中设置开机启动

# 在 /etc/rc.local 里面添加内容(意思就是开机时执行这段命令)
vim /etc/rc.local
# redis 以某个配置启动的命令使 redis-server [配置文件]
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

6、 添加PATH路径,方便调用redis命令

执行vi /etc/profile进入编辑,在 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 这一行下面,添加如下内容

export PATH=$PATH:/usr/local/redis/bin

如图:图片

7、redis 常用命令

# 启动 redis
redis-server [配置文件]

# 停止 redis 命令
redis-cli shutdown

# 登录 redis
redis-cli [-a 密码]

# 登录远端 redis
redis-cli -h [IP] -p [端口] -a [密码]

8、redis设置持久化方式

8.1、RDB(默认)

save 900 1 # 900秒内至少有1次键值改动,保存一次数据集
save 300 10 # 300秒内至少有10次键值改动,保存一次数据集
save 60 10000 # 60秒内至少有10000次键值改动,保存一次数据集

8.2、AOF

打开AOF只需修改如下配置即可

appendonly yes

aof同步相关配置说明:

  • appendfsync always
    每次有新命令追加到 AOF 文件时就执行一次 fsync ,性能较差,但数据完整性较好。
  • appendfsync everysec
    每秒 fsync 一次,足够快,并且在故障时只会丢失 1 秒钟的数据。
  • appendfsync no
    从不 fsync ,将数据交给操作系统来处理。更快,但数据完整性较差。

aof重写相关配置:

AOF重写:因为AOF是记录我们的写缓存命令,所以,如果有大量的命令对同一个值进行修改,那么AOF就会记录对这个值的大量设置命令,对于恢复数据来说,这无疑是没有必要的,恢复数据的是,只需要执行最后一条设置命令(前提是这些命令之间没有依赖),即可完成缓存数据的恢复,这就是AOF重写的能力,AOF重写根据配置,在特定的条件下,会自动执行命令的重写优化

auto-aof-rewrite-min-size 64mb   //aof文件至少要达到64M才会自动重写,文件太小恢复速度本来就很快,重写的意义不大
auto-aof-rewrite-percentage 100  //aof文件自上一次重写后文件大小增长了100%则再次触发重写

8.3、混合持久化(4.0之后特性)

混合持久,即是综合RDB和AOF的优点,每过一段时间,数据执行一次全量保存(RDB),在每次保存的间隙,则是利用AOF来记录这期间的数据变更命令

打开混合持久化,修改配置为如下内容即可:

appendonly yes
aof-use-rdb-preamble yes
posted @ 2019-11-29 10:43  lkc9  阅读(247)  评论(0)    收藏  举报