环境
麒麟 V10 ARM 系统 Linux
编译安装
1. 下载最新稳定版
- 下载 选择最新稳定版
7.0.4
- 将下载的
redis-7.0.4.tar.gz
放到/opt/redis
文件夹中
2. 解压
tar -xzvf redis-7.0.4.tar.gz
3. 编译安装
cd /opt/redis/redis-7.0.4
make test
make
# 默认安装路径:/usr/local/bin
make install PREFIX=/usr/local/redis
PROBLEM: 缺少 gcc
yum install gcc-c++
PROBLEM: 编译错误 jemalloc/jemalloc.h:没有那个文件或目录
yum install tcl
# 编译测试
make test MALLOC=libc
# 编译安装
make install MALLOC=libc PREFIX=/usr/local/redis
PROBLEM: Redis Client On Error: Error: connect ECONNREFUSED 192.168.xxx.105:6379 Config right?
vim redis.conf
#注释 这一行重新启动redis即可
#bind 127.0.0.1 -::1
PROBLEM: WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. 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.
vim /etc/sysctl.conf
> vm.overcommit_memory=1
sysctl -p # 生效
# 0: 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。
# 1: 表示内核允许分配所有的物理内存,而不管当前的内存状态如何。
# 2: 表示内核允许分配超过所有物理内存和交换空间总和的内存
4. 配置
# 查看IP地址
ifconfig
# 第一次配置
cp /opt/redis/redis-7.0.4/redis.conf /usr/local/redis/config/redis.conf
vim /usr/local/redis/config/redis.conf
# 修改
bind 127.0.0.1 -::1 -> bind IpAddress
daemonize no -> daemonize yes
pidfile /var/run/redis_6379.pid -> pidfile /usr/local/redis/run/redis_6379.pid
logfile "" -> logfile /usr/local/redis/logs/redis.log
dir ./ -> dir /usr/local/redis/db/
requirepass foobared -> requirepass 123456
# masterauth <master-password> -> masterauth 123456
# 新建文件夹
cd /usr/local/redis
mkdir /usr/local/redis/config
mkdir /usr/local/redis/logs
mkdir /usr/local/redis/db
mkdir /usr/local/redis/run
- 将
redis.conf
拷贝到/usr/local/redis/config
中
5. 开机自启动
- 将
redis.service
拷贝到/usr/lib/systemd/system
# 重新加载systemd配置
systemctl daemon-reload
# 添加开机自启动
systemctl enable redis.service
# 启动服务
systemctl start redis.service
# 查看服务状态
systemctl status redis.service
# 停止服务
systemctl stop redis.service
6. 开放端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload
7. 测试
/usr/local/redis/bin/redis-cli -h 192.168.208.132 -p 6379 -a 123456
> ping
PONG # 说明Redis服务正常
配置说明
Window 客户端安装
Redis Window Client Releases,参考附录
参考
redis.service
#
# /usr/lib/systemd/system
# systemd service file for Redis Server forking server
#
# /usr/local/redis
#
[Unit]
Description=Redis 7.0.4
Documentation=https://redis.io/download
After=network.target
[Service]
User=root
Type=forking
ExecStart=/usr/local/redis /usr/local/redis/config/redis.conf
ExecStop=/usr/local/redis/bin/redis-cli -h 192.168.208.132 -p 6379 -a 123456 shutdown
PrivateTmp=true
[Install]
WantedBy=multi-user.target