日志:348 评论:13
北京, 西城
【Redis】Redis学习笔记

准备工作

本地化

如果是新环境,我们需要设置时区以保证时间显示正确

timedatectl set-timezone Asia/Shanghai

安装wget

如果环境里没有wget,通过yum安装一下

yum -y install wget

安装gcc

如果环境里没有编译工具,通过yum安装一下

yum -y install gcc gcc-c++ make

安装依赖包

yum -y install 

建立环境根目录

mkdir -p /tongfu.net/env/

建立安装包目录并进入

mkdir /packages
cd /packages

安装Redis 4

准备

redis-4.0.10.tar.gz

下载安装包

wget http://download.redis.io/releases/redis-4.0.10.tar.gz

安装redis

tar -xzvf redis-4.0.10.tar.gz
cd redis-4.0.10
make
cd src
make install
mkdir -p /tongfu.net/env/redis-4.0.10/
mkdir -p /tongfu.net/env/redis-4.0.10/bin/
mkdir -p /tongfu.net/env/redis-4.0.10/conf/
cp redis-server /tongfu.net/env/redis-4.0.10/bin/
cp redis-cli /tongfu.net/env/redis-4.0.10/bin/
cd ..
cp redis.conf /tongfu.net/env/redis-4.0.10/conf/
cd ..

修改配置文件

修改配置文件为daemon启动方式

增加bind 0.0.0.0,允许通过本地所有IP访问

设置初始密码为tongfu.net

[root@tongfunet]# mkdir /tongfu.net/env/redis-4.0.10/data/
[root@tongfunet]# mkdir /tongfu.net/env/redis-4.0.10/logs/
[root@tongfunet]# vi /tongfu.net/env/redis-4.0.10/conf/redis.conf

daemonize yes

bind 0.0.0.0

requirepass tongfu.net

pidfile /tongfu.net/env/redis-4.0.10/data/redis.pid

logfile /tongfu.net/env/redis-4.0.10/logs/redis.log

dbfilename dump.rdb

dir /tongfu.net/env/redis-4.0.10/data/

启动脚本

编写启动脚本

[root@tongfunet]# cat > /tongfu.net/env/redis-4.0.10/bin/redis-start <<EOF
#!/bin/sh

# env
export PATH

# argv
redisroot=/tongfu.net/env/redis-4.0.10

# start
\$redisroot/bin/redis-server \$redisroot/conf/redis.conf
EOF

停止脚本

编写停止脚本

[root@tongfunet]# cat > /tongfu.net/env/redis-4.0.10/bin/redis-quit <<EOF
#!/bin/sh

# env
export PATH

# argv
redisroot=/tongfu.net/env/redis-4.0.10
pidfile=\$redisroot/data/redis.pid

# quit
pid="\`cat \${pidfile}\`"
if [ "" = "\`ps -ax|awk '{print \$1}'|grep -e "^\${pid}\$"\`" ] ; then
    /bin/rm -f \${pidfile}
else
    /bin/kill \$pid
fi
EOF

授权脚本

chmod 0755 /tongfu.net/env/redis-4.0.10/bin/redis-start
chmod 0755 /tongfu.net/env/redis-4.0.10/bin/redis-quit

自动启动

添加自动启动脚本

[root@tongfunet]# cat > /lib/systemd/system/redis.service <<EOF
[Unit]
Description=redis
After=network.target

[Service]
Type=forking
PIDFile=/tongfu.net/env/redis-4.0.10/data/redis.pid
ExecStart=/tongfu.net/env/redis-4.0.10/bin/redis-start
ExecStop=/tongfu.net/env/redis-4.0.10/bin/redis-quit
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF

使用 systemctl 管理 redis 服务

systemctl enable redis # 设置自动启动

systemctl start redis # 启动服务

systemctl stop redis # 停止服务

systemctl restart redis # 重启服务