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

【Redis】Redis基础——Redis的安装及启动

一、初识Redis

1. 认识NoSQL

数据结构:对于SQL来说,表是有结构的,如字段约束、字段存储大小等。

关联性:SQL 的关联性体现在两张表之间可以通过外键,将两张表的数据关联查询出完整的数据。

查询方式:

2. 认识 Redis

 Redis诞生于2009年全称是Remote Dictionary Server,远程词典服务器,是一个基于内存的键值型 NoSQL 数据库。

特征

  1. 键值(key-value)型,value支持多种不同数据结构,功能丰富
  2. 单线程,每个命令具备原子性
  3. 低延迟,速度快(基于内存、IO多路复用、良好的编码)。
  4. 支持数据持久化,定期将数据存入磁盘
  5. 支持主从集群、分片集群(把数据存放在不同的集群中)
  6. 支持多语言客户端,如 JAVA、Python

3. 安装Redis及启动的三种方式

大多数企业都是基于Linux服务器来部署项目,而且Redis官方也没有提供Windows版本的安装包。网上找到的window是微软编写的。因此这里基于Linux系统来安装Redis。Redis的官方网站地址:https://redis.io/

3.1. 单机安装Redis

1.1 Redis是基于C语言编写的,因此首先需要安装Redis所需要的gcc依赖:

yum install -y gcc tcl

1.2 上传安装包至虚拟机任意目录并解压。这里我上传至 /usr/local/src , 解压命令如下

tar -zxvf redis-6.2.6.tar.gz

1.3 进入解压后的文件夹

cd redis-6.2.6

 1.4 编译安装。make是编译,make install 是安装。等待编译下载完成就安装好了redis。

make && make install

默认的安装路径是在 /usr/local/bin 目录下,进入该目录查看有哪些文件

该目录以及默认配置到环境变量,因此可以在任意目录下运行这些命令。其中:

redis-cli:是redis提供的命令行客户端
redis-server:是redis的服务端启动脚本
redis-sentinel:是redis的哨兵启动脚本

3.2 启动Redis的三种方式

方式一:默认方式
redis-server

这种启动属于`前台启动`,会阻塞整个会话窗口,窗口关闭或者按下`CTRL + C`则Redis停止。不推荐使用。

 

方式二:指定配置启动

如果需要让redis在后台运行,需要修改Redis配置文件 redis.conf。配置文件在 /usr/local/src/redis-6.2.6 这个目录中。

1. 先备份这个配置文件,以防万一

cp redis.conf redis.conf.bck

 2. 修改redis.conf文件中的一些配置,进入后,输入/,在输入内容回车就能搜索到了。

properties
# 允许访问的地址,默认是127.0.0.1,会导致只能在本地访问。修改为0.0.0.0 则可以在任意IP访问,生产环境不要设置为0.0.0.0 。

bind 0.0.0.0

# 守护进程,修改为yes后即可后台运行

daemonize yes 

# 密码,设置后访问Redis必须输入密码,这里设置为123456

requirepass 123456

# 日志文件,默认为空,不记录日志,可以指定日志文件名

logfile "redis.log"

修改上述配置后即可重新启动redis了。Redis的其它常见配置有:

# 监听的端口

port 6379

# 工作目录,默认是当前目录,也就是运行redis-server时的命令,日志、持久化等文件会保存在这个目录

dir .

# 数据库数量,设置为1,代表只使用1个库,默认有16个库,编号0~15

databases 1

# 设置redis能够使用的最大内存

maxmemory 512mb

3. 接下来我们就可以启动redis了。进入redis安装目录 

cd /usr/local/src/redis-6.2.6

启动redis

# 启动
redis-server redis.conf

 此时启动redis后界面没有任何变化,可以使用如下命令查看后台运行的服务。

ps -ef | grep redis

停止服务

# 利用redis-cli来执行 shutdown 命令,即可停止 Redis 服务,因为之前配置了密码,因此需要通过 -u 来指定密码。

停止服务

redis-cli -u 123456 shutdown

查看进程状态

ps -ef | grep redis

 杀死进程,kill -9 进程id , 进程id可以在进程状态中查看

方式三:开机自启

1. 首先,新建一个系统服务文件:

vim /etc/systemd/system/redis.service

2. 添加如下内容

[Unit]
Description=redis-server
After=network.target[Service]
Type=forking
# ExecStart 表示启动服务,
# /usr/local/bin/redis-server 表示redis-server的位置,
# /usr/local/src/redis-6.2.6/redis.conf 是配置文件目录
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
PrivateTmp=true[Install]
WantedBy=multi-user.target

3. 重载系统服务

systemctl daemon-reload

4. 设置开机自启

systemctl enable redis

可以用以下命令来操作redis 

查看redis运行状态

systemctl status redis

停止 redis

systemctl stop redis

启动 redis

systemctl start redis

重启

systemctl restart redis

4. Redis 客户端

安装完成Redis,我们就可以操作Redis,实现数据的CRUD了。这需要用到Redis客户端。

4.1 Redis 命令行客户端

Redis 安装后就自带了命令行客户端,redis-cli, 使用方式如下。

redis-cli [options] [commonds]

其中常见的options有:

-h 127.0.0.1:指定要连接的redis节点的IP地址,默认是127.0.0.1
-p 6379:指定要连接的redis节点的端口,默认是6379
-a 123456:指定redis的访问密码 

commonds 就是Redis的操作命令,例如:

ping:与redis服务端做心跳测试,服务端正常会返回 pong

当然,在连接redis时指定密码,还能连接后使用 AUTH 指定用户名和密码,这里我没有用户名,直接指定密码就好了。

 

不指定commond时,会进入redis-cli的交互控制台:

4.2 图形化桌面客户端

GitHub上的大神编写了Redis的图形化桌面客户端,不过该仓库提供的是RedisDesktopManager的源码,并未提供windows安装包。地址:https://github.com/uglide/RedisDesktopManager

在下面这个仓库可以找到安装包:

https://github.com/lework/RedisDesktopManager-Windows/releases

下载解压后得到一个 exe 后缀的可执行文件,傻瓜式安装即可。下面是连接到Linux中的redis。

 

相关文章:

【Redis】Redis基础——Redis的安装及启动

一、初识Redis 1. 认识NoSQL 数据结构:对于SQL来说,表是有结构的,如字段约束、字段存储大小等。 关联性:SQL 的关联性体现在两张表之间可以通过外键,将两张表的数据关联查询出完整的数据。 查询方式: 2.…...

Oracle Recovery Tools工具一键解决ORA-00376 ORA-01110故障(文件offline)---惜分飞

客户在win上面迁移数据文件,由于原库非归档,结果导致有两个文件scn不一致,无法打开库,结果他们选择offline文件,然后打开数据库 Wed Dec 04 14:06:04 2024 alter database open Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_6056.trc: ORA-01113:…...

常用环境部署(二十四)——Docker部署开源物联网平台Thingsboard

1、Docker和Docker-compose安装 参考网址如下: CENTOS8.0安装DOCKER&DOCKER-COMPOSE以及常见报错解决_centos8安装docker-compose-CSDN博客 2、 Thingsboard安装 (1)在/home目录下创建docker-compose.yml文件 vim /home/docker-com…...

SqlServer Doris Flink SQL 类型映射关系

SqlServer 对应 Flink SQL 数据类型映射关系 SQL Server TypeFlink SQL Typechar(n)CHAR(n)varchar(n)VARCHAR(n)nvarchar(n)VARCHAR(n)nchar(n)VARCHAR(n)textSTRINGntextSTRINGxmlSTRINGdecimal(p, s)DECIMAL(p, s)moneyDECIMAL(p, s)smallmoneyDECIMAL(p, s)numericNUMERIC…...

Java 中的方法重写

在 Java 中,方法重写(Method Overriding)是面向对象编程的一个重要概念,它指的是子类中存在一个与父类中相同名称、相同参数列表和相同返回类型的方法。方法重写使得子类可以提供特定的实现,从而覆盖(或改变…...

v-for遍历多个el-popover;el-popover通过visible控制显隐;点击其他隐藏el-popover

场景:el-popover通过visible控制显隐;同时el-popover是遍历生成的多个。 原文档的使用visible后就不能点击其他地方使其隐藏;同时解决实现点击其他区域隐藏 <template><div><template v-for="(item,index) in arr" :key="index"><…...

从 Excel 文件中读取数据生成 SQL 语句[快捷main方法]

从 Excel 文件中读取数据生成 SQL 语句的实现 在日常工作中&#xff0c;我们经常需要从 Excel 文件中提取数据&#xff0c;并将其转换为 SQL 插入语句&#xff0c;以便于将数据导入到数据库中。在这篇文章中&#xff0c;我将展示如何使用 Java 来实现这一需求。 项目需求 我…...

从0到1实现项目Docker编排部署

在深入讨论 Docker 编排之前&#xff0c;首先让我们了解一下 Docker 技术本身。Docker 是一个开源平台&#xff0c;旨在帮助开发者自动化应用程序的部署、扩展和管理。自 2013 年推出以来&#xff0c;Docker 迅速发展成为现代软件开发和运维领域不可或缺的重要工具。 Docker 采…...

Vue框架入门

Author&#xff1a;Dawn_T17?? 目录 什么是框架 一.Vue 的使用方向 二.Vue 框架的使用场景 &#xff08;TIP&#xff09;MVVM思想 三.Vue入门案例 TIP&#xff1a;插值表达式 四.Vue-指令? &#xff08;1&#xff09;v-bind 和 v-model? ? &#xff08;2&#x…...

vue入门实战(二)父子组件显示,参数传递

经过上次的写法&#xff0c;我们已经写出每个list项&#xff0c;现在要在每个父组件下面加入自己的子项 一、新建子组件&#xff1a; smallItem.vue&#xff1a; <script> export default{props:[text,id,status] //父组件传来的参数 } </script> <template>…...

【Linux】Ubuntu:安装系统后配置

hostname&#xff1a;更改主机名 打开终端。 使用hostnamectl命令更改主机名。 sudo hostnamectl set-hostname 新的主机名你可以使用hostnamectl 命令来验证更改是否成功&#xff1a; hostnamectlChrome&#xff1a;更换默认浏览器 以下是从 Ubuntu 中移除预装的 Snap 版 Fi…...

springboot-查看版本和版本所需JDK

文章目录 访问spring管网查看springboot 项目查看当前版本查看版本所需JDK 访问spring管网 https://spring.io/ 查看springboot 项目 查看当前版本 点击调整到参考文档中去… 查看版本所需JDK...

fuxa搭建与使用(web组态)

1. 安装Node.js -> npm安装 参考网址&#xff1a;https://blog.csdn.net/WHF__/article/details/129362462 一、安装运行 C:WINDOWSsystem32>node -v v20.17.0 C:WINDOWSsystem32>npm -v 10.8.2 二、环境配置 在安装路径&#xff08;D:Program_Files odejs&#x…...

中间件--MongoDB部署及初始化js脚本(docker部署,docker-entrypoint-initdb.d,数据迁移,自动化部署)

一、概述 MongoDB是一种常见的Nosql数据库&#xff08;非关系型数据库&#xff09;&#xff0c;以文档&#xff08;Document&#xff09;的形式存储数据。是非关系型数据库中最像关系型数据库的一种。本篇主要介绍下部署和数据迁移。 在 MongoDB 官方镜像部署介绍中&#xff…...

C语言期末考试——常见考题(模拟考)

目录 一、填空题&#xff08;每空2分&#xff0c;共 20 分&#xff09; 二、选择题&#xff08;每题2分&#xff0c;共26分&#xff09; 三、编程题&#xff08;第1题6分&#xff0c;其余题目每题10分&#xff09; &#xff01;&#xff01;&#xff01;需要答案的可以私信&…...

流量过滤与路径转发控制

1&#xff0c;策略路由 PBR基本概念&#xff1a; 策略路由&#xff0c;使网络设备不仅能够基于报文的目的IP地址进行数据转发&#xff0c;也能基于其他元素进行转发&#xff0c;比如源IP地址、MAC地址 可以使用ACL匹配特定的报文&#xff0c;针对该ACL进行PBR部署 PRB策略的…...

Ungoogled Chromium127编译指南 Windows篇 - 获取源码(七)

1. 引言 在完成所有必要工具的安装和配置后&#xff0c;我们进入了Ungoogled Chromium编译过程的第一个关键阶段&#xff1a;获取源代码。本文将详细介绍如何正确获取和准备Ungoogled Chromium的源代码&#xff0c;为后续的编译工作打下基础。 2. 准备工作 2.1 环境检查 在…...

k8s 之 StatefulSet

深入理解StatefulSet&#xff08;一&#xff09;&#xff1a;拓扑状态 k8s有状态与无状态的区别 无状态服务&#xff1a;deployment Deployment被设计用来管理无状态服务的pod,每个pod完全一致.什么意思呢? 无状态服务内的多个Pod创建的顺序是没有顺序的. 无状态服务内的多…...

iPhone 17 Air基本确认,3个大动作

近段时间&#xff0c;果粉圈都在讨论一个尚未发布的新品&#xff1a;iPhone 17 Air&#xff0c;苹果又要来整新活了。 从供应链消息来看&#xff0c;iPhone 17 Air本质上是Plus的替代品&#xff0c;主要是在维持“大屏”这一卖点的同时&#xff0c;增加了“轻薄”属性&#xff…...

鸿蒙实现应用通知

目录&#xff1a; 1、应用通知的表现形式2、应用通知消息的实现1、发布普通文本类型通知2、发布进度类型通知3、更新通知4、移除通知 3、设置通知道通展示不同形式通知4、设置通知组5、为通知添加行为意图1、导入模块2、创建WantAgentInfo信息3、创建WantAgent对象4、构造Notif…...

ElasticSearch常见的索引_集群的备份与恢复方案

方案一&#xff1a;使用Elasticsearch的快照和恢复功能进行备份和恢复。该方案适用于集群整体备份与迁移&#xff0c;包括全量、增量备份和恢复。 方案二&#xff1a;通过reindex操作在集群内或跨集群同步数据。该方案适用于相同集群但不同索引层面的迁移&#xff0c;或者跨集…...

vue图片之放大、缩小、1:1、刷新、左切换、全屏、右切换、左旋咋、右旋转、x轴翻转、y轴翻转

先上效果&#xff0c;代码在下面 <template><!-- 图片列表 --><div class"image-list"><img:src"imageSrc"v-for"(imageSrc, index) in images":key"index"click"openImage(index)"error"handleI…...

Docker多架构镜像构建踩坑记

背景 公司为了做信创项目的亮点&#xff0c;需要将现有的一套在X86上运行的应用系统迁移到ARM服务器上运行&#xff0c;整个项目通过后端Java&#xff0c;前端VUEJS开发通过CICD做成Docker镜像在K8S里面运行。但是当前的CICD产品不支持ARM的镜像构建&#xff0c;于是只能手工构…...

“pinn是无网格的”???

“pinn是无网格的”&#xff1f;&#xff1f;&#xff1f; PINN&#xff0c;即物理信息神经网络&#xff08;Physics-Informed Neural Networks&#xff09;&#xff0c;是一种将物理定律作为先验知识整合到神经网络训练过程中的方法。它之所以被称为“无网格”的&#xff0c;…...

换一个ip地址是什么意思?换一个网络ip地址会变吗

在网络的世界里&#xff0c;IP地址如同每台设备的“身份证”&#xff0c;是确保网络信息能够准确传输到指定目标的关键。然而&#xff0c;在某些情况下&#xff0c;我们可能需要更换这个“身份证”&#xff0c;也就是更换IP地址。那么&#xff0c;换一个IP地址究竟是什么意思&a…...

JavaWeb学习--cookie和session,实现登录的记住我和验证码功能

目录 &#xff08;一&#xff09;Cookie概述 1.什么叫Cookie 2.Cookie规范 3.Cookie的覆盖 4.cookie的最大存活时间 ​​​​​​&#xff08;Cookie的生命&#xff09; &#xff08;二&#xff09; Cookie的API 1.创建Cookie&#xff1a;new 构造方法 2.保存到客户端浏…...

深度学习:基于MindSpore的极简风大模型微调

什么是PEFT&#xff1f;What is PEFT&#xff1f; PEFT(Parameter Efficient Fine-Tuning)是一系列让大规模预训练模型高效适应于新任务或新数据集的技术。 PEFT在保持大部分模型权重冻结&#xff0c;只修改或添加一小部份参数。这种方法极大得减少了计算量和存储开销&#x…...

【LeetCode力扣热题100】【LeetCode 1】两数之和

方法一&#xff1a;暴力循环 两层循环&#xff0c;遍历所有的组合&#xff0c;直到满足条件&#xff0c;返回结果。 class Solution { public:vector<int> twoSum(vector<int>& nums, int target) {for(int i0; i<nums.size()-1 ;i){for(int j i1; j<…...

定制链接类名,两类跳转传参,vue路由重定向,404,模式设置

router-link-exact-active 和 router -link-active两个类名都太长&#xff0c;可以在router路由对象中定制进行简化 // index.js// 路由的使用步骤 52 // 1.下载 v3.6.5 // 2.引入 // 3.安装注册Vue.use(Vue插件) // 4.创建路由对象 // 5.注入到new Vue中&#xff0c;建立关联…...

【ArcGIS微课1000例】0135:自动生成标识码(长度不变,前面自动加0)

文章目录 一、加载实验数据二、BSM计算方法一、加载实验数据 加载专栏《ArcGIS微课实验1000例(附数据)》配套数据中0135.rar中的建筑物数据,如下图所示: 打开属性表,BSM为数据库中要求的字段:以TD_T 1066-2021《不动产登记数据库标准》为例: 计算出来的BSM如下图: 二、B…...

做公司网站建设价格/合肥关键词排名技巧

1, 数据 函数程序 都定义在 实例化对象中通过调用 实例化对象的函数方法 调用 实例化对象中 存储的数据执行程序 实现效果2, this指向必须是实例化对象匿名函数 --- 箭头函数回调函数 通过 bind() 语法修改设定 this指向提前定义一个变量 存储this指向一个函数中 要是用 多个…...

做网站的动态图片/苏州网站优化公司

文章目录一、循环语句1.1 for循环语句1.1.1 for语句的结构1.1.2 for语句应用示例1.2 while循环语句1.3 until循环语句1.3.1 until语句的结构二、 Shell函数2.1 Shell函数2.1 函数应用示例2.2 函数的作用范围2.3 函数的参数2.4 递归函数三、 Shell数组3.1 Shell数组3.2 Shell脚本…...

重庆市招标网官网/aso搜索排名优化

需求&#xff1a;用户在进入这个页面时&#xff0c;能看到标签页&#xff08;el-tab&#xff09;上的代办数字标记&#xff08;el-badge&#xff09; 问题&#xff1a;el-badge绑定的变量是有数据的&#xff0c;但是界面上就是不渲染。 代码&#xff1a; <el-tabs><el…...

国家补贴软件网站开发政策/哪个公司做网站推广最好

此检查next_day不在mcal.get_calendar(NYSE)中。valid_days(start_date2000-12-20&#xff0c; end_date2020-01-10)非常耗时&#xff0c;因为它需要从7000天的数组中查找。你需要对每一个操作都这样做&#xff0c;所以我认为这是效率低下的主要原因。 您可以通过转换mcal.get_…...

政府网站建设工作 主要职责/郑州网络营销公司

对于Vue.js来说&#xff0c;如果你想要快速开始&#xff0c;那么只需要在你的html中引入一个<script>标签&#xff0c;加上CDN的地址即可。但是&#xff0c;这并不算是一个完整的vue实际应用。在实际应用中&#xff0c;我们必须要一系列的工具&#xff0c;包括&#xff1…...

专业型网站网站/厦门百度竞价开户

周期分析struct结构体redis代码。最后&#xff0c;越多越发现很多的代码其实大同小异。于struct有袋1,2不分析文件&#xff0c;关于set集合的一些东西&#xff0c;就放在下次分析好了&#xff0c;在选择下个分析的对象时&#xff0c;我考虑了一下&#xff0c;最后决定先把简单的…...