#!/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. 92. 反转链表 II

    反转从位置 m 到 n 的链表.请使用一趟扫描完成反转.   说明: 1 ≤ m ≤ n ≤ 链表长度.   示例: 输入: 1->2->3->4->5->NULL, m ...

  2. Django重新添加字段然后迁移给定默认值依然迁移不生效

    1.将对应app下的migrations文件夹下面的除了__init__.py文件外全部删除 2.delete from django_migrations where app='当前模型的app名称 ...

  3. Winform 快速开发框架,上位机开发,工控机程序开发,CS程序开发

    1.当客户让你做个CS程序时,当你手上一穷二白,所有都要重复造轮,你是不是很烦. 2.但如果有一个通用的,快速开发框架,就可以把你从这些基础的工作解救出来,你专注做业务就好了. 3.本人其中一个项目的 ...

  4. tidb测试环境搭建

    tidb ansible 部署方式环境检查过于严格,测试环境往往达不到标准,需调整一些参数才能部署成功. 基于tidb2.0版本需要调整的参数 [tidb@ansible01 tidb-ansible ...

  5. Atcoder Grand Contest 036 D - Negative Cycle

    Atcoder Grand Contest 036 D - Negative Cycle 解题思路 在某些情况下,给一张图加或删一些边要使图合法的题目要考虑到最短路的差分约束系统.这一题看似和最短路没 ...

  6. [转]mongodb authentication 设置权限之后,新建个管理账户和一般数据库用户,在win 7 64bit 环境下测试使用实例

    如果之前安装mongodb时没有使用 --auth,那么必须要卸载MongoDB服务,进行重新安装,设置账号权限才生效! 主要是解决在测试使用mongo db 时候,总是出现的MongoAuthent ...

  7. open_vPGPv

    加密 // create an instance of the library PGPLib pgp = new PGPLib(); // Import the main company public ...

  8. Java任务调度框架Quartz教程

    一.什么是quartz作业调度? Quartz框架是一个全功能.开源的任务调度服务,可以集成几乎任何的java应用程序—从小的单片机系统到大型的电子商务系统.Quartz可以执行上千上万的任务调度. ...

  9. 前端开发 Vue Vue.js和Nodejs的关系

    首先vue.js 是库,不是框架,不是框架,不是框架. Vue.js 使用了基于 HTML 的模版语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据. Vue.js 的核心是一个允许你 ...

  10. python BeautifulSoup4--例子

    from bs4 import BeautifulSoup import requests import re #请求博客园首页 r=requests.get('http://www.cnblogs. ...