当前位置:网站首页>(脚本)一键部署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
搜集自网络,仅作参考
边栏推荐
- Jar batch management gadget
- 端口映射和端口转发区别是什么
- Réseau graphique: Qu'est - ce que le Protocole d'équilibrage de charge de passerelle glbp?
- ICML 2022 | 3dlinker: e (3) equal variation self encoder for molecular link design
- 如果炒股开华泰证券的户,在网上开户安全吗?
- What is the difference between port mapping and port forwarding
- P4408 [NOI2003] 逃学的小孩(树的直径)
- 城市轨道交通站应急照明疏散指示系统设计
- Data on the number of functional divisions of national wetland parks in Qinghai Province, data on the distribution of wetlands and marshes across the country, and natural reserves in provinces, cities
- Fast parsing intranet penetration helps enterprises quickly achieve collaborative office
猜你喜欢
IT转测试岗,从迷茫到坚定我究竟付出了什么?
【kotlin】第三天
如何用快解析自制IoT云平台
JS how to realize array to tree
Consolidated expression C case simple variable operation
ORB(Oriented FAST and Rotated BRIEF)
电力运维云平台:开启电力系统“无人值班、少人值守”新模式
多回路仪表在基站“转改直”方面的应用
js如何实现数组转树
ICML 2022 | 3dlinker: e (3) equal variation self encoder for molecular link design
随机推荐
挖财学院开户安全的吗?开户怎么开?
js如何实现数组转树
P4281 [AHOI2008]紧急集合 / 聚会(LCA)
如何报考PMP项目管理认证考试?
go踩坑——no required module provides package : go.mod file not found in current directory or any parent
AcWing164. 可达性统计(拓扑排序+bitset)
Hash table, hash function, bloom filter, consistency hash
基本放大电路的学习
Meet ThreadPoolExecutor
Is the account opening link of Huatai Securities with low commission safe?
Jar batch management gadget
快解析——好用的内网安全软件
Advanced template
[IELTS reading] Wang Xiwei reads P4 (matching2 paragraph information matching question [difficult])
华为200万年薪聘请数据治理专家!背后的千亿市场值得关注
Mit-6.824-lab4b-2022 (10000 word idea explanation - code construction)
Fs8b711s14 electric wine bottle opener MCU IC scheme development special integrated IC
Build your own minecraft server with fast parsing
同事的接口文档我每次看着就头大,毛病多多。。。
P4408 [NOI2003] 逃学的小孩(树的直径)