当前位置:网站首页>Shell之一键自动部署Redis任意版本
Shell之一键自动部署Redis任意版本
2022-07-01 04:33:00 【Moshow郑锴】
脚本用法:chmod 755 redis-install.sh && sh redis-install.sh {version} (后面 {version}的是你需要的版本号,需要什么版本就写什么版本),我这里安装的4.0.10
脚本内容如下展示:
#! /usr/bin/bash
##redis任何版本全程自动化源码编译安装
##用法:sh redis-install.sh 4.0.10 (后面跟的是你需要的版本号,需要什么版本就写什么版本),我这里安装的4.0.10
version=$1
usage(){
echo "usage: $0 version"
}
if [ $# -ne 1 ]
then
usage
exit -1
fi
#Redis安装包下载
cd /usr/local/src
if [ ! -f redis-${version}.tar.gz ]
then
curl -o /usr/local/src/redis-${version}.tar.gz http://download.redis.io/releases/redis-${version}.tar.gz
fi
#Redis依赖包安装
yum clean all
yum makecache fast
yum -y install gcc gcc-c++ tcl
#编译Redis所需要的gcc
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
source /opt/rh/devtoolset-9/enable
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
gcc --version
##内系统参数核优化
cat >> /etc/rc.d/rc.local << "EOF" ##关闭Linux的THP(内存管理系统)通过使用更大的内存页面,来减少具有大量内存的计算机上的TLB的开销 if [ -f /sys/kernel/mm/transparent_hugepage/enabled ] then echo never > /sys/kernel/mm/transparent_hugepage/enabled fi if [ -f /sys/kernel/mm/transparent_hugepage/defrag ] then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi EOF
chmod u+x /etc/rc.d/rc.local
if [ -f /sys/kernel/mm/transparent_hugepage/enabled ]
then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if [ -f /sys/kernel/mm/transparent_hugepage/defrag ]
then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
cat >> /etc/sysctl.conf << "EOF" #Linux系统内核参数优化 net.core.somaxconn = 2048 net.ipv4.tcp_max_syn_backlog = 2048 vm.overcommit_memory = 1 EOF
sysctl -p
cat > /etc/security/limits.conf << "EOF" root soft nofile 65535 root hard nofile 65535 * soft nofile 65535 * hard nofile 65535 EOF
#Redis编译安装
cd /usr/local/src
tar -zxvf redis-${version}.tar.gz
cd /usr/local/src/redis-${version}
make
make PREFIX=/usr/local/redis install
#Redis基础配置
mkdir -p /usr/local/redis/{
etc,logs,data}
egrep -v "^$|^#" /usr/local/src/redis-${version}/redis.conf > /usr/local/redis/etc/redis.conf
#sed -i "s/bind 127.0.0.1/bind 0.0.0.0/g" /usr/local/redis/etc/redis.conf
sed -i "s/protected-mode yes/protected-mode no/g" /usr/local/redis/etc/redis.conf
sed -i "s/daemonize no/daemonize yes/g" /usr/local/redis/etc/redis.conf
sed -i "s/pidfile \/var\/run\/redis_6379.pid/pidfile \/usr\/local\/redis\/redis.pid/g" /usr/local/redis/etc/redis.conf
sed -i "s/dir \.\//dir \/usr\/local\/redis\/data/g" /usr/local/redis/etc/redis.conf
sed -i "s/logfile \"\"/logfile \"\/usr\/local\/redis\/logs\/redis.log\"/g" /usr/local/redis/etc/redis.conf
sed -i "s/dbfilename dump.rdb/dbfilename dump.rdb/g" /usr/local/redis/etc/redis.conf
sed -i "s/appendfilename \"appendonly.aof\"/appendfilename \"appendonly.aof\"/g" /usr/local/redis/etc/redis.conf
#PATH配置
echo "export PATH=${
PATH}:/usr/local/redis/bin" >>/etc/profile
source /etc/profile
#启动redis服务
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
#查看redis监听端口
netstat -tanp|grep redis


到这里整改自动安装脚本已成功执行完毕,我们可以收到通过ps –ef|grep redis来查看服务状态以及监听端口。
登陆redis,执行简单的语句:
边栏推荐
- 283. move zero
- Browser top loading (from Zhihu)
- Loop filtering based on Unet
- Introduction of Spock unit test framework and its practice in meituan optimization___ Chapter I
- 为什么香港服务器最适合海外建站使用
- TCP server communication flow
- Question bank and online simulation examination for special operation certificate of G1 industrial boiler stoker in 2022
- TASK04|数理统计
- "Target detection" + "visual understanding" realizes the understanding of the input image
- Dual contractual learning: text classification via label aware data augmentation reading notes
猜你喜欢

分账技术赋能农贸市场,重塑交易管理服务效能

采购数智化爆发在即,支出宝'3+2'体系助力企业打造核心竞争优势

Knowledge supplement: basic usage of redis based on docker

Procurement intelligence is about to break out, and Alipay'3+2'system helps enterprises build core competitive advantages

LM small programmable controller software (based on CoDeSys) note 19: errors do not match the profile of the target

Daily algorithm & interview questions, 28 days of special training in large factories - the 13th day (array)

Account sharing technology enables the farmers' market and reshapes the efficiency of transaction management services

Class and object finalization

Recommend the best product development process in the Internet industry!

2022 polymerization process test questions and simulation test
随机推荐
JMeter learning notes 2 - brief introduction to graphical interface
Tencent has five years of testing experience. It came to the interview to ask for 30K, and saw the so-called software testing ceiling
Question bank and online simulation examination for special operation certificate of G1 industrial boiler stoker in 2022
Extension fragment
Introduction of Spock unit test framework and its practice in meituan optimization___ Chapter I
MySQL advanced -- you will have a new understanding of MySQL
Task04 | statistiques mathématiques
Maixll-Dock 使用方法
Embedded System Development Notes 81: Using Dialog component to design prompt dialog box
【无标题】
It's settled! 2022 JD cloud summit of JD global technology Explorer conference see you in Beijing on July 13
Use winmtr software to simply analyze, track and detect network routing
Tip of edge browser: enter+ctrl can automatically convert the address bar into a web address
NFT: start NFT royalty journey with eip-2981
OdeInt與GPU
为什么香港服务器最适合海外建站使用
Codeforces Round #721 (Div. 2)B1. Palindrome Game (easy version)B2. Palindrome game (hard version)
Spock单元测试框架介绍及在美团优选的实践___第一章
Account sharing technology enables the farmers' market and reshapes the efficiency of transaction management services
Offline installation of Wireshark 2.6.10