Redis 初始化安装脚本

 1 #!/bin/bash
 2 echo "Redis 初始化安装脚本"
 3 <<COMMENT
 4   注:
 5    AUTHOR: ws, 779269823@qq.com
 6    CREATED: 2019.11.06
 7    VERSION: 1.0
 8    Redis版本:4.0.11
 9    CentOS Linux release 7.6.1810 (Core) 
10 COMMENT
11 
12 #安装依赖库
13 yum install -y cpp binutils glibc-kernheaders glibc-common glibc-devel gcc make wget    
14 
15 #下载解压
16 cd /opt
17 wget -c http://download.redis.io/releases/redis-4.0.11.tar.gz
18 if [ -f /opt/redis-4.0.11.tar.gz ];then
19     tar zxvf redis-4.0.11.tar.gz
20     mv redis-4.0.11 /usr/local/redis
21     cd /usr/local/redis
22     make
23     cd src/
24     make install 
25 else
26     echo "文件不存在!"
27     exit;
28 fi
29 
30 #配置系统参数
31 echo 512 > /proc/sys/net/core/somaxconn
32 echo 1 > /proc/sys/vm/overcommit_memory
33 echo never > /sys/kernel/mm/transparent_hugepage/enabled
34 sed -i '/\# End of file/i * soft nofile 65535' /etc/security/limits.conf
35 sed -i '/\# End of file/i * hard nofile 65535' /etc/security/limits.conf
36 echo ulimit -SHn 65535 >> /etc/profile
37 source /etc/profile
38 
39 #Redis配置文件
40 sed -e "s/#.*//g" /usr/local/redis/redis.conf | awk '{if (length !=0) print $0}'
41 sed -i '136s/daemonize no/daemonize yes/' /usr/local/redis/redis.conf    
42 sed -i '69s/127.0.0.1/0.0.0.0/' /usr/local/redis/redis.conf 
43 sed -i '88s/protected-mode yes/protected-mode no/' /usr/local/redis/redis.conf
44 sed -i 's/^appendonly yes/appendonly no/' /usr/local/redis/redis.conf  
45 sed -i 's/^dbfilename dump.rdb/dbfilename dump.rdb/' /usr/local/redis/redis.conf 
46 sed -i 's/^dir .\//dir \/backup/' /usr/local/redis/redis.conf 
47 echo logfile /var/log/redis.log >> /usr/local/redis/redis.conf
48 mkdir -p /etc/redis
49 ln -s /usr/local/redis/redis.conf /etc/redis/6379.conf   
50 ln -s /usr/local/redis/utils/redis_init_script /etc/init.d/redisd    
51 /sbin/chkconfig redisd on
52 
53 #(开启redis服务,服务名为:redisd)
54 systemctl start redisd   
55 
56 #redis-cli  
57 netstat -ntpl|grep redis
58 echo "Redis 部署完成!"
59 echo " "
60 echo "如果系统是Centos 7在安装完毕后检查防火墙,可执行以下命令来放行redis 外部通信。"
61 echo "firewall-cmd --zone=public --add-port=6379/tcp --permanent"    
62 echo "firewall-cmd --reload"
63 echo "firewall-cmd --zone= public --query-port=6379/tcp"
64 
65 systemctl stop redisd
66 systemctl start redisd

猜你喜欢

转载自www.cnblogs.com/dblock/p/11808661.html
今日推荐