通过wget在线下载redis编译包
wget https://download.redis.io/redis-stable.tar.gz
解压并进入目录
tar -xvf redis-stable.tar.gz
cd redis-stable
进入解压后的目录后,可看到如下文件:
编译项目
make
编译过程中可能需要消耗几分钟时间,直到看到如下日志,表示编译成功
编译成功后可进行安装,redis
默认将被安装在/usr/local/nginx
目录中,目录无需手动提前创建
make install
直到出现如下日志,表示安装成功
安装成功后,进入默认安装目录,可看到如下文件:
cd /usr/local/redis/
redis.conf
redis配置文件模板bin
可执行文件目录redis-server
redis服务端可执行程序,用于启动redis服务redis-cli
redis命令行程序,用于连接redis服务提供命令行交互redis-sentinel
redis-check-rdb
redis-check-aof
redis-benchmark
dump.rdb
此时执行.redis-server
可直接将redis启动,但此方式直接在前台启动,只适合用于测试redis
是否安装成功。实际使用中需要配合redis.conf
文件将redis
设置为后台启动
找到刚在安装redis的目录中的配置文件模板redis.conf
,将文件中的daemonize
改为yes
,即可设置后台启动,这个配置文件模板中有大量的注释描述,找的时候需要一些耐心
推荐直接使用下面我整理好的配置文件。此配置文件仅在官方提供的模板配置文件的基础上,做出下列改动:
- 将原文中的大篇英文注释删除
- 将启动方式修改为后台启动
除此之外,再无任何其他改动
bind 127.0.0.1 -::1
protected-mode yes
# 指定绑定端口为6379
port 6379
tcp-backlog 511
timeout 0
tcp-keepalive 300
# 设置启动方式为后台启动
daemonize yes
pidfile /var/run/redis_6379.pid
loglevel notice
logfile ""
databases 16
always-show-logo no
set-proc-title yes
proc-title-template "{title} {listen-addr} {server-mode}"
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
rdb-del-sync-files no
dir ./
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync yes
repl-diskless-sync-delay 5
repl-diskless-sync-max-replicas 0
repl-diskless-load disabled
repl-disable-tcp-nodelay no
replica-priority 100
acllog-max-len 128
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
lazyfree-lazy-user-del no
lazyfree-lazy-user-flush no
oom-score-adj no
oom-score-adj-values 0 200 800
disable-thp yes
appendonly no
appendfilename "appendonly.aof"
appenddirname "appendonlydir"
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble yes
aof-timestamp-enabled no
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events ""
hash-max-listpack-entries 512
hash-max-listpack-value 64
list-max-listpack-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-listpack-entries 128
zset-max-listpack-value 64
hll-sparse-max-bytes 3000
stream-node-max-bytes 4096
stream-node-max-entries 100
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit replica 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes
jemalloc-bg-thread yes