Centos7编译安装redis

港控/mmm° 2022-01-23 06:51 394阅读 0赞
  1. yum -y install gcc-c++
  2. wget http://59.80.44.48/download.redis.io/releases/redis-5.0.4.tar.gz
  3. tar -xvf redis-5.0.4.tar.gz -C /usr/local/
  4. cd /usr/local/redis-5.0.4/
  5. make
  6. make PREFIX=/usr/local/redis install
  7. 如果不做成systemctl服务
  8. vim /usr/local/redis-5.0.4/redis.conf
  9. daemonize yes 以守护进程的方式运行在后台
  10. /usr/local/redis-5.0.4/src/redis-server /usr/local/redis-5.0.4/redis.conf 启动
  11. /usr/local/redis-5.0.4/src/redis-cli shutdown 停止
  12. systemctl服务执行以下步骤
  13. vim /usr/lib/systemd/system/redis.service
  14. [Unit]
  15. Description=Redis persistent key-value database
  16. After=network.target
  17. [Service]
  18. ExecStart=/usr/local/redis-5.0.4/src/redis-server /usr/local/redis-5.0.4/redis.conf --supervised systemd 指定启动用哪里的配置文件启动
  19. ExecStop=/usr/libexec/redis-shutdown
  20. Type=notify
  21. User=redis
  22. Group=redis
  23. RuntimeDirectory=redis
  24. RuntimeDirectoryMode=0755
  25. [install]
  26. WantedBy=multi-user.target
  27. vim /usr/libexec/redis-shutdown 停止脚本
  28. #!/bin/bash
  29. test x"$REDIS_DEBUG" != x && set -x
  30. REDIS_CLI=/usr/local/redis-5.0.4/src/redis-cli
  31. SERVICE_NAME="$1"
  32. if [ -z "$SERVICE_NAME" ]; then
  33. SERVICE_NAME=redis
  34. fi
  35. CONFIG_FILE="/etc/$SERVICE_NAME.conf"
  36. HOST=`awk '/^[[:blank:]]*bind/ { print $2 }' $CONFIG_FILE | tail -n1`
  37. PORT=`awk '/^[[:blank:]]*port/ { print $2 }' $CONFIG_FILE | tail -n1`
  38. PASS=`awk '/^[[:blank:]]*requirepass/ { print $2 }' $CONFIG_FILE | tail -n1`
  39. SOCK=`awk '/^[[:blank:]]*unixsocket\s/ { print $2 }' $CONFIG_FILE | tail -n1`
  40. HOST=${HOST:-127.0.0.1}
  41. if [ "$SERVICE_NAME" = redis ]; then
  42. PORT=${PORT:-6379}
  43. else
  44. PORT=${PORT:-26739}
  45. fi
  46. [ -z "$PASS" ] || ADDITIONAL_PARAMS="-a $PASS"
  47. if [ -e "$SOCK" ] ; then
  48. $REDIS_CLI -s $SOCK $ADDITIONAL_PARAMS shutdown
  49. else
  50. $REDIS_CLI -h $HOST -p $PORT $ADDITIONAL_PARAMS shutdown
  51. fi
  52. useradd -r redis -s /sbin/nologin
  53. chmod a+x /usr/libexec/redis-shutdown
  54. vim /usr/local/redis-5.0.4/redis.conf
  55. logfile /var/log/redis/redis_log.log 日志目录,不做日志可以不写
  56. dir /usr/local/redis/redis_dbfile/ 存放dump.rdb的目录
  57. mkdir /usr/local/redis/redis_dbfile/
  58. chmod 777 /usr/local/redis/redis_dbfile/ 存放dump.rdb的目录
  59. {如果不想定义日志文件位置可不做
  60. mkdir /var/log/redis
  61. touch /var/log/redis/redis_log.log
  62. chmod -R 777 /var/log/redis/
  63. }
  64. cp /usr/local/redis-5.0.4/redis.conf /etc/ 若不做日志定义,可不执行这条(配置文件不参考etc下的这个、而是启动脚本哪个)
  65. systemctl daemon-reload
  66. systemctl start redis
  67. systemctl enable redis.service
  68. systemctl stop redis

发表评论

表情:
评论列表 (有 0 条评论,394人围观)

还没有评论,来说两句吧...

相关阅读