redis7.4.2单机配置
解压源码包
将从官网下载的redis源码压缩包上传到服务器的相关目录下。
[root@hcss-ecs-2851 ~]# cd /opt/soft/redis/
[root@hcss-ecs-2851 redis]# ls
redis-stable.tar.gz
解压并进入解压后的目录中。
[root@hcss-ecs-2851 redis]# tar -zxvf redis-stable.tar.gz
[root@hcss-ecs-2851 redis]# ls
redis-stable redis-stable.tar.gz
[root@hcss-ecs-2851 redis]# cd redis-stable
[root@hcss-ecs-2851 redis-stable]# ls
00-RELEASENOTES CODE_OF_CONDUCT.md deps LICENSE.txt MANIFESTO redis.conf runtest runtest-moduleapi SECURITY.md src TLS.md
BUGS CONTRIBUTING.md INSTALL Makefile README.md REDISCONTRIBUTIONS.txt runtest-cluster runtest-sentinel sentinel.conf tests utils
安装gcc
[root@hcss-ecs-2851 redis-stable]# yum install -y gcc gcc-c++
安装redis
[root@hcss-ecs-2851 redis-stable]# make
root@hcss-ecs-2851 redis-stable]# makeinstall
简单测试是否安装成功
[root@hcss-ecs-2851 redis-stable]# cd
[root@hcss-ecs-2851 ~]# redis-server
9193:C 24 Mar 2025 12:03:19.847 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
9193:C 24 Mar 2025 12:03:19.847 * oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
9193:C 24 Mar 2025 12:03:19.847 * Redis version=7.4.2, bits=64, commit=00000000, modified=0, pid=9193, just started
9193:C 24 Mar 2025 12:03:19.847 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
9193:M 24 Mar 2025 12:03:19.847 * monotonic clock: POSIX clock_gettime
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis Community Edition
.-`` .-```. ```\/ _.,_ ''-._ 7.4.2 (00000000/0) 64 bit
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 9193
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | https://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
9193:M 24 Mar 2025 12:03:19.848 * Server initialized
9193:M 24 Mar 2025 12:03:19.848 * Ready to accept connections tcp
自定义设置
自定义目录
[root@hcss-ecs-2851 ~]# cd /opt/soft/redis/
[root@hcss-ecs-2851 redis]# mkdir {etc,lib,log}
[root@hcss-ecs-2851 redis]# ls
etc lib log redis-stable redis-stable.tar.gz
[root@hcss-ecs-2851 redis]# cp redis-stable/redis.conf etc/
[root@hcss-ecs-2851 redis]# ls etc/
redis.conf
编辑redis.conf
bind 0.0.0.0 # 任意ip均可访问
protected-mode no
port 6379
daemonize yes # 后台运行
pidfile /var/run/redis.pid # 运行时进程id
logfile /opt/soft/redis/log/redis.log #日志文件
dir /opt/soft/redis/lib/
requirepass xynuhi876 # 设置密码
创建 systemd 服务文件
[root@hcss-ecs-2851 etc]# cd /etc/systemd/system/
[root@hcss-ecs-2851 system]# vim redis.service
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
Type=forking
User=root
Group=root
ExecStart=/usr/local/bin/redis-server /opt/soft/redis/etc/redis.conf
ExecStop=/usr/local/bin/redis-cli -p 6379 shutdown
PIDFile=/var/run/redis.pid
Restart=on-failure
[Install]
WantedBy=multi-user.target
[root@hcss-ecs-2851 ~]# systemctl daemon-reload
[root@hcss-ecs-2851 ~]# systemctl start redis
[root@hcss-ecs-2851 ~]# systemctl status redis
● redis.service - Redis In-Memory Data Store
Loaded: loaded (/etc/systemd/system/redis.service; disabled; vendor preset: disabled)
Active: active (running) since 一 2025-03-24 12:43:28 CST; 8s ago
Process: 3340 ExecStart=/usr/local/bin/redis-server /opt/soft/redis/etc/redis.conf (code=exited, status=0/SUCCESS)
Main PID: 3341 (redis-server)
CGroup: /system.slice/redis.service
└─3341 /usr/local/bin/redis-server 0.0.0.0:6379
3月 24 12:43:28 hcss-ecs-2851 systemd[1]: Starting Redis In-Memory Data Store...
3月 24 12:43:28 hcss-ecs-2851 systemd[1]: Can't open PID file /var/run/redis.pid (yet?) after start: No such file or directory
3月 24 12:43:28 hcss-ecs-2851 systemd[1]: Started Redis In-Memory Data Store.
[root@hcss-ecs-2851 ~]# cd /opt/soft/redis/log/
[root@hcss-ecs-2851 log]# cat redis.log
......
3341:M 24 Mar 2025 12:43:28.337 * Ready to accept connections tcp
[root@hcss-ecs-2851 log]# systemctl stop redis
[root@hcss-ecs-2851 log]# cat redis.log
......
3341:M 24 Mar 2025 12:44:10.592 # Redis is now ready to exit, bye bye...