【Linux服务器Java环境搭建】010在linux中安装Redis,以及对Redis的配置与远程连接

系列文章目录

【Linux服务器Java环境搭建】


前言

好久没有更新博客了,今天下了班回到家,看到电脑桌上尘封已久的《Spring Boot应用开发实战》,翻开目录想起来之前写的系列【Linux服务器Java环境搭建】还未完结,那就继续吧,今天主要是按linux服务器中安装和配置redis。

一、redis是什么?

Redis 是一个开源的 (BSD 许可) 内存中数据结构存储,用作数据库、缓存和消息代理。它支持多种数据结构,如字符串、散列、列表、集合、有序集合、位图、超日志、地理空间索引和流。Redis 的全称是 "Remote Dictionary Server"(远程字典服务器)。

  • 内存存储:Redis 主要在内存中进行数据存储,虽然也可以将数据持久化到磁盘。内存存储使得 Redis 具有极高的读写性能,常用于缓存应用场景。

  • 丰富的数据结构:Redis 支持多种数据结构,除了简单的键值对(字符串),还包括哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)、位图(bitmaps)和 hyperloglogs 等。

  • 持久化:虽然 Redis 是内存数据库,但它提供了持久化功能,可以将内存中的数据定期保存到磁盘。Redis 提供两种持久化方式:RDB 快照(Redis Database)和 AOF(Append Only File)。

  • 发布/订阅:Redis 支持发布/订阅(Pub/Sub)模式,可以用于构建实时消息系统。

  • Lua 脚本:Redis 支持 Lua 脚本,允许在服务器端执行复杂的操作,减少网络开销和提高性能。

  • 高可用和分布式:Redis 提供了主从复制、哨兵(Sentinel)和 Redis 集群等功能,实现高可用性和数据分片,适用于大规模分布式系统。

  • 事务:Redis 支持事务,通过 MULTI、EXEC、WATCH 等命令可以实现事务功能。

  • 内置复制:Redis 支持主从复制,可以将数据从一个主节点复制到多个从节点,以实现数据冗余和负载均衡。

二、下载及安装

1.redis下载

下载地址:Downloads - Redis

2.redis安装

A.将安装包通过xftp上传到服务器目录/root/lzh/

B.在目录 /usr/local/ 下创建 redis ⽂件夹并进⼊

[root@lzh-2024 mysql]# cd /usr/local/
[root@lzh-2024 local]# mkdir redis
[root@lzh-2024 local]# cd redis

C.将刚下下载的Redis 安装包解压到 /usr/local/redis 中

[root@lzh-2024 redis]# tar zxvf /lzh/redis-stable.tar.gz -C ./

  解压完之后, /usr/local/redis ⽬录中会出现⼀个 redis-stable 的⽬录

D.编辑及安装

定位到目录/usr/local/redis/redis-stable,执行如下命令编译并安装redis

[root@lzh-2024 redis]# cd redis-stable/
[root@lzh-2024 redis-stable]# make && make install

二、配置

1.redis配置

A.将 REDIS 安装为系统服务并后台启动

进⼊ utils ⽬录,并执⾏如下命令./install_server.sh 

[root@lzh-2024 redis-stable]# cd utils/
[root@lzh-2024 utils]# ./install_server.sh 

执行后,提示如下信息

Welcome to the redis service installer
This script will help you easily set up a running redis serverThis systems seems to use systemd.
Please take a look at the provided example service unit files in this directory, and adapt and install them. Sorry!

解决方案如下

编辑文件install_server.sh ,执行命令 

[root@lzh-2024 utils]# vi install_server.sh 

注释调入下代码后,保存并退出:wq!

#bail if this system is managed by systemd
#_pid_1_exe="$(readlink -f /proc/1/exe)"
#if [ "${_pid_1_exe##*/}" = systemd ]
#then
#       echo "This systems seems to use systemd."
#       echo "Please take a look at the provided example service unit files in this directory, and adapt and install them. Sorry!"
#       exit 1
#fi

再次执行命令 ./install_server.sh ,根据提示一步一步执行,默认即可,最终配置如下

B.启动服务,并查看服务状态

[root@lzh-2024 utils]# systemctl start redis_6379.service
[root@lzh-2024 utils]# systemctl status redis_6379.service

C.启动REDIS客户端并测试

[root@lzh-2024 utils]# redis-cli
127.0.0.1:6379> set username lzh
OK
127.0.0.1:6379> get username
"lzh"
127.0.0.1:6379> 

如果要退出,直接输入exit即可

但是此时只能在本地访问,⽆法远程连接,下一步将开启远程连接

2.设置允许远程连接

修改redis配置文件

[root@lzh-2024 utils]# vi /etc/redis/6379.conf 

将 bind 127.0.0.1 修改为 0.0.0.0,如下图

bind 0.0.0.0  -::1

然后重启 Redis 服务

3.设置访问密码

编辑 redis 配置⽂件

[root@lzh-2024 utils]# vi /etc/redis/6379.conf 

把如下内容的注释去掉

#requirepass foobared

如下,可以自己定义密码,如admin

requirepass admin


保存退出后,重启redis服务

[root@lzh-2024 utils]# systemctl restart redis_6379.service

这样后续的访问需要先输⼊密码认证通过⽅可:

[root@lzh-2024 utils]# redis-cli
127.0.0.1:6379> get username
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth admin
OK
127.0.0.1:6379> get username
"lzh"
127.0.0.1:6379> 

三、总结

如上是在linux系统中离线安装redis的完整过程,如有错漏,请大家及时指出,感谢。

本系列其他文章,请查看系列【Linux服务器Java环境搭建】 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/46775.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实现异步天气数据获取与Spring缓存集成

你好呀,我是小邹。 在Web应用中,实时天气数据的获取是一个常见的需求,特别是在需要频繁更新天气信息的场景下,如旅游网站、天气应用或任何需要展示地理位置相关天气的应用。然而,频繁的外部API调用不仅会增加服务器的…

生成式AI的未来:对话的艺术与代理的实践

生成式 AI 的发展方向,是 Chat 还是 Agent? 随着生成式AI技术的不断进步,关于其未来发展方向的讨论也愈发激烈。究竟生成式AI的未来是在对话系统(Chat)中展现智慧,还是在自主代理(Agent&#x…

HDU1011——Starship Troopers(树形DP),HDU1012——u Calculate e,HDU1013——Digital Roots

目录 HDU1011——Starship Troopers(树形DP) 题目描述 运行代码 代码思路 树形DP HDU1012——u Calculate e 题目描述 运行代码 代码思路 HDU1013——Digital Roots 题目描述 超时代码 改进后依旧超时代码 运行代码 代码思路 HDU1011——…

前端转base64格式的字体图标方法

1.将需要的字体图标包下载到本地 2.访问 transfonter.org 将字体图标转成base64格式 如 这样就可以和正常的字体图标一样使用了

【Git】Git Submodules 介绍(通俗易懂,总结了工作完全够用的 submodule 命令)

Git Submodules 介绍 1、为什么你值得读这篇文章?2、为什么有 submodules?3、了解 Git Submodules3.1、如何让一个Git仓库变为另一个Git仓库的 submodule3.2、submodule 的父子关系存在哪里3.3、submodule 的父子关系信息怎么存 4、submodule 开发常用操…

Token Labeling(NeurIPS 2021, ByteDance)论文解读

paper:All Tokens Matter: Token Labeling for Training Better Vision Transformers official implementation:https://github.com/zihangJiang/TokenLabeling 出发点 ViTs的局限性:尽管ViTs在捕捉长距离依赖方面表现出色, 但…

永远向有结果的人学习!

生活是一场漫长的旅程,充满了挑战和机遇。在这个过程中,我们不断地学习、成长,并从他人的经验中汲取智慧。今天,我想和大家分享一个重要的生活哲学:永远向有结果的人学习。 1. 敢于顶撞与撒野 我依旧敢和生活顶撞&am…

第二篇 Vue项目的搭建

1、脚手架安装 npm init vuelatest:官方提供的Vue项目脚手架工具,帮助我们搭建一个最简单的vue应用。 2、vs打开项目文件夹 打开脚手架生成的文件夹到vs并安装volar插件,以便vs能够支持vue格式代码 3、启动项目 npm run dev:vu…

国产麒麟、UOS在线打开pdf加盖印章

PageOffice支持两种电子印章方案,可实现对Word、Excel、PDF文档加盖PageOffice自带印章或ZoomSeal电子印章(全方位保护、防篡改、防伪造)。Word和Excel的盖章功能请参考:Word和Excel加盖印章和签字功能 (目前只支持win…

css - - - - - 去除图片默认的白色背景(混合模式 mix-blend-mode)

去除图片默认的白色背景&#xff08;mix-blend-mode&#xff09; 1. 需求描述2. 原图展示3. 原代码展示4. 使用混合模式(mix-blend-mode)5.修改后效果 1. 需求描述 图片含有白色地图&#xff0c;想要将其去掉 2. 原图展示 3. 原代码展示 <div><img src*****/> &…

现场可重构CPLD芯片应用案例—蓝牙音箱

我司英尚微提供的高性能数模混合现场可重构IC、通用可配置的模数混合芯片内部集成丰富的模拟资源和数字资源&#xff0c;可轻松替代电路中的各种标准器件&#xff0c;并按照客户要求组合成最优小型ASIC&#xff0c;缩短开发周期&#xff0c;降低成本。下面介绍LS98002现场可重构…

vue3前端开发-小兔鲜项目-人气推荐栏目的前端渲染

vue3前端开发-小兔鲜项目-人气推荐栏目的前端渲染&#xff01;今天和大家分享一下&#xff0c;人气推荐栏目的前端页面如何渲染内容。 经历过上一次的&#xff0c;新鲜好物的栏目渲染之后&#xff0c;我们已经熟练了&#xff0c;vue3的接口调用&#xff0c;数据渲染到页面中的整…

golang开发环境搭建与踩坑记录

文章目录 一、安装下载1、go环境2、ide 二、基本使用1、运行2、结构体与方法函数指针3、闭包4、指针5、map6、接口7、异常 三、包管理1、go mod语法2、项目下载所有依赖 一、安装下载 1、go环境 下载地址&#xff1a;https://go.dev/dl/ 或者&#xff1a;https://golang.goog…

【动态规划】力扣2266.统计打字方案数

Alice 在给 Bob 用手机打字。数字到字母的 对应 如下图所示。在这里插入图片描述 为了 打出 一个字母&#xff0c;Alice 需要 按 对应字母 i 次&#xff0c;i 是该字母在这个按键上所处的位置。 比方说&#xff0c;为了按出字母 ‘s’ &#xff0c;Alice 需要按 ‘7’ 四次。…

DP-适配器模式代码重新理解

package com.designpatterns.adapter;/*** 定义鸭子接口*/ public interface Duck {/*** 定义鸭子呱呱叫(quack)*/public void quack();public void fly(); }package com.designpatterns.adapter;/*** 实现一个绿头鸭*/ public class MallarDuck implements Duck{Overridepubl…

Linux中运用xsync实现免密集群分发

一、前言 今天搭建了三台虚拟机的集群&#xff0c;在集群中部分操作在三台虚拟机上的操作都一致&#xff0c;为了提高效率&#xff0c;就需要配置xsync实现集群分发。 二、设置免密登录 1.生成公钥和私钥 ssh-keygen -t rsa一直敲回车&#xff0c;会生成两个文件&#xff0c…

灵雀云AML:赋能金融AI,构建数智时代核心竞争力

在人工智能&#xff08;AI&#xff09;技术的迅猛发展中&#xff0c;金融行业正迈入变革的新时代。AI不仅在优化投资决策、信用评估、实时监控和欺诈识别方面展现出强大功能&#xff0c;还极大地提升了客户体验、降低了运营成本&#xff0c;并推动了产品创新。面对智能时代的挑…

C#知识|账号管理系统:多条件动态查询条件的编写。

哈喽&#xff0c;你好啊&#xff0c;我是雷工&#xff01; 在项目开发中涉及到许多通过多个条件勾选来实现动态的多个条件查询的情况&#xff0c; 此节记录多条件查询的后台代码编写&#xff0c;以下为学习笔记。 01 实现原理 通过界面输入框输入或者下拉框下拉选择任意查询…

《RuoYi基于SpringBoot+Vue前后端分离的Java快速开发框架学习》系列博客_Part2_添加菜单

系列文章目录 Part1:启动RouYi 文章目录 系列文章目录Part1:启动RouYi 实现添加菜单功能来显示新的音图分析页面&#xff08;所截图片都是在已经添加菜单完成后的情况下&#xff09;一、建立一个菜单二、建立数据库1、通过数据库软件建立一个表&#xff0c;供我们使用&#xf…

【Ngix】快速上手,由浅入深

内容概述 1、nginx 简介 &#xff08;1&#xff09;介绍 nginx 的应用场景和具体可以做什么事情 &#xff08;2&#xff09;介绍什么是反向代理 &#xff08;3&#xff09;介绍什么是负载均衡 &#xff08;4&#xff09;介绍什么是动静分离 2、nginx 安装 &#xff08;1…