【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…

操作系统知识点详情-任务调度

本文目录 一、名词解释1. 调度器2. 优先级(1)优先级反转(2)优先级继承协议(3)优先天花板 3. 任务状态:新建、就绪、运行、阻塞、终止。4. 任务类型:计算密集型、I/O密集型5. 实时任务…

virsh命令使用笔记

远程查看 virsh -c qemutcp://root192.168.1.102:16510/system list --all 网络配置 virsh net-define net-name.xml 定义网络 virsh net-dumpxml net-name 当前网络xml virsh net-start net-name 启动网络 virsh net-autostart net-name 自启动网络 virsh net-destr…

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 开发常用操…

【SpringBoot】分页查询

1. Controller ApiOperation("分页查询")GetMapping("/page")public Result<PageResult> pageResultResult(EmployeePageQueryDTO employeePageQueryDTO) {System.out.println(employeePageQueryDTO.toString());PageResult pageResult employeeSer…

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

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

永远向有结果的人学习!

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

第二篇 Vue项目的搭建

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

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

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

Java实现简易线程池

一.线程池的概念 创建Java线程需要给线程分配堆栈内存以及初始化内存&#xff0c;还需要进行系统调用&#xff0c;频繁地创建和销毁线程会大大降低系统的运行效率&#xff0c;采用线程池来管理线程有以下好处&#xff1a; 提升性能&#xff1a;线程池能独立负责线程的创建、维…

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现场可重构…

【Windows】操作系统之任务管理器(第一篇)

一、操作系统简介 Windows操作系统是由微软公司&#xff08;Microsoft&#xff09;开发的一款图形操作系统&#xff0c;它以其强大的功能和广泛的用户基础&#xff0c;成为了目前世界上用户使用最多、兼容性最强的操作系统之一。以下是关于Windows操作系统的详细介绍&#xff…

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…

python的with语句

1.with语句的作用 在 Python 中&#xff0c;with 语句用于创建一个上下文管理器&#xff0c;以更简洁和安全的方式管理资源。 其主要优点是可以确保在代码块执行完毕后&#xff0c;相关资源能够被正确释放或清理&#xff0c;即使在代码块内部发生了异常。 以下是一个使用 with…

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

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