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. 安装步骤 第一步:在官网下载好Redis安装包,上传到Linux中并进行解压到相应(如/opt/software/)目录中;(注意:完成了第二步后,即安装了C/C语言…...
WebGIS航线编辑器(无人机航线规划)
无人机航点、航线规划,实现全自动航点飞行作业及飞行航拍。禁飞区、作业区功能保障飞行安全。 GIS引擎加载 const viewer new Cesium.Viewer("cesiumContainer", { imageryProvider: new Cesium.IonImageryProvider({ assetId: 3872 }), }); const im…...
STEP 格式三维模型读取
STEP是常用的三维模型存储格式,使用Express语言描述几何图形,文件存储方式为BRep,分为STEP203和STEP214,后者多了颜色信息,opencascade中提供了相应算法读取STEP文件。 #include <STEPControl_Reader.hxx>TopoD…...
Mora: Enabling Generalist Video Generation via A Multi-Agent Framework
目录 论文地址:Mora: Enabling Generalist Video Generation viaA Multi-Agent Framework github地址:https://github.com/lichao-sun/Mora 一、摘要 (1)Mora 的主要特点: (2)Mora的应用场景…...
[c++] 自写 MyString 类
实现了 MyString 类,同时实现了运算符重载,重载的运算符包括 <、>、、!、<<、>>、[] 等。 如果一个类重载了某个运算符,那么对这个类的对象进行操作的时候便会使用类重载的运算符。比如下边代码 MyString 类中重载了 <、…...
三、阅读器开发--4、阅读器目录、全文搜索功能开发
1、阅读器目录 1.1、实现目录 先实现目录的布局 定义一个蒙版,充满整个屏幕浮在阅读器上方,左侧为目录右侧为背景,目录下方包含一个tab,点击后会切换不同的内容,这里tab是目录、书签,这里可以通过如下的…...
AMEYA360代理 | 江苏长晶科技FST2.0高性能 IGBT产品介绍
江苏长晶科技股份有限公司是一家专业从事半导体产品研发、生产和销售的企业。自2019年起,连续4年被中国半导体行业协会评为 “功率器件十强企业”。2021年开始自主研发有着“工业CPU”之称的IGBT,截至2023年Q3在家电/工业/新能源等行业实现8款产品市场应…...
基于springboot+vue+Mysql的网上图书商城
开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…...
阿里云服务器多少钱一个月?低至5元1个月
阿里云服务器一个月多少钱?最便宜5元1个月。阿里云轻量应用服务器2核2G3M配置61元一年,折合5元一个月,2核4G服务器30元3个月,2核2G3M带宽服务器99元12个月,轻量应用服务器2核4G4M带宽165元12个月,4核16G服务…...
LeetCode第五天(442. 数组中重复的数据)
给你一个长度为 n 的整数数组 nums ,其中 nums 的所有整数都在范围 [1, n] 内,且每个整数出现 一次 或 两次 。请你找出所有出现 两次 的整数,并以数组形式返回。 你必须设计并实现一个时间复杂度为 O(n) 且仅使用常量额外空间的算法解决此问…...
chatgpt正面案例合集
现在可以用百度 百度安全验证 chatgpt用来搜索软件使用指令太牛了_个人渣记录仅为自己搜索用的博客-CSDN博客 chatgpt 使用案例 根据不同的目标群体变更文案和表达_个人渣记录仅为自己搜索用的博客-CSDN博客 倾听能力 和哪些基础能力相关 ,如何提高 chatgpt_个人渣记录仅为自…...
今日讲讲路由配置
下载安装路由 1. 下载安装路由库 npm i vue-router 2. 在 src 中新建 views 文件夹,在其中新建页面 3. 在 src 中新建一个 router 文件夹,其中新建一个 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(驱动管理类)注册驱动:获取数据库连接(对象): Connection(数据库连接对象)获取执行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坦克大战游戏
在游戏开发领域,坦克大战是一款经典的游戏,其简单而又耐玩的玩法吸引了无数玩家。而今,在Java编程技术的支持下,我们可以用Java Swing技术轻松实现这款经典游戏。本文将介绍如何使用Java Swing技术编写坦克大战游戏,并…...
【面试题】数据底层原理:Elasticsearch写入流程解析
前言:本篇博客将介绍Elasticsearch的数据底层原理,涉及数据写入的过程以及相关概念。我们将深入探讨buffer、translog、refresh、commit、flush和merge等核心概念,帮助您更好地理解Elasticsearch的数据存储机制。 写入数据的基本过程 Elast…...
牛客论坛spring initializer选用的构件
spring版本:2.1.5.RELEASE java版本:8 pom文件: <?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的员工信息管理系统(有论文)
基于(JavaWeb)Springboot的员工信息管理系统 项目简介项目获取开发环境项目技术运行截图 博主介绍:java高级开发,从事互联网行业六年,已经做了六年的毕业设计程序开发,开发过上千套毕业设计程序,…...
【Linux进阶之路】理解UDP,成为TCP。
前言 学了TCP 和UDP之后,感觉UDP就像是初入职场的年轻人,两耳不闻 “窗外事”,只管尽力地把自己的事情做好,但收获的却是不可靠,而TCP更像是涉世极深的"职场老油条",给人的感觉就是 “城府极深&a…...
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
基于matlab策略迭代和值迭代法的动态规划
经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
Git常用命令完全指南:从入门到精通
Git常用命令完全指南:从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...
论文阅读笔记——Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing
Muffin 论文 现有方法 CRADLE 和 LEMON,依赖模型推理阶段输出进行差分测试,但在训练阶段是不可行的,因为训练阶段直到最后才有固定输出,中间过程是不断变化的。API 库覆盖低,因为各个 API 都是在各种具体场景下使用。…...


