Redis 安装

Jacky Linux 2021-11-25 13

在线安装

1,下载安装包并解压安装

wget http://download.redis.io/releases/redis-4.0.10.tar.gz
tar xzf redis-4.0.10.tar.gz
ln -s redis-4.0.10 redis
cd redis
make
cd src
mkdir /usr/redis
cp redis-server  /usr/redis
cp redis-benchmark /usr/redis
cp redis-cli  /usr/redis
cd ../
cp redis.conf  /usr/redis

2,修改配置

vim /usr/redis/redis.conf
# 1,去掉bind设置外网可访问
# bind 127.0.0.1

# 2,requirepass 设置的密码
requirepass licai123

# 3,设置后台启动
daemonize yes

# 4,服务端口设置
port 6379

# 5,key过期监听
notify-keyspace-events Ex

3,启动服务

cd /usr/redis
./redis-server redis.conf
ps -ef|grep redis-server

出现下列信息就标识启动成功

root       83480       1  0 15:43 ?        00:00:00 ./redis-server *:6379

4, 客户端连接测试

auth licai123
set key value
get key

显示

“value”

5,做成服务

编写脚本

vim /usr/redis/redis-service.sh
APP_HOME="/usr/redis"
APP_NAME="redis-server"

echo "APP_HOME:$APP_HOME"
echo "APP_NAME:$APP_NAME"

start(){

  cd $APP_HOME
  "./$APP_NAME" redis.conf
  echo "start successful"

}

stop(){

  pid=`ps -ef | grep "$APP_NAME" | grep -v "grep" | awk '{print $2}'`
  if [ "$pid" == "" ];then
    echo -en "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b"
    echo "stop successful"

  else
    echo -en "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\bstopping $1"
    kill $pid
    sleep 1
        val=`expr $1 + 1`
    stop $val

  fi
}

restart(){

   echo "restarting"

   stop 1
   start

   echo "restart successful"
}

status(){

  pid=`ps -ef | grep "$APP_NAME" | grep -v "grep" | awk '{print $2}'`

  if [ "$pid" == "" ];then

    echo "$APP_NAME is  stopped ..."

  else

    echo "$APP_NAME is  running ..."

  fi

}

case "$1" in

  start)
     start
  ;;

  stop)
     stop 1
  ;;

  status)
     status
  ;;

  restart)
     restart
  ;;

  *)
     echo $"Usage: $0 {start|stop|status|restart}"
     exit 1

esac

添加到服务

# 可以创建软连接(建议)
ln -s /usr/redis/redis-service.sh /etc/init.d/redis-service
# 直接移动或复制到目录
mv /usr/redis/redis-service.sh /etc/init.d/redis-service
cp /usr/redis/redis-service.sh /etc/init.d/redis-service

服务命令

service redis-service start
service redis-service restart
service redis-service stop
service redis-service status

5,常见问题

1,gcc没有安装

make[3]: gcc:命令未找到

缺少gcc,需要安装

yum -y  install gcc automake autoconf libtool make 

2,zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录

make MALLOC=libc # 执行命令

3, 没有权限

chmod +x /etc/init.d/redis-service