#!/bin/bash
read -p 'input the version you want(like 5.0.5):' version
read -p 'input redis password:' password
read -p 'input local ip: ' ip
version=${version:-5.0.5}
password=${password:-"password"}
if [ ! "$ip" ];then
 echo 'must input local ip !'
 exit 1
fi
# version
VERSION=redis-$version
# download path
LOAD_PATH=/tmp
# install path
INSTALL_PATH=/apps/redis
if  [ ! -d $INSTALL_PATH ];then
 mkdir -p $INSTALL_PATH
fi
cd /tmp
# download source package
wget http://download.redis.io/releases/$VERSION.tar.gz
# decompression
tar -xf $VERSION.tar.gz
# compile and install
cd $VERSION
make && make install PREFIX=$INSTALL_PATH
cd $INSTALL_PATH
mkdir conf
cp /tmp/$VERSION/redis.conf  ./conf
#sed -i 's/logfile ""/logfile "access.log"/' conf/redis.conf
sed -i "s/# requirepass foobared/requirepass $password/" conf/redis.conf
sed -i 's/appendonly no/appendonly yes/' conf/redis.conf
sed -i 's/protected-mode no/protected-mode yes/' conf/redis.conf
sed -i "s/bind 127.0.0.1/bind 127.0.0.1 $ip/" conf/redis.conf
sed -i 's/daemonize no/daemonize yes/' conf/redis.conf
useradd redis
chown -R redis.redis $INSTALL_PATH
su  - redis
cd $INSTALL_PATH/bin
./redis-server ../conf/redis.conf

# 配置systemd管理

[Unit]
Description=Redis Server Manager
After=syslog.target
After=network.target [Service]
Type=simple
User=redis
Group=redis
PIDFile=/var/run/redis_6379.pid
ExecStart=/data/apps/redis/bin/redis-server /data/apps/redis/conf/redis.conf
ExecStop=/data/apps/redis/bin/redis-cli shutdown
Restart=always
#ReadWriteDirectories=/data/apps/redis/data
[Install]
WantedBy=multi-user.target

# 配置主从同步

 dir   /data/apps/redis/data
protectd-mode no
appendonly yes
bind 0.0.0.0
daemonize no slaveof $MASTER_IP $MASTER_PORT
slave-read-only no masterauth $MASTER_PWD
requirepass $SLAVE_PWD

脚本安装redis的更多相关文章

  1. 部署Redis(脚本安装)

    部署Redis(脚本安装) #/bin/bash # DES:Redis Deploy # Author: will_xue # Email:linuxcto@aliyun.com # DATE : ...

  2. 【redis运维】redis自己主动安装脚本(仅仅安装redis)

    Redis自己主动安装部署 本文总共分为4个部分:         redis自己主动安装脚本文件夹结构说明:         redis自己主动安装脚本内容:         redis的操作系统服 ...

  3. centos 下安装redis 通过shell脚本

      #! /bin/bash echo -e "开始安装redis服务\n" download_url=http://download.redis.io/releases/redi ...

  4. 【安装Redis】CentOS7 下安装NodeJs+Express+MongoDB+Redis

    Redis,V3.2,官网l官方链接:http://www.redis.io/download,参考:http://blog.csdn.net/mlks_2008/article/details/19 ...

  5. Linux(Centos)之安装Redis及注意事项

    1.redis简单说明 a.在前面我简单的说过redis封装成共用类的实现,地址如下:http://www.cnblogs.com/hanyinglong/p/Redis.html. b.redis是 ...

  6. Centos下安装Redis

    转自:http://nnzhp.cn/article/9/ 遇到问题,安装后并启动,redis-cli报错:Could not connect to Redis at 127.0.0.1:6379: ...

  7. 搭建LNAMP环境(五)- PHP7源码安装Redis和Redis拓展

    上一篇:搭建LNAMP环境(四)- 源码安装PHP7 一.安装Redis 1.创建redis用户组和用户 groupadd redis useradd -r -g redis -s /sbin/nol ...

  8. php扩展redis,编译安装redis服务

    首先安装redis扩展 https://github.com/phpredis/phpredis 下载http://redis.io/download 服务软件 cd到软件存放目录unzip phpr ...

  9. Docker Centos安装Redis以及问题处理

    之前一篇文章 Redis安装及主从配置 介绍了redis的安装配置,另一篇文件介绍了 Docker Centos安装Openssh .今天将两篇文件结合一下——在Docker Centos环境下搭建r ...

随机推荐

  1. lmir 随笔

    近期需要研究一些特征工程的工作,就打算把微软之前公布出来的特征都复现一遍,今天遇到的特征是 LMIR, 其实也就是language model for information retrieval的简写 ...

  2. es6新特性-解构表达式、Lambda表达式、局部变量及map/reduce方法

    循环内的变量在循环外可见,不合理: let定义的变量是局部变量: const修饰的是常量,不允许再次修改,类似于java中的static: 解构表达式:

  3. 方法1:使用Jenkins构建Docker镜像 --SpringCloud

    前提意义: SpringCloud微服务里包含多个文件夹,拉取仓库的所有代码,然后过根据选项参数使用maven编译打包指定目录的jar,然后再根据这个目录的Dockerfile文件制作Docker镜像 ...

  4. Apach Shiro MD5密码加密过程(明文生成密码过程)详细解析

    前言: 最近再项目当中使用的ApachShiro安全框架,对于权限和服务器资源的保护都有一个很好的管理.前期主要参考的文章有 项目中设计密码的加盐处理以及二次加密问题,跟着断点 一步步揭开Apach ...

  5. webapi session

    webapi中使用session 修改global.cs里面的内容 using System; using System.Web; using System.Web.Routing; using Sy ...

  6. leetcode 数组

    寻找数组的中心索引 给定一个整数类型的数组 nums,请编写一个能够返回数组"中心索引"的方法. 我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相 ...

  7. NEST 字符串sort

    text字符串sort会先分词.可先建立filed字段.并设置为keyword mapping public void Mapping() { var response = client.IndexE ...

  8. CSSTab栏下划线跟随效果

    神奇的 ~ 选择符 对于当前 hover 的 li ,其对应伪元素的下划线的定位是 left: 100%,而对于 li:hover ~ li::before,它们的定位是 left: 0. ul li ...

  9. flashdevelop调用ios方法

    来源:http://blog.csdn.net/zu12jing/article/details/7331397 flash开发工具用的是flashdevelop(由于flashdevelop还能直接 ...

  10. Ubuntu恢复默认界面命令

    命令: dconf reset -f /