当前位置: 首页 > news >正文

Redis的安装与启动

一、Linux环境安装&启动Redis

1. 安装步骤 

第一步:在官网下载好Redis安装包,上传到Linux中并进行解压到相应(如/opt/software/)目录中;(注意:完成了第二步后,即安装了C/C++语言编译器后,再进行解压,否则执行make编译命令时会报错有个目录没有!)

第二步:执行如下命令,安装C/C++语言编译器;(官网下载的Redis安装包是需要编译后才可以安装的,而Redis是用C/C++语言编写的,CentOS7是没有安装这两款编译器的,所以需要先安装这两款编译器)

yum -y install gcc gcc-c++

执行以上命令时,报错找不到镜像。以下为解决方案: 

(1)首先,根据百度AI给出的上面图片中的方法执行后,再执行上面安装编译器的命令还是报错,报错信息为:Cannot find a valid baseurl for repo: base/7/x86_64 ;

(2)然后,根据下面两篇文章的内容,又执行命令 ping 114.114.114.114 能ping通,说明电脑可以上网;再执行 nslookup www.baidu.com(或 ping www.baidu.com)发现无法解析或连接,说明是DNS配置的问题

(3)针对DNS配置问题的解决步骤依次为:

  • 进入目录 cd /etc/sysconfig/network-scripts/
  • 打开该目录下的文件并编辑 vi ifcfg-ens33
  • 新加一行,如下图:

        

  • 重启网络:systemctl restart network.service
  • 再次执行 ping www.baidu.com时,发现OK了。

最后再安装编译器就没问题了。

参考文章:

centos7 yum安装使用时提示 cannot find a valid baseurl for repo:base/7/x86_64 的解决方法(亲测有效☆)_cannot find a valid baseurl for repo: base/7/x86_6-CSDN博客


Linux 用yum安装软件提示 cannot find a valid baseurl for repo:base/7/x86_64 的解决方法_cannot find a valid baseurl for repo: base/7/x86_6-CSDN博客
 

安装好编译期之后,执行下面命令就可以查看到gcc的版本了。

gcc -v

第三步:进入已解压的Redis根目录下,执行make命令进行编译,当看到下图时表示编译成功;

    

第四步:还是在根目录下,执行make install命令进行安装,看到如下图片表示安装成功。

   

Redis的默认安装目录是/usr/local/bin,如下图。

通过执行echo $PATH 可以看到,/usr/local/bin目录是存在于该系统变量中的,这样这些命令就可以在任意目录中执行了。

另外,以下的图片“安装常见问题”来源于马士兵李瑾老师:

2. 启动

Redis有三种方法启动Redis:默认配置、带参数启动、配置文件启动。

1)默认配置启动

前台启动命令:.bin/redis-server

后台启动命令:nohup redis-server &

2)带参数启动

redis-server加上要修改配置名和值(可以是多对),没有设置的配置将使用默认配置,例如:如果要用6380作为端口启动Redis,那么可以执行:./redis-server --port 6380

3)配置文件启动(推荐)

生产环境用的这种。通常可以复制一下配置文件redis.conf,然后在这个文件中修改自己的配置。

# myredis-conf这个文件夹是新建的
[root@centos105 redis6]# cp redis.conf myredis-conf/

查看Redis进程是否启动的命令: 

4)配置文件属性解读&修改

# daemonize属性值由no改为yes,使Redis进程以守护进程方式运行
daemonize no# 指定 Redis 监听端口,默认端口为 6379
port 6379# 下面这行代码注释掉,protected-mode属性改为no,其他主机也能够访问了;或者设置为bind *
# bind 127.0.0.1 -::1
bind *# protected-mode默认是yes保护模式
protected-mode no# 通过requirepass这个属性可以设置访问Redis的密码,默认不需要密码
# requirepass foobared# 当客户端闲置多长时间后关闭连接(单位:秒),如果指定为0表示永远不超时
timeout 0# 配置日志的级别。共4个级别,由低到高依次为:debug/verbose/notice/warning
loglevel notice# 设置数据库的数量,默认是使用0号数据库
databases 16# 设置Redis可并发处理的客户端连接数量,默认是1万
# maxclients 10000# 设置内存使用的最大字节数。当达到内存限制时,将根据maxmemory-policy删除符合条件的key
# maxmemory <bytes># 移除内存的策略,共8种策略。noeviction表示不移除任何内容,只是在写操作时返回一个错误
# maxmemory-policy noeviction

将myredis-conf/redis.conf配置文件做以下修改后,使用配置文件启动: 

daemonize no
# bind 127.0.0.1 -::1
protected-mode no

[root@centos105 redis6]# redis-server myredis-conf/redis.conf

扩展:Redis key的8种移除策略 

  • volatile-lru -> Evict using approximated LRU, only keys with an expire set.(使用近似LRU算法移除key,仅用于设置了过期时间的key)
  • allkeys-lru -> Evict any key using approximated LRU.(使用近似LRU算法移除key,适用于所有类型的key)
  • volatile-lfu -> Evict using approximated LFU, only keys with an expire set.
  • allkeys-lfu -> Evict any key using approximated LFU.
  • volatile-random -> Remove a random key having an expire set.(移除任意设置了过期时间的key)
  • allkeys-random -> Remove a random key, any key.(随机移除一个key)
  • volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
  • noeviction -> Don't evict anything, just return an error on write operations.

LRU:Least Recently Used(最近最少使用)
LFU:Least Frequently Used(最不常用)

3. 停止

使用如下命令进行停止:

redis-cli -p 6379 shutdown

二、Redis客户端的使用

Redis客户端也像MySQL客户端一样有多种分类:命令行客户端(redis-cli),图形界面客户端,Java代码客户端。下面介绍Java代码客户端和图形界面客户端。

2.1 Java代码客户端

其实就是一套操作Redis的API,其作用就像JDBC一样,所以Java代码客户端其实就是一个或多个jar包,提供了对Redis的操作接口。对Redis操作的API很多,如jdbc-redis、jredis等,但最常用的也是最有名的是Jedis。

2.2 图形界面客户端

(1)Redis Desktop Manager

该软件原来免费,从0.8.8版本后变为收费的。官网:https://resp.app/ 

原来的官网是 http://redisdesktop.com

(2)RedisPlus

开源免费的。官网:https://gitee.com/MaxBill/RedisPlus  

(3)RedisInsight (推荐)

Redis有两个网站,开源免费的是 https://redis.io,企业收费的是  https://redis.com。去收费的官网下载RedisInsight 

相关文章:

Redis的安装与启动

一、Linux环境安装&启动Redis 1. 安装步骤 第一步&#xff1a;在官网下载好Redis安装包&#xff0c;上传到Linux中并进行解压到相应&#xff08;如/opt/software/&#xff09;目录中&#xff1b;&#xff08;注意&#xff1a;完成了第二步后&#xff0c;即安装了C/C语言…...

WebGIS航线编辑器(无人机航线规划)

无人机航点、航线规划&#xff0c;实现全自动航点飞行作业及飞行航拍。禁飞区、作业区功能保障飞行安全。 GIS引擎加载 const viewer new Cesium.Viewer("cesiumContainer", { imageryProvider: new Cesium.IonImageryProvider({ assetId: 3872 }), }); const im…...

STEP 格式三维模型读取

STEP是常用的三维模型存储格式&#xff0c;使用Express语言描述几何图形&#xff0c;文件存储方式为BRep&#xff0c;分为STEP203和STEP214&#xff0c;后者多了颜色信息&#xff0c;opencascade中提供了相应算法读取STEP文件。 #include <STEPControl_Reader.hxx>TopoD…...

Mora: Enabling Generalist Video Generation via A Multi-Agent Framework

目录 论文地址&#xff1a;Mora: Enabling Generalist Video Generation viaA Multi-Agent Framework github地址&#xff1a;https://github.com/lichao-sun/Mora 一、摘要 &#xff08;1&#xff09;Mora 的主要特点&#xff1a; &#xff08;2&#xff09;Mora的应用场景…...

[c++] 自写 MyString 类

实现了 MyString 类&#xff0c;同时实现了运算符重载&#xff0c;重载的运算符包括 <、>、、!、<<、>>、[] 等。 如果一个类重载了某个运算符&#xff0c;那么对这个类的对象进行操作的时候便会使用类重载的运算符。比如下边代码 MyString 类中重载了 <、…...

三、阅读器开发--4、阅读器目录、全文搜索功能开发

1、阅读器目录 1.1、实现目录 先实现目录的布局 定义一个蒙版&#xff0c;充满整个屏幕浮在阅读器上方&#xff0c;左侧为目录右侧为背景&#xff0c;目录下方包含一个tab&#xff0c;点击后会切换不同的内容&#xff0c;这里tab是目录、书签&#xff0c;这里可以通过如下的…...

AMEYA360代理 | 江苏长晶科技FST2.0高性能 IGBT产品介绍

江苏长晶科技股份有限公司是一家专业从事半导体产品研发、生产和销售的企业。自2019年起&#xff0c;连续4年被中国半导体行业协会评为 “功率器件十强企业”。2021年开始自主研发有着“工业CPU”之称的IGBT&#xff0c;截至2023年Q3在家电/工业/新能源等行业实现8款产品市场应…...

基于springboot+vue+Mysql的网上图书商城

开发语言&#xff1a;Java框架&#xff1a;springbootJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;…...

阿里云服务器多少钱一个月?低至5元1个月

阿里云服务器一个月多少钱&#xff1f;最便宜5元1个月。阿里云轻量应用服务器2核2G3M配置61元一年&#xff0c;折合5元一个月&#xff0c;2核4G服务器30元3个月&#xff0c;2核2G3M带宽服务器99元12个月&#xff0c;轻量应用服务器2核4G4M带宽165元12个月&#xff0c;4核16G服务…...

LeetCode第五天(442. 数组中重复的数据)

给你一个长度为 n 的整数数组 nums &#xff0c;其中 nums 的所有整数都在范围 [1, n] 内&#xff0c;且每个整数出现 一次 或 两次 。请你找出所有出现 两次 的整数&#xff0c;并以数组形式返回。 你必须设计并实现一个时间复杂度为 O(n) 且仅使用常量额外空间的算法解决此问…...

chatgpt正面案例合集

现在可以用百度 百度安全验证 chatgpt用来搜索软件使用指令太牛了_个人渣记录仅为自己搜索用的博客-CSDN博客 chatgpt 使用案例 根据不同的目标群体变更文案和表达_个人渣记录仅为自己搜索用的博客-CSDN博客 倾听能力 和哪些基础能力相关 ,如何提高 chatgpt_个人渣记录仅为自…...

今日讲讲路由配置

下载安装路由 1. 下载安装路由库 npm i vue-router 2. 在 src 中新建 views 文件夹&#xff0c;在其中新建页面 3. 在 src 中新建一个 router 文件夹&#xff0c;其中新建一个 index.js import { createRouter, createWebHashHistory } from vue-router; // 导入页面 imp…...

【Rust】Shared-State Concurrency

Shared-State Concurrency channel类似于single ownership. 而shared memory类似与multiple ownership. multiple ownership是难于管理的. smarter pointer也是multiple ownership的. Rust的type system和ownership rules帮助实现正确的multiple ownership管理。 Using Mute…...

连接数据库(MySQL)的JDBC

目录 JDBC简介快速入门API详解DriverManager&#xff08;驱动管理类&#xff09;注册驱动&#xff1a;获取数据库连接(对象)&#xff1a; Connection&#xff08;数据库连接对象&#xff09;获取执行SQL的对象管理事务 Statement(执行SQL语句)执行DML、DDL语句执行DQL语句 Resu…...

golang通过参数控制HTTP server是否使用基本认证

之前写的《golang实现一个BasicAuth的HTTP server》一定会做基本认证。 本例给出了如何通过启动时候指定的参数来控制是否做基本认证 代码对比和解释 给出与上一篇中源码的diff adminhpc-1:~/go/auth_http$ diff -ruN http_rpc_server.go_bak http_rpc_server.go --- http_rp…...

javaSwing坦克大战游戏

在游戏开发领域&#xff0c;坦克大战是一款经典的游戏&#xff0c;其简单而又耐玩的玩法吸引了无数玩家。而今&#xff0c;在Java编程技术的支持下&#xff0c;我们可以用Java Swing技术轻松实现这款经典游戏。本文将介绍如何使用Java Swing技术编写坦克大战游戏&#xff0c;并…...

【面试题】数据底层原理:Elasticsearch写入流程解析

前言&#xff1a;本篇博客将介绍Elasticsearch的数据底层原理&#xff0c;涉及数据写入的过程以及相关概念。我们将深入探讨buffer、translog、refresh、commit、flush和merge等核心概念&#xff0c;帮助您更好地理解Elasticsearch的数据存储机制。 写入数据的基本过程 Elast…...

牛客论坛spring initializer选用的构件

spring版本&#xff1a;2.1.5.RELEASE java版本&#xff1a;8 pom文件&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-i…...

【Java程序设计】【C00385】基于(JavaWeb)Springboot的员工信息管理系统(有论文)

基于&#xff08;JavaWeb&#xff09;Springboot的员工信息管理系统 项目简介项目获取开发环境项目技术运行截图 博主介绍&#xff1a;java高级开发&#xff0c;从事互联网行业六年&#xff0c;已经做了六年的毕业设计程序开发&#xff0c;开发过上千套毕业设计程序&#xff0c…...

【Linux进阶之路】理解UDP,成为TCP。

前言 学了TCP 和UDP之后&#xff0c;感觉UDP就像是初入职场的年轻人&#xff0c;两耳不闻 “窗外事”&#xff0c;只管尽力地把自己的事情做好&#xff0c;但收获的却是不可靠&#xff0c;而TCP更像是涉世极深的"职场老油条"&#xff0c;给人的感觉就是 “城府极深&a…...

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周&#xff0c;有很多同学在写期末Java web作业时&#xff0c;运行tomcat出现乱码问题&#xff0c;经过多次解决与研究&#xff0c;我做了如下整理&#xff1a; 原因&#xff1a; IDEA本身编码与tomcat的编码与Windows编码不同导致&#xff0c;Windows 系统控制台…...

网络六边形受到攻击

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 抽象 现代智能交通系统 &#xff08;ITS&#xff09; 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 &#xff08;…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

pam_env.so模块配置解析

在PAM&#xff08;Pluggable Authentication Modules&#xff09;配置中&#xff0c; /etc/pam.d/su 文件相关配置含义如下&#xff1a; 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块&#xff0c;负责验证用户身份&am…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本&#xff1a; 3.8.1 语言&#xff1a; JavaScript/TypeScript、C、Java 环境&#xff1a;Window 参考&#xff1a;Java原生反射机制 您好&#xff0c;我是鹤九日&#xff01; 回顾 在上篇文章中&#xff1a;CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

以光量子为例,详解量子获取方式

光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学&#xff08;silicon photonics&#xff09;的光波导&#xff08;optical waveguide&#xff09;芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中&#xff0c;光既是波又是粒子。光子本…...

Webpack性能优化:构建速度与体积优化策略

一、构建速度优化 1、​​升级Webpack和Node.js​​ ​​优化效果​​&#xff1a;Webpack 4比Webpack 3构建时间降低60%-98%。​​原因​​&#xff1a; V8引擎优化&#xff08;for of替代forEach、Map/Set替代Object&#xff09;。默认使用更快的md4哈希算法。AST直接从Loa…...