在Ubuntu下安装Redis

文章目录

  • 前言
  • 一、配置JAVA运行环境
  • 二、Ubuntu下安装Redis
    • 1.安装c语言编译环境
    • 2.下载解压Redis
    • 3.make编译
    • 4.启动Redis
    • 4.运行Redis
  • 三、性能测试
  • 总结


前言

版本
jdk版本:jdk-17_linux-x64_bin
地址:https://www.oracle.com/cn/java/technologies/downloads/
Ubuntu版本:Ubuntu-22.04
Redis版本:redis-7.2.3
Redis官网:https://redis.io/

如果想从Windows本机中往虚拟机中传文件,博主这边建议选用Xshell和Xftp7
官网地址:https://www.xshell.com/zh/xshell/


一、配置JAVA运行环境

1.在刚安装Ubuntu的时候是没有root用户的,所以需要先设置一个root用户

sudo passwd root 

博主这里因为sudo命令需要输入当前用户的密码,之后即可连续两次输入自定义的root密码回车即可。

2.切换用户命令

su root

3.下载解压jdk17
将jdk解压到/usr/local
在使用Xftp7文件传输工具的时候,可能会遇到文件传输错误问题,博主这里的原因是传输到虚拟机的目录文件权限不够,对当前jdk安装目录进行权限控制

chmod 777 /usr/local

之后就可以用Xftp7进行文件传输了。

4…修改配置文件
输入命令

vim ~/.bashrc

然后在文件最下面添加如下代码

export JAVA_HOME=/usr/local/jdk-17.0.9

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

退出之后运行source命令

source ~/.bashrc

验证java是否安装成功

java -version

出现jdk对应版本即是安装成功

二、Ubuntu下安装Redis

1.安装c语言编译环境

因为Redis是c语言写的,所以在运行时需要安装c语言编译环境(如果因为权限问题,建议在命令前加sudo

apt-get update
apt install gcc

安装完成后检测是否安装成功

gcc --version

如果出现对应的版本,既是安装成功。

2.下载解压Redis

将下载好的Redis压缩包放在/usr/local内,然后进行解压

tar -zxvf redis-xxx

进入redis目录即可看到文件结构:
在这里插入图片描述

3.make编译

在当前目录(/usr/local/redis-7.2.3)下输入make命令即可进行编译

如果当前输入make命令报错,可能是因为make没有安装
sudo apt install make

在这里插入图片描述

Redis默认安装路径/usr/local/bin
在这里插入图片描述

  • redis-benchmark:性能测试工具,查看自己的性能如何

  • redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲

  • redis-check-rdb:修复有问题的dump.rdb文件

  • redis-cli:客户端,操作入口

  • redis-sentinel:Redis集群使用

  • redis-server:Redis服务器启动命令

4.启动Redis

将Redis的配置文件拷贝到usr/local/bin/gconfig

cp redis.conf /usr/local/gconfig

这里的gconfig是我自己创的一个文件夹
mkdir gconfig

因为redis默认不是后台启动,所以我们要修改Redis的配置文件

vim redis.conf

在这里插入图片描述
启动命令:

redis-server gconfig/redis.conf

注意:博主这里遇到了一个报错:

#WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add ‘vm.overcommit_memory = 1’ to /etc/sysctl.conf and then reboot or run the command ‘sysctl vm.overcommit_memory=1’ for this to take effect.

永久解决方案:编辑 /etc/sysctl.conf 文件,加入下面参数。在执行 sysctl -p

vm.overcommit_memory = 1

之后就能正常启动了。

4.运行Redis

1.客户端运行命令

redis-cli -p 6379

2.ping一下验证是否连接成功,出现PONG则连接成功
在这里插入图片描述
3.查看redis服务启动情况

ps -ef|grep redis

在这里插入图片描述
4.退出连接

shutdown

此时出现not connected提示,输入exit即可。
在这里插入图片描述

三、性能测试

redis-benchmark是一个官方自带的性能测试工具!
在这里插入图片描述

redis-benchmark -h localhost -p 6379 -c 100 -n 100000

在这里插入图片描述


总结

以上就是博主搭建的过程和踩到的一些坑,希望能对你搭建的过程有所帮助。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu 创建并发布 Django 项目

Ubuntu 创建并发布 Django 项目 升级操作系统和软件 sudo apt updatesudo apt -y dist-upgrade 安装 python3-pip sudo apt -y install python3-pip安装 django pip install -i https://pypi.tuna.tsinghua.edu.cn/simple djangosudo apt -y install python3-django创建 dj…

Django基础介绍及HTTP请求

文章目录 Django框架的介绍Django的安装 Django框架开发创建项目的指令Django项目的目录结构URL 介绍视图函数(view)Django 中的路由配置带有分组的路由和视图函数带有命名分组的路由和视图函数 HTTP协议的请求和响应HTTP 请求HTTP 响应GET方式传参POST传递参数form 表单的name…

数字媒体技术基础之:分辨率

分辨率 Resolution,中国大陆译为“分辨率”,中国香港地区、中国台湾地区分别译为“解像度”和“解析度”,泛指测量设备对细节的分辨能力。 ◆ ◆ ◆ 图像尺寸 在数字图像处理中,像素 Pixel是一个无具体物理尺寸的抽象单位。 一张…

第18章 类集框架

通过本章需要掌握Java设置类集的主要目的与实现原理,掌握Collection接口的作用及小狐妖操作方法,掌握Collection子接口List、Set的区别及常用子类的使用与核心实现原理,掌握Map接口的作用及与Collection接口的区别,理解Map接口设计…

主题模型LDA教程:主题数选取 困惑度perplexing

文章目录 LDA主题数困惑度1.概率分布的困惑度2.概率模型的困惑度3.每个分词的困惑度 LDA主题数 LDA作为一种无监督学习方法,类似于k-means聚类算法,需要给定超参数主题数K,但如何评价主题数的优劣并无定论,一般采取人为干预、主题…

postgresql实现job的六种方法

简介 在postgresql数据库中并没有想oracle那样的job功能,要想实现job调度,就需要借助于第三方。本人更为推荐kettle,pgagent这样的图形化界面,对于开发更为友好 优势劣势Linux 定时任务(crontab) 简单易用…

链表题(2)

链表题 今天给大家带来道链表题的练习 移除链表元素 这道题上篇文章已经解决过一次,这次我们换一个思路来解决这个问题。 先把链接给大家奉上: https://leetcode.cn/problems/remove-linked-list-elements/description/ 题目描述: 给你一个…

AI:70-基于机器学习的水质检预测

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…

【强化学习】18 —— SAC( Soft Actor-Critic)

文章目录 前言最大熵强化学习不同动作空间下的最大熵强化学习基于能量的模型软价值函数最大熵策略 Soft Q-learningSoft Q-IterationSoft Q-Learning近似采样与SVGD伪代码 Soft Actor-Critic伪代码代码实践连续动作空间离散动作空间 参考与推荐 前言 之前的章节提到过在线策略…

leetcode(力扣) 51. N 皇后 (回溯,纸老虎题)

文章目录 题目描述思路分析对于问题1对于问题2 完整代码 题目描述 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数…

字符加密A--E,B-F,W--A

文章目录 前言一、题目描述 二、题目分析 三、解题 程序运行代码 前言 本系列为选择结构编程题&#xff0c;点滴成长&#xff0c;一起逆袭。 一、题目描述 二、题目分析 三、解题 程序运行代码 #include<stdio.h> int main(){char c;cgetchar();if(c>a&&…

不想用了PVE了怎么办?那就迁移到VMware呗!

正文共&#xff1a;1111 字 20 图&#xff0c;预估阅读时间&#xff1a;1 分钟 有不少小伙伴用完PVE之后&#xff08;PVE8.0-2安装使用快速指导&#xff09;&#xff0c;跟我的感觉是一样的&#xff0c;就是有点拉胯&#xff0c;转而想换一个虚拟化软件&#xff0c;比如说VMwar…

【Java】注解(Annotation)

1.注解 就是lava代码里的特殊标记&#xff0c;比如:Override、Test等&#xff0c;作用是:让其他程序根据注解信息来决定怎么执行该程序。注意:注解可以用在类上、构造器上、方法上、成员变量上、参数上、等位置处。 如下Override所示&#xff1a; 2.自定义注解 就是自己定义…

火爆进行中的抖音双11好物节,巨量引擎助5大行业商家开启爆单之路!

抖音双11好物节目前正在火热进行中&#xff0c;进入爆发期&#xff0c;各大商家“好招”频出&#xff0c;都想要实现高速增长。依托“人群、货品、流量”三大优势&#xff0c;巨量引擎一直都是商家生意增长的给力伙伴&#xff0c;在今年的抖音双11好物节&#xff0c;巨量引擎就…

第 371 场 LeetCode 周赛题解

A 找出强数对的最大异或值 I 模拟 class Solution { public:int maximumStrongPairXor(vector<int> &nums) {int n nums.size();int res 0;for (auto x: nums)for (auto y: nums)if (abs(x - y) < min(x, y))res max(res, x ^ y);return res;} };B 高访问员工 …

通信世界扫盲基础二(原理部分)

上次我们刚学习了关于通信4/G的组成和一些通识&#xff0c;今天我们来更深层次了解一些原理以及一些新的基础~ 目录 专业名词 LTE(4G系统) EPC s1 E-UTRAN UE UU X2 eNodeB NR(5G系统) NGC/5GC NG NG-RAN Xn gNodeB N26接口 手机的两种状态 空闲态 连接态 …

Halcon WPF 开发学习笔记(3):WPF+Halcon初步开发

文章目录 前言在MainWindow.xaml里面导入Halcon命名空间WPF简单调用Halcon创建矩形 前言 本章会简单讲解如何调用Halcon组件和接口&#xff0c;因为我们是进行混合开发模式。即核心脚本在平台调试&#xff0c;辅助脚本C#直接调用。 在MainWindow.xaml里面导入Halcon命名空间 …

Leetcode—765.情侣牵手【困难】

2023每日刷题&#xff08;二十七&#xff09; Leetcode—765.情侣牵手 并查集置换环思路 参考自ylb 实现代码 class Solution { public:int minSwapsCouples(vector<int>& row) {int n row.size();int len n / 2;vector<int> p(len);iota(p.begin(), p.…

探索项目管理软件的多重用途和益处

项目管理软件俨然成了当下项目管理话题中的热门词条&#xff0c;作为一个辅助性管理工具&#xff0c;项目管理软件有什么用&#xff1f;真的值得购入吗&#xff1f; 什么是项目管理软件 顾名思义&#xff0c;项目管理软件就是指在项目管理过程使用的各种软件工具。项目管理软件…

「Verilog学习笔记」4bit超前进位加法器电路

专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点&#xff0c;刷题网站用的是牛客网 分析 timescale 1ns/1nsmodule lca_4(input [3:0] A_in ,input [3:0] B_in ,input C_1 ,output wire CO ,output wire [3:0] …