linux系统部署redis单点服务
1、下载redis
wget https://download.redis.io/releases/redis-5.0.9.tar.gz
2、解压
tar zxf redis-5.0.9.tar.gz
3、移动redis解压目录
mv redis-5.0.9 /usr/local/redis
4、编译
cd /usr/local/redis
make
5、安装
make prefix=/usr/local/redis install
6、配置配置文件
vim /usr/local/redis/redis.conf
bind 0.0.0.0 #允许 Redis 监听所有可用的网络接口,即可以被外部访问。 protected-mode yes #保护模式,当启用时,只允许通过本地环回接口访问 Redis,禁止远程访问。 port 6379 #指定 Redis 监听的端口号,默认是 6379。 tcp-backlog 511 #允许传入连接的最大数量,如果达到限制,新连接会被拒绝。 timeout 0 #关闭客户端连接的超时时间。设置为0表示禁用超时。 tcp-keepalive 300 #TCP keepalive 参数,表示在指定秒数内没有数据交互时,TCP 尝试发送 keepalive 消息以维持连接。 daemonize yes #是否以守护进程模式运行 Redis。 supervised no #是否使用监控模式,通常用于通过外部进程来管理 Redis 进程。 pidfile /var/run/redis_6379.pid #指定 Redis 进程的 PID 文件路径。 loglevel notice #指定日志级别,此处为 notice,表示记录普通通知,no:关闭,warning::告警,verbose:比普通日志更新详细的日志,debug:最详细的日志信息。 logfile "/usr/local/redis/redis.log" #指定日志文件路径。 databases 16 #指定 Redis 服务器上数据库的数量,默认是16个。 always-show-logo yes #是否始终显示 Redis Logo。 save 900 1 save 300 10 save 60 10000 #设置在指定秒数内,有指定数量的变更操作时,自动执行一次持久化操作(保存到磁盘)save <seconds> <changes>,配置save ""为关闭RDB持久化。 stop-writes-on-bgsave-error yes #在持久化过程中发生错误时,是否停止写入操作。 rdbcompression yes #是否对 RDB 文件使用压缩。 rdbchecksum yes #是否在 RDB 文件中添加校验和。 dbfilename dump.rdb #指定持久化文件的名称。 dir /usr/local/redis/ #指定持久化文件的保存目录。 replica-serve-stale-data yes #在从节点无法连接主节点时,是否允许从节点继续提供旧数据。 replica-read-only yes #是否设置从节点为只读。 repl-diskless-sync no #是否在磁盘同步时禁用传输快照文件。 repl-diskless-sync-delay 5 #在磁盘同步时,每隔指定秒数进行同步。 repl-disable-tcp-nodelay no #是否禁用 TCP_NODELAY 算法。 replica-priority 100 #从节点的优先级,主节点无法访问时,优先级高的节点成为主节点。 requirepass xxxxxxxxxx #设置 Redis 访问密码。 lazyfree-lazy-eviction no #是否启用延迟释放和延迟淘汰。 lazyfree-lazy-expire no #是否启用延迟释放和延迟过期。 lazyfree-lazy-server-del no #是否启用延迟释放和延迟服务器删除。 replica-lazy-flush no #是否启用从节点延迟刷新。 appendonly no #是否开启 AOF 持久化。 appendfilename "appendonly.aof" #AOF 持久化文件的名称。 appendfsync everysec #设置 AOF 文件同步方式。 no-appendfsync-on-rewrite no #是否在 AOF 重写期间禁用 AOF 文件的写入。 auto-aof-rewrite-percentage 100 #设置 AOF 文件重写的触发百分比。 auto-aof-rewrite-min-size 64mb #设置 AOF 文件重写的最小尺寸。 aof-load-truncated yes #是否在 AOF 文件被截断时加载。 aof-use-rdb-preamble yes #是否在 AOF 文件中包含 RDB 文件的头部。 lua-time-limit 5000 #设置执行 Lua 脚本的时间限制(毫秒)。 slowlog-log-slower-than 10000 #记录执行时间超过指定微秒的命令到慢查询日志。 slowlog-max-len 128 #慢查询日志的最大长度。 latency-monitor-threshold 0 #用于开启延迟监视器。 notify-keyspace-events "" #通知事件的类型。 hash-max-ziplist-entries 512 hash-max-ziplist-value 64 #设置 hash 类型的 ziplist 编码参数。 list-max-ziplist-size -2 list-compress-depth 0 #设置 list 类型的 ziplist 编码参数。 set-max-intset-entries 512 #设置 set 类型的 intset 编码参数。 zset-max-ziplist-entries 128 zset-max-ziplist-value 64 #zset 类型的 ziplist 编码参数。 hll-sparse-max-bytes 3000 #HyperLogLog 类型的稀疏编码参数。 stream-node-max-bytes 4096 stream-node-max-entries 100 #设置 stream 类型的编码参数。 activerehashing yes #是否在哈希表被重新调整大小时,开启主动 rehash。 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 #是否开启 AOF 重写时增量同步。 rdb-save-incremental-fsync yes #是否开启 RDB 持久化时增量同步。 maxmemory 4GB #设置内存上限限制。
以上bind、port、daemonize、loglevel、logfile、databases、dbfilename、dir、requirepass、maxmemory、save为基本配置项。
7、配置systemd管理脚本。
vim /usr/lib/systemd/system/redis.service
[Unit] Description=Redis5.0.9 After=network.target [Service] Type=forking ExecStart=/usr/local/redis/src/redis-server /usr/local/redis/redis.conf [Install] WantedBy=multi-user.target
8、启动redis服务
systemctl start redis
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术