当前位置:网站首页>(脚本)一键部署redis任意版本 —— 筑梦之路
(脚本)一键部署redis任意版本 —— 筑梦之路
2022-07-05 00:05:00 【筑梦之路】
#!/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
chmod 755 redis-install.sh && sh redis-install.sh 4.0.10
搜集自网络,仅作参考
边栏推荐
- Business implementation - the log is written to the same row of data
- The pit of sizeof operator in C language
- 【监控】zabbix
- 跨域请求
- MIT-6.824-lab4B-2022(万字思路讲解-代码构建)
- 如何避免电弧产生?—— AAFD故障电弧探测器为您解决
- [monitoring] ZABBIX
- 如何有效对直流列头柜进行监测
- 人脸识别5- insight-face-paddle-代码实战笔记
- What is the difference between port mapping and port forwarding
猜你喜欢
基本放大电路的学习
ICML 2022 | 3dlinker: e (3) equal variation self encoder for molecular link design
Pytoch --- use pytoch to realize linknet for semantic segmentation
js如何实现数组转树
[论文阅读] TUN-Det: A Novel Network for Thyroid Ultrasound Nodule Detection
Using fast parsing intranet penetration to realize zero cost self built website
Summer challenge brings you to play harmoniyos multi terminal piano performance
端口映射和端口转发区别是什么
快解析内网穿透帮助企业快速实现协同办公
How many triangles are there in the golden K-line diagram?
随机推荐
公司要上监控,Zabbix 和 Prometheus 怎么选?这么选准没错!
IT转测试岗,从迷茫到坚定我究竟付出了什么?
Ap8022 switching power supply small household appliances ACDC chip offline switching power supply IC
【雅思阅读】王希伟阅读P4(matching1)
Power operation and maintenance cloud platform: open the new mode of "unattended and few people on duty" of power system
如何避免电弧产生?—— AAFD故障电弧探测器为您解决
Fs8b711s14 electric wine bottle opener MCU IC scheme development special integrated IC
「运维有小邓」域密码策略强化器
[JS] - [dynamic planning] - Notes
多回路仪表在基站“转改直”方面的应用
[论文阅读] CarveMix: A Simple Data Augmentation Method for Brain Lesion Segmentation
PermissionError: [Errno 13] Permission denied: ‘data. csv‘
人脸识别5- insight-face-paddle-代码实战笔记
Basic points of the game setup of the points mall
22-07-02周总结
人生无常,大肠包小肠, 这次真的可以回家看媳妇去了。。。
Application of fire fighting system based on 3D GIS platform
Netcore3.1 JSON web token Middleware
Skills in analyzing the trend chart of London Silver
Go pit - no required module provides Package: go. Mod file not found in current directory or any parent