rocky下redis的安装与配置
Easul Lv6

以下为相关安装命令

BASH
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# 安装必备基础软件
sudo yum install -y wget curl tar unzip zip vim
# 下载redis源码
mkdir -p ~/software/redis-temp
cd ~/software/redis-temp
# 如果下载过慢,可以使用 512github.com 的镜像加速网站
wget https://github.com/redis/redis/archive/7.2.3.tar.gz
tar -zxvf 7.2.3.tar.gz
rm -rf 7.2.3.tar.gz
# 安装编译所需依赖
sudo yum install -y gcc make pkg-config tcl
cd redis-7.2.3
# 进行编译与测试
make
make test
# 创建自定义安装文件夹
mkdir -p ~/software/redis
# 有 redis-server redis-cli redis-benchmark
make PREFIX=~/software/redis install
# 创建配置
mkdir ~/software/redis/conf
cp redis.conf ~/software/redis/conf/
# 修改相关配置
vim ~/software/redis/conf/redis.conf
# 非编辑模式下 /关键字 可以进行搜索, :noh 可以取消高亮

# 注销默认只能127.0.0.1访问
# bind 127.0.0.1 -::1
# 修改保护模式
protected-mode no
# 启动配置修改为守护进程
daemonize yes
# 设置访问密码
requirepass

# 删除临时目录
cd ~/software/redis
rm -rf ~/software/redis-temp
# 创建操作脚本
tee init.sh <<-'EOF'
#!/bin/bash
BASE_PATH=$(pwd)
if [[ "$1" = "start" ]];then
if [[ $(ps aux | grep redis-server | grep -v grep | wc -l) = 1 ]];then
echo "process has started"
exit 0
fi
$BASE_PATH/bin/redis-server $BASE_PATH/conf/redis.conf
echo "start success"
exit 0
elif [[ "$1" = "stop" ]];then
if [[ "$(ps aux | grep redis-server | grep -v grep | wc -l)" = "0" ]];then
echo "there's no redis-server running"
exit 0
fi
$BASE_PATH/bin/redis-cli shutdown
echo "stop success"
exit 0
elif [[ "$1" = "restart" ]];then
if [[ "$(ps aux | grep redis-server | grep -v grep | wc -l)" = "1" ]];then
$BASE_PATH/bin/redis-cli shutdown
fi
$BASE_PATH/bin/redis-server $BASE_PATH/conf/redis.conf
echo "restart success"
exit 0
else
echo "you input a mistake operation"
exit 1
fi
EOF
# 创建自启动服务
basePath=$(pwd)
sudo tee /usr/lib/systemd/system/redis-server.service <<EOF
[Unit]
Description=redis-server
After=network.target

[Service]
Type=forking
WorkingDirectory=$basePath
ExecStart=/bin/bash $basePath/init.sh start
ExecReload=/bin/bash $basePath/init.sh restart
ExecStop=/bin/bash $basePath/init.sh stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF
# 重启系统服务
sudo systemctl daemon-reload
# 开启redis
sudo systemctl start redis-server
# 开启开机自启动
sudo systemctl enable redis-server

# 连接redis
bin/redis-cli -a 密码 -p 6379

# 删除
sudo systemctl stop redis-server
sudo systemctl disable redis-server
sudo rm -rf /usr/lib/systemd/system/redis-server.service
rm -rf ~/software/redis

参考1
参考2

 评论