redis7.0编译安装 + bash安装脚本

这篇具有很好参考价值的文章主要介绍了redis7.0编译安装 + bash安装脚本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

以下操作在debian11、deiban12下演示,ubuntu通用,其它系列linux发行版自行安装依赖,其余一样
以7.2.1版本为例进行安装
最后的bash脚本是对前面的操作的封装,一键即配置完成,即可使用

一、编译安装

1.安装依赖

apt-get install build-essential autoconf automake

2.下载

redis官方下载页面
redis github页面

cd /usr/local

如果下载不下来,复制链接用迅雷这类工具下载后上传到服务器

wget https://github.com/redis/redis/archive/7.2.1.tar.gz

3.解压

tar -zxvf /usr/local/7.2.1.tar.gz

4.编译安装

cd redis-7.2.1

安装到/usr/local/redis

make && make install

5.配置文件

配置文件在源码包里面,复制配置文件到/etc

mkdir /etc/redis
cp /usr/local/redis-7.2.1/redis.conf /etc/redis/redis.conf

下面的命令测试运行,ctrl+c退出

/usr/local/bin/redis-server /etc/redis/redis.conf

6.修改配置文件

vi /etc/redis/redis.conf

守护模式开启
找到daemonize no,修改为daemonize yes(这个参数当适用systemctl管理时失效)

修改安全设置
requirepass xxx:设定密码访问(如果只是做缓存公开信息的话,可以不用密码)
bind 127.0.0.1:绑定的ip,在保护模式开启的情况下,只有绑定的ip才可以访问redis服务,建议添加#号注释,否则外部的设备无法访问,只能安装redis的访问。
protected-mode yes:保护模式,如果为yes,绑定的ip或输入密码才能访问。如果为no,则所有保护措施失效。
port:redis服务端口号,默认是6379,如果需要修改redis的访问端口,就通过修改该值实现

7.systemctl脚本管理

vi /usr/lib/systemd/system/redis.service

内容如下

[Unit]
Description=redis
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target

保存:wq

启动并开启启动

systemctl daemon-reload && systemctl start redis && systemctl enable redis && systemctl status redis

8.远程连接

使用redisinsight连接,不写账号,只写上面设定的密码即可
如果后期优化,可以设定账号密码,这里不再涉及

二、编译安装的一键脚本

1.创建脚本文件

vi /usr/local/redis7.sh

2.编辑

可能会卡在下载redis源码包上,可以注释掉wget这一行,然后上传其它地方下载的上传到/usr/local

#!/bin/bash

# 常量设置
redis_version="7.2.1" # redis版本
install_path="/usr/local" # 安装、操作目录

# 输入redis密码,如果为空则没有
read -p -"请输入一个redis密码:" redis_password

# 安装依赖
echo "......正在安装依赖......"
apt-get install -y build-essential autoconf automake
echo "......依赖安装完成......"

# 下载redis源码包
echo "......正在下载源码包......"
wget -P ${install_path} https://github.com/redis/redis/archive/${redis_version}.tar.gz 
echo "......源码包下载完成......"

# 解压缩
echo "......正在解压缩源码包......"
cd ${install_path}
tar -zxf ${install_path}/${redis_version}.tar.gz
echo "......源码包解压缩完成......"

# 编译安装
echo "......正在编译安装......"
cd ${install_path}/redis-${redis_version} && make && make install
echo "......编译安装完成......"

# 配置文件
echo "......正在修改配置文件......"
## 创建配置文件
mkdir /etc/redis
cp ${install_path}/redis-${redis_version}/redis.conf /etc/redis/redis.conf
## 修改配置文件(/etc/redis/redis.conf)
sed -i 's/daemonize no/daemonize yes/g' /etc/redis/redis.conf
## 修改默认密码,如果为空则开启所有ip都可以访问,如果不为空则使用密码访问
if [ ${#redis_password} -eq 0 ];
then
    echo "未输入密码,开启所有IP都能访问"
    sed -i 's/bind 127.0.0.1 -::1/# bind 127.0.0.1 -::1/g' /etc/redis/redis.conf
    sed -i 's/protected-mode yes/protected-mode no/g' /etc/redis/redis.conf
else
    echo "已设定密码"
    sed -i 's/bind 127.0.0.1 -::1/# bind 127.0.0.1 -::1/g' /etc/redis/redis.conf
    sed -i 's/# requirepass foobared/requirepass '"${redis_password}"'/g' /etc/redis/redis.conf
fi

## 持久化设定

echo "......修改配置文件完成......"

# 配置systemctl脚本
echo "......正在配置systemctl脚本......"

echo "......正在配置systemctl脚本......"
cat>/usr/lib/systemd/system/redis.service<<EOF
[Unit]
Description=redis
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload
systemctl start redis
systemctl enable redis
systemctl status redis

echo "......systemctl脚本配置完成......"
echo "......!!!脚本运行完成!!!......"

3.运行

sh /usr/local/redis7.sh

三、相关问题

1.报错: WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition.

解决方法

echo 1 > /proc/sys/vm/overcommit_memory

2.exact Failed to connect to any host resolved for DNS name
解决方法,注销配置文件中的绑定ip文章来源地址https://www.toymoban.com/news/detail-588731.html

到了这里,关于redis7.0编译安装 + bash安装脚本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • macOS 怎么安装redis数据库

    http://download.redis.io/releases/ 访问上述的redis下载的网址,确定你想要的版本 然后下载即可 (我选则的是6.2.6)  然后下载 下载后 把这个文件解压,放在自己想要放在的位置 注意:(2)有的同学可能运行redis-server报zsh: command not found: redis-server。 需要执行 sudo make install 命令并

    2024年02月16日
    浏览(37)
  • Linux安装Redis数据库,实现远程连接

    转发自cpolar内网穿透的文章:公网远程连接Redis数据库【内网穿透】 Redis作为一款高速缓存的key value键值对的数据库,在许许多多的场景中广泛使用,由于是把数据存储在内存中,所以读写效率极高。 下面介绍如何在内网虚拟机的linux中搭建redis并通过cpolar内网穿透实现公网访问

    2024年02月08日
    浏览(51)
  • 非关系型数据库Redis的安装

    一、关系型数据库与非关系型数据库的区别:---------面试高频率问题 1、首先了解一下 什么是关系型数据库? 关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织。 优点: 易于维护:都是使用表结构,格式一致; 使用方便:SQL语言通用,可

    2024年02月10日
    浏览(58)
  • 下一代实时数据库:Apache Doris 【二】编译与安装

    安装 Doris,需要先通过源码编译,主要有两种方式:使用 Docker 开发镜像编译(推荐)、直接编译。 直接编译的方式,可以参考官网:https://doris.apache.org/zh-CN/installing/compilation.html 2.1 安装 Docker 环境 Docker 要求 CentOS 系统的内核版本高于 3.10 ,首先查看系统内核版本是否满足 使用

    2024年02月14日
    浏览(61)
  • Window环境下不安装DM数据库,编译dmPython

    dmPython 是 DM 提供的依据 Python DB API version 2.0 中 API 使用规定而开发的数据库访问接口。dmPython 实现这些 API,使 Python 应用程序能够对 DM 数据库进行访问。 dmPython 通过调用 DM DPI 接口完成 python 模块扩展。在其使用过程中,除 Python标准库以外,还需要 DPI 的运行环境。 应用服务

    2024年02月04日
    浏览(35)
  • Linux centos安装Redis数据库并远程连接

      目录 前言 1. Linux(centos8)安装redis数据库 2. 配置redis数据库 3. 内网穿透 3.1 安装cpolar内网穿透 3.2 创建隧道映射本地端口 4. 配置固定TCP端口地址 4.1 保留一个固定tcp地址 4.2 配置固定TCP地址 4.3 使用固定的tcp地址连接 Redis作为一款高速缓存的key value键值对的数据库,在许许多多的

    2024年02月04日
    浏览(46)
  • 非关系型数据库---Redis安装与基本使用

    关系数据库管理系统(RDBMS) 非关系数据库管理系统(NoSQL) 按照预先设置的组织机构,将数据存储在物理介质上(即:硬盘上) 数据之间可以做无关联操作 (例如: 多表查询,嵌套查询,外键等) 主流的RDBMS软件:MySQL、MariaDB、Oracle、DB2、SQL Server;要存储的数据是有固定格式的

    2023年04月17日
    浏览(54)
  • redis高可用集群数据库的安装部署(6.2.12版本)

    第三阶段基础 时  间:2023年7月3日 参加人:全班人员 内  容: 6.2.12版本redis集群部署 目录 一、环境配置:【两台服务器】 二、redis多实例配置: 三、构建redis cluster集群 四、创建主从 五、故障转移实验 六、拓  展 安装部署:(一台主机,三主三从,redis版本为6.2.12) 实

    2024年02月12日
    浏览(47)
  • 非关系型数据库Redis的安装【Linux】及常用命令

     Redis(Remote Dictionary Server)是一种开源的内存数据库管理系统,它以键值存储方式来存储数据,并且支持多种数据结构,如字符串、哈希、列表、集合、有序集合等。Redis最初由Salvatore Sanfilippo开发,并于2009年首次发布。它被广泛用于缓存、会话管理、消息队列等应用,因为

    2024年02月05日
    浏览(47)
  • Linux 使用bash创建MYSQL数据库并导入数据库文件

    主要是杠一下的数据库123-456.sql,这个神经病一样,试了很多写法

    2024年01月22日
    浏览(67)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包