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

Redis基础 (三十八)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

前言

一、概述

1.1 NoSQL

1.2 Redis

二、安装

 2.1  安装方式 :

三、目录结构

3.1 rpm  -ql redis

3.2 /etc/redis.conf     主配置文件

3.3 /var/lib/redis

3.4 /var/log/redis

3.5 /var/run/redis

四、命令解析

五、redis登录更改

六、数据库操作

 6.1登录数据库

 6.1.1  本地登录

 6.1.2 远程登录

七、Redis持久化

7.1  类型

7.1.1 RDB模式

  7.1.2 AOF模式



前言

Redis(Remote Dictionary Server)是一个开源的高性能键值存储数据库,它是一种NoSQL数据库,常被用作缓存、消息队列和数据存储等场景。它支持多种数据结构,如字符串、哈希、列表、集合和有序集合,并提供了丰富的操作和功能。


提示:以下是本篇文章正文内容,下面案例可供参考

一、概述

1.1 NoSQL

    非关系型数据库
    内存存储
    类型
        文档型数据库(Document-oriented database)如MongoDB;
        列族数据库(Column-family database)如HBase、Cassandra等;
        图形数据库(Graph database)如Neo4j、ArangoDB等;
        键值对数据库(Key-value database)如Redis、Memcached等;
        对象数据库(Object-oriented database)如db4o等。
    应用场景
        缓存:Redis最常用的应用场景就是缓存,它可以缓存各种类型的数据,如数据库查询结果、API返回结果等,以提高应用程序的响应速度和并发性能。
        分布式锁:Redis的分布式锁可以确保在分布式系统中对某个资源的互斥访问,避免多个节点出现并发操作的问题。
        计数器:Redis支持对计数器的操作,能够方便地实现各种计数器的功能,如网站访问次数计数、订单数量计数等。
        会话管理:Redis可以用来管理会话信息,实现会话的状态存储和共享,避免了单点故障的问题。
        消息队列:Redis支持发布订阅模式,可以作为一个轻量级的消息队列使用,实现异步消息处理和任务派发等功能。

1.2 Redis

  Remote Dictionary Server
        远程字典服务
    官网
        https://www.redis.net.cn/
    内存存储、持久化
    键值对存储
    监听端口号
          6379
    数据类型
        字符串(string)
        哈希值(hash)
        列表(list)
        集合(set)
        位图(bitmap)

二、安装

 2.1  安装方式 :

编译安装
            wget http://download.redis.io/releases/redis-5.0.8.tar.gz
            make && make install

RPM安装
            yum install -y epel-release


            yum install -y redis


            启动
                systemctl start redis
            默认监听127.0.0.1地址

三、目录结构

3.1 rpm  -ql redis

3.2 /etc/redis.conf     主配置文件

        bind 127.0.0.1     修改监听地址
        port 6379    修改监听端口号
        pidfile    指定通过该配置文件启动reids进程后的PID文件名称
        loglevel     定义日志级别
        logfile     定义日志存储路径
        databases      指定默认数据库数量
        save     定义单位时间内key的改变次数
        dbfilename     定义存储RDB持久化数据的文件名称
        dir    定义RDB与AOF文件的存储目录
        appendonly      AOF的启停
        appendfilename      定义AOF持久化文件的名称
        appendfsync       定义AOF数据同步间隔
        requirepass     设置登录redis的密码

3.3 /var/lib/redis

            持久化文件存储目录

3.4 /var/log/redis

            日志文件存储目录

3.5 /var/run/redis

           PID文件存储目录


四、命令解析

redis-server
        redis启动命令


    redis-cli
        redis登录命令


            -h
                redis服务器IP
            -p
                指定访问端口号


            -a
                指定登录密码
            -n
                指定数据库编号
    redis-check-rdb
        检查RDB文件
    redis-check-aof
        检查AOF文件

五、redis登录更改


    问题
        更改完port后,systemctl启动redis异常
    解决办法
        使用redis-server /etc/redis.conf
        若要redis后台运需修改配置文件 daemonize yes

 启动两个端口:

cp /etc/redis.conf   /opt/redis_6380.conf

进入vim /opt/redis_6380.conf 中,修改端口号为6380

启动(会发现启动的是前台进程)

 进入vim /opt/redis_6380.conf 中,修改daemonize 为yes (到后台)

 启动 

查看

六、数据库操作

 6.1登录数据库


 6.1.1  本地登录

监听回环地址
            redis-cli


监听本地网卡地址
            redis-cli -h IP -p 端口号

 6.1.2 远程登录

redis -cli -h 192.168.112.152 -a123.com -n 2

在主服务器上更改配置文件

 

设置密码

 在另一台测试


    帮助信息
        help 命令字
        tab补齐
    库操作
        切换
            select 数据库编号


    数据操作
        set
            设置键值对
            set key value


        keys
            keys *   

                  查看所有键的名称

            keys 键名称
                  查看一个键是否存在


       get
            取出键值对
            get 键
            键不存在则返回空


        del
            删除键值对
            del key


        flushall
            清空所有数据库中的数据


        rename
            重命名键名称
            不论更名后的键是否存在都会覆盖原有键,
并将改名前的键的值赋予改名后的键
            rename oldkey newkey


        renamenx
            重命名键名称
            假如改名后键名称存在则更改不成功
            renamenx oldkey newkey


        move
            移动键值对到指定数据库
            move key dbnumber
            假如目标数据库中存在同名键则移动失败


        ttl
            查看键值对的生命周期
            ttl key
                -1
                    永久
                -2
                    已过期


        expire
            设置键值对的存储周期
            expire key seconds

七、Redis持久化

7.1  类型

7.1.1 RDB模式

默认持久化
            dump.rdb
                数据库启动时会读取
            触发条件
                redis进程退出
                    宕机
                    redis程序崩溃
                手动保存(触发RDB)
                    save

 进入vim /etc/redis.conf中

 

  7.1.2 AOF模式

 默认关闭
            appendonly.aof
                默认进程启动时读取
            开启
                appendonly  yes
                可以与RDB同时使用

进入vim /etc/redis.conf中


总结

所以,一起行动起来吧。

相关文章:

Redis基础 (三十八)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、概述 1.1 NoSQL 1.2 Redis 二、安装 2.1 安装方式 : 三、目录结构 3.1 rpm -ql redis 3.2 /etc/redis.conf 主配置文件 3.3 /var/lib/redis …...

maven中的scope

1、compile:默认值,可省略不写。此值表示该依赖需要参与到项目的编译、测试以及运行周期中,打包时也要包含进去。 2、test:该依赖仅仅参与测试相关的工作,包括测试代码的编译和执行,不会被打包,…...

【网络基础实战之路】实现RIP协议与OSPF协议间路由交流的实战详解

系列文章传送门: 【网络基础实战之路】设计网络划分的实战详解 【网络基础实战之路】一文弄懂TCP的三次握手与四次断开 【网络基础实战之路】基于MGRE多点协议的实战详解 【网络基础实战之路】基于OSPF协议建立两个MGRE网络的实验详解 PS:本要求基于…...

CNN(四):ResNet与DenseNet结合--DPN

🍨 本文为🔗365天深度学习训练营中的学习记录博客🍖 原作者:K同学啊|接辅导、项目定制 前面实现了ResNet和DenseNet的算法,了解了它们有各自的特点: ResNet:通过建立前面层与后面层之间的“短路…...

汽车EBSE测试流程分析(四):反思证据及当前问题解决

EBSE专题连载共分为“五个”篇章。此文为该连载系列的“第四”篇章,在之前的“篇章(三)”中已经结合具体研究实践阐述了“步骤二,通过系统调研确定改进方案”等内容。那么,在本篇章(四)中&#…...

如何在Spring MVC中使用@ControllerAdvice创建全局异常处理器

文章目录 前言一、认识注解:RestControllerAdvice和ExceptionHandler二、使用步骤1、封装统一返回结果类2、自定义异常类封装3、定义全局异常处理类4、测试 总结 前言 全局异常处理器是一种 🌟✨机制,用于处理应用程序中发生的异常&#xff…...

2023/08/05【网络课程总结】

1. 查看git拉取记录 git reflog --dateiso|grep pull2. TCP/IP和OSI七层参考模型 3. DNS域名解析 4. 预检请求OPTIONS 5. 渲染进程的回流(reflow)和重绘(repaint) 6. V8解析JavaScript 7. CDN负载均衡的简单理解 8. 重学Ajax 重学Ajax满神 9. 对于XML的理解 大白话叙述XML是…...

log_softmax比softmax更好?

多类别分类的一个trick 探讨一下在多类别分类场景,如翻译、生成、目标检测等场景下,使用log_softmax的效果优于softmax的原因。 假设词典大小为10,一个词的ID为9(即词典的最后一个词),使用交叉熵作为损失函…...

[LeetCode - Python]344.反转字符串(Easy);345. 反转字符串中的元音字母(Easy);977. 有序数组的平方(Easy)

1.题目 344.反转字符串(Easy) 1.代码 class Solution:def reverseString(self, s: List[str]) -> None:"""Do not return anything, modify s in-place instead."""# 双指针left,right 0, len(s)-1while left < right:temp s[left]s[…...

【SOP】最佳实践之 TiDB 业务写变慢分析

作者&#xff1a; 李文杰_Jellybean 原文来源&#xff1a; https://tidb.net/blog/d3d4465f 前言 在日常业务使用或运维管理 TiDB 的过程中&#xff0c;每个开发人员或数据库管理员都或多或少遇到过 SQL 变慢的问题。这类问题大部分情况下都具有一定的规律可循&#xff0c;…...

带有参数的 PL/SQL 过程/函数从选择查询返回表

技术标签: 【中文标题】带有参数的 PL/SQL 过程/函数从选择查询返回表【英文标题】&#xff1a;PL/SQL Procedure/function with params to return a table from(of) a select query【发布时间】&#xff1a;2020-12-01 11:17:49【问题描述】&#xff1a; 如何创建带参数的 (…...

文件的权限

1、修改文件的所属者和所属组 2、修改文件某一类人&#xff08;所属者、所属组、其他人&#xff09;的权限 一、用户对于普通文件的权限 二、用户对于目录文件的权限 三、访问控制列表ACL 四、特殊权限&#xff08;了解&#xff09; wuneng创建了几个文件&#xff0c;xiaoming对…...

vue3集成echarts最佳实践

安装 echarts npm install echarts --save 两种引用方式 非虚拟 dom import * as echarts from echarts;var chartDom document.getElementById(mychart); var myChart echarts.init(chartDom); var option;option {title: {text: Referer of a Website,subtext: Fake Da…...

一位年薪40W的测试被开除,回怼的一番话,令人沉思

一位年薪40W测试工程师被开除回怼道&#xff1a;“反正我有技术&#xff0c;在哪不一样” 一技傍身&#xff0c;万事不愁&#xff0c;当我们掌握了一技之长后&#xff0c;在职场上说话就硬气了许多&#xff0c;不用担心被炒&#xff0c;反过来还可以炒了老板&#xff0c;这一点…...

网络适配器和MAC地址

点对点信道&#xff1a;由于目的地只有一个选项&#xff0c;所以数据链路层不需要使用地址。 而在广播信道中&#xff1a; 各个主机如何判断信号是不是发给自己的&#xff1f; 当多个主机连接在同一个广播信道上&#xff0c;要想实现两个主机之间的通信&#xff0c;则每个主机都…...

react-player静音不能自动播放问题

现象 移动端不能自动播放 原因 取决于您使用的浏览器&#xff0c;但muted如果您不想与autoplay用户交互&#xff0c;则必须使用视频。 Chrome 的自动播放策略很简单&#xff1a; 始终允许静音自动播放。在以下情况下允许自动播放声音&#xff1a; 用户与域进行了交互&#x…...

培训Java技术要多久才能学会?答案都在这里啦

培训Java技术要多久才能学会?这是想学习Java开发的很多人都会问到的一个问题。而这个问题的答案其实并不是那么简单&#xff0c;因为学Java的时间长短受到众多因素的影响。本文将从个人基础、学习动力和学习效率三个方面来为您解答这个问题。 1. 个人基础 自己的基础对于学习…...

Java中使用HttpPost发送form格式的请求

在Java中使用HttpPost发送form格式的请求&#xff0c;可以使用Apache HttpClient库来实现。以下是一个示例代码&#xff1a; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; import org.apache.http.client…...

C语言----字节对齐

一&#xff1a;字节对齐的概念 针对字节对齐&#xff0c;百度百科的解释如下&#xff1a; 字节对齐是字节按照一定规则在空间上排列&#xff0c;字节(Byte)是计算机信息技术用于计量存储容量和传输容量的一种计量单位&#xff0c;一个字节等于8位二进制数&#xff0c;在UTF-8编…...

Next.js入门介绍(服务端渲染)

Next.js 一 目录 不折腾的前端&#xff0c;和咸鱼有什么区别 目录一 目录二 前言三 设置四 多页面五 链接六 样式七 共享组件八 布局组件九 实战 9.1 目录结构 9.2 UI 组件 9.3 Markdown 内容 9.4 Pages 入口和 API  9.4.1 服务端渲染 9.5 Public 静态资源 9.6 resor…...

模板Plus

文章目录 1.非类型模板参数的引入2.标准库和普通数组3.模板的特化 1.非类型模板参数的引入 //非类型模板参数 -- 常量 template<class T, size_t N 10> class array { private:T _a[N]; };int main() {array<int> a1;array<int, 100> a2;array<double, …...

spring事务和数据库事务是怎么实现

Spring事务的原理 Spring事务的本质其实就是数据库对事务的支持&#xff0c;没有数据库的事务支持&#xff0c;spring是无法提供事务功能的。对于纯JDBC操作数据库&#xff0c;想要用到事务&#xff0c;可以按照以下步骤进行&#xff1a; 获取连接 Connection con DriverManag…...

el-date-picker设置默认当前日期

HTMl部分&#xff1a; <el-form-item label"拍摄时间&#xff1a;"><el-date-pickerv-model"searchData.filmingTimeRange"type"daterange"align"right"unlink-panelsrange-separator"至"start-placeholder"…...

vue中使用this.$refs获取不到子组件的方法,属性方法都为undefined的解决方法

问题描述 vue2中refs获取不到子组件中的方法&#xff1f;&#xff0c;而获取到的是undefined 原因及解决方案&#xff1a; 第一种、在循环中注册了很多个ref 因为注册了多个ref&#xff0c;获取是不能单单知识refs.xxx&#xff0c;需要使用数组和索引来获取具体一个组件refs[…...

Linux命令200例:df用于显示文件系统的磁盘空间使用情况

&#x1f3c6;作者简介&#xff0c;黑夜开发者&#xff0c;全栈领域新星创作者✌。CSDN专家博主&#xff0c;阿里云社区专家博主&#xff0c;2023年6月csdn上海赛道top4。 &#x1f3c6;数年电商行业从业经验&#xff0c;历任核心研发工程师&#xff0c;项目技术负责人。 &…...

Service not registered 异常导致手机重启分析

和你一起终身学习&#xff0c;这里是程序员Android 经典好文推荐&#xff0c;通过阅读本文&#xff0c;您将收获以下知识点: 一、Service not registered 异常导致手机重启二、Service not registered 解决方案 一、Service not registered 异常导致手机重启 1.重启 的部分Log如…...

深度解读|一站式ABI平台 Smartbi Insight V11 能力再升级

纵观过去&#xff0c;我们发现汽车和BI的发展有异曲同工之妙。 100来年&#xff0c;汽车的动力从蒸汽到燃油再到新能源&#xff0c;汽车的操控方式从手动到自动再到智能无人驾驶。而在BI领域&#xff0c;自1958年BI的概念提出后&#xff0c;底层数据准备从报表开发、Cube多维模…...

vConsole手机调试模式uniapp和原生h5

手机打开调试模式的方法 尽量放在页面头部&#xff0c;底部有可能不行 原生 <script src"https://cdn.bootcss.com/vConsole/3.3.0/vconsole.min.js"></script> <script>// init vConsolevar vConsole new VConsole();console.log(Hello world)…...

Flutter Dart语言(05)异步

0 说明 该系列教程主要是为有一定语言基础 C/C的程序员&#xff0c;快速学习一门新语言所采用的方法&#xff0c;属于在C/C基础上扩展新语言的模式。 1 async和await 在Dart语言中&#xff0c;虽然没有像其他语言&#xff08;如Java、C、Python&#xff09;中的传统多线程概…...

滇医通微信小程序分析笔记

注意 本文章仅供学习交流使用&#xff0c;如果你是铁粉你就会知道博主之前发布过一篇相关的文章&#xff0c;但是由于代码涉及到法律相关所以就隐藏了&#xff0c;两年的时间过去了&#xff0c;因为女朋友已经早早安排上了&#xff0c;所以就搁置了&#xff0c;本次不做代码分…...

wordpress 支持手机6/友情链接交换软件

查看当前系统是否有安装ssh ssh localhost ssh: connect to host localhost port 22: Connection refused //没安装 安装 sudo apt-get install openssh-server 启动服务 sudo /etc/init.d/ssh start ps -e|grep ssh // 查看启动是否成功 ssh的配置方法 /etc/ssh/sshd_c…...

网站建设 付款方式/已备案域名交易平台

一. 数字测试 格式&#xff1a;n1 -op n2 测试操作op: eq/ne/le/ge/lt/gt --> 等于/不等于/小于等于/大于等于/小于/大于 1. 数字比较可以使用特殊的(())操作符&#xff0c;用法更接近于C语言&#xff0c;见数字测试。 二. 字符串测试 s1 s2    #s1与s2是否相同…...

python可以做网站/大地seo视频

一个合格的前端工程师应该具备怎样的能力&#xff1f;下面和千锋广州小编一起来看看吧。 1、学习新技术的能力 无论你是一个入坑多年的老鸟还是刚刚入坑的菜鸟&#xff0c;心里都明白&#xff0c;前端技术的更新真的不是一般的快啊。如果想要做好前端开发这项工作&#xff0c…...

免费微网站系统/google服务框架

什么是循环依赖&#xff1f;举个例子/** * A 类&#xff0c;引入 B 类的属性 b */public class A { private B b;}/** * B 类&#xff0c;引入 A 类的属性 a */public class B { private A a;}再看个简单的图&#xff1a;像这样&#xff0c;创建 a 的时候需要依赖 b&#xff…...

付费下载网站源码/广东短视频seo营销

一点PHP博客分享关于mysql中的执行计划explain的作用&#xff0c;对于博主而已这个东西可以神器啊&#xff0c;能让你清晰的看到mysql他的执行效果&#xff0c;从而可以让你更进一步的去调优。首先和大伙讲讲MySQL的基础结构及查询基本原理。在绝大部分的数据库软件中&#xff…...

新闻网站的编辑该怎么做/软文广告经典案例分析

1背景Permalink .NET Framework 提供了四种定时器&#xff0c;然而其精度都不高&#xff08;一般情况下 15ms 左右&#xff09;&#xff0c;难以满足一些场景下的需求。 在进行媒体播放、绘制动画、性能分析以及和硬件交互时&#xff0c;可能需要 10ms 以下精度的定时器。这里不…...