活学活用,下午和GPT老师学习了使用systemctl,晚上就来搞个redis。

1.编译

安装libsystemd-dev库,没有装这个库的话会编译失败。
下面是离线安装的办法

sudo apt install --download-only  libsystemd-dev
cd /var/cache/apt/archives
# 把deb文件拷到要装的电脑
sudo dpkg -i *.deb

进入下载的tar包的路径

cd redis-7.0.11
make USE_SYSTEMD=yes PREFIX=/usr/local/redis install

两个参数比较好认,用systemd部署的时候一定要加上第一个,不然会报错:

第二个是指定路径,你不指定可以不加。

2.配置文件

网上说用./install_server.sh但是我装的时候报错:

只能自己动手了,先改一下文件的权限,建几个会用到的文件夹。

sudo chown -R username /usr/local/redis/
mkdir data
mkdir conf
mkdir logs

把redis-7.0.11里面的配置文件考到conf路径下。
我修改了这几个地方:

# redis.conf
bind 0.0.0.0
daemonize yes
supervised systemd
logfile "/usr/local/redis/logs/redis.log"

redis-7.0.11/utils/systemd-redis_server.service文件拷到/etc/systemd/system/路径下。
我修改了这几个地方:

ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
User=youruser
WorkingDirectory=/usr/local/redis/data/

然后就是GTP教我的三行指令

sudo systemctl daemon-reload
sudo systemctl enable systemd-redis_server.service
sudo systemctl start systemd-redis_server.service

没有输出就是成功,可以用下面的指令测试一下:
redis-cli

redis 127.0.0.1:6379> ping
PONG
04-28 13:25