本次安装的是redis-5.0.10.tar.gz!简洁教程,防忘笔记!!!
(1)、官网下载:https://redis.io/download
(2)、网盘下载:链接:https://pan.baidu.com/s/1UjhhRbdi4UqDU_D4mza6bg 提取码:gytj
(1)、解压redis-5.0.10.tar.gz,并将解压后的包移至/usr/local
# 解压 tar -zxvf redis-5.0.10.tar.gz # 移动 mv redis-5.0.10 /usr/local/redis
(2)、查看redis当前目录
(1)、安装 gcc-c++:由于redis是由C语言编写的,它的运行需要C环境,因此我们需要先安装gcc。
yum install gcc-c++
(2)、对redis进行编译
PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,
库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis 即可删除redis。
执行结果如下图:
# 进入redis工作目录下 cd /usr/local/redis/ # 编译 make # redis安装 # PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。 # 比如我们现在就是指定了redis必须存放在/usr/local/redis目录。 # 假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录 make PREFIX=/usr/local/redis install
# 进入redis主目录 cd /usr/local/redis # 创建目录bin(启动,停止命令),conf(配置文件),logs(日志),data(持久化数据) mkdir bin mkdir conf mkdir logs mkdir data # 将redis目录下的redis.conf文件拷贝一份至conf文件夹下(redis主目录下的配置文件不动,作为备份) cp redis.conf ./conf/ # 进入bin目录,在bin目录下写redis启动脚本,停止脚本 cd /usr/local/redis/bin touch start.sh stop.sh chmod 777 start.sh stop.sh
start.sh 脚本内容:
#!/bin/sh #您可以在此处修改redis-server和conf的所在路径 REDIS_SERVER="/usr/local/redis/src/redis-server" REDIS_CLI="/usr/local/redis/src/redis-cli" REDIS_CONF="/usr/local/redis/conf/redis.conf" if [ ! -e $REDIS_SERVER ]; then echo "$REDIS_SERVER does not exist!" exit -1 fi if [ ! -e $REDIS_CONF ]; then echo "$REDIS_CONF does not exist!" exit -1 fi cmd="ps -ef | grep ${REDIS_SERVER} | grep -v grep | grep -v vim | grep -v defunct | awk '{ print \$2 }'" #echo $cmd PID=$(eval ${cmd}) #echo $PID if [ $PID"e" != "e" ]; then echo "redis-server is running, can't start" exit -1 else $REDIS_SERVER $REDIS_CONF & fi startfail=1 for i in `seq 0 180` do PID=$(eval ${cmd}) #echo $PID if [ $PID"e" != "e" ]; then ${REDIS_SERVER} --version echo "Redis server is started..." startfail=0 break fi sleep 1 done exit $startfail
stop.sh脚本内容:
#!/bin/sh #您可以在此处修改redis-server的所在路径 REDIS_SERVER="/usr/local/redis/src/redis-server" cmd="ps -ef | grep ${REDIS_SERVER} | grep -v grep | grep -v vim | grep -v defunct | awk '{ print \$2 }'" #echo $cmd PID=$(eval ${cmd}) if [ ${PID}"e" = "e" ]; then echo "redis-server is not started" exit -1 else kill $PID fi stopfail=1 for i in `seq 0 30` do PID=$(eval ${cmd}) #echo $PID if [ ${PID}"e" != "e" ]; then echo "redis-server is still running, waiting to stop[${i}]..." else echo "redis-server is stoped" stopfail=0 break fi sleep 1 done exit $stopfail
这里只记录了单机模式需要修改的配置项
修改/usr/local/redis/conf/redis.conf文件
# 这里配置是本机的网卡地址,表示外部通过什么网卡来连接访问redis, # 配置0.0.0.0或者不配置表示所有网卡都可以,具体解释请看本文开始的【Redis配置详解】 bind 0.0.0.0 # 后台进程运行 daemonize yes # redis日志 logfile "/usr/local/redis/logs/redis.log" # redis持久化文件目录 dir "/usr/local/redis/data" # redis密码 requirepass "123456" # 最大redis内存,达到这个就会触发内存淘汰机制 maxmemory 500M # 内存淘汰策略 maxmemory-policy volatile-lru # 开启aof appendonly yes
cd /usr/local/redis/bin ./start.sh