网络知识 娱乐 Redis6学习笔记-第一章-Redis的介绍与环境搭建

Redis6学习笔记-第一章-Redis的介绍与环境搭建

Redis6学习笔记-第一章-Redis的介绍与环境搭建

阅读本专栏您需要具有以下基础:
1.了解Linux的基本命令
2.对SpringBoot有一定了解
3.具有一定的计算机网络相关知识

本专栏预计分为四个章节:
第一章:Redis6的介绍和环境搭建
第二章:Redis6的基本操作(五大数据类型、Redis6配置文件详解、Redis6发布和订阅模式、Redis6新数据类型、Jedis操作Redis6、Redis6与Springboot整合)
第三章:Redis6的提高部分(Redis6的事务,RDB、AOF持久化操作,Redis6的主从复制、Redis6集群)
第四章:Redis6的应用问题解决(缓存穿透、缓存击穿、缓存雪崩、分布式锁)

eg:本专栏的内容来自于尚硅谷的Redis6课程,经过学习后总结的笔记,部分图片来源于网络,如有侵权请联系我修改。后续会慢慢更新,建议订阅专栏

文章目录

  • Redis6学习笔记-第一章-Redis的介绍与环境搭建
    • 一、什么是NoSQL(Not Only SQL)
      • 1.NoSQL的概述
      • 2.NoSQL适用场景和不适用场景
    • 二、为什么要使用NoSQL
    • 三、Redis的后台启动(Linux)
      • 1.备份redis.conf文件
      • 2.后台启动设置
      • 3.启动Redis
      • 4.退出Redis
      • 5.设置Redis启动密码(建议设置)
    • 四、Redis简介
      • 1.Redis的端口6379来历
      • 2.Redis数据库的管理
      • 3.Redis为什么性能高

一、什么是NoSQL(Not Only SQL)

1.NoSQL的概述

NoSQL是非关系型数据库,不依赖业务逻辑方式存储,而是以简单的K-V模式存储,大大增加了数据库的扩展能力

1.不遵循SQL标准

2.不支持ACID

3.远超于SQL的性能

2.NoSQL适用场景和不适用场景

适用

1.对数据高并发的读写

2.对海量数据的读写

3.对数据高可扩展性

不适用

1.需要事务支持

2.基于sql的结构化查询存储,处理复杂关系

二、为什么要使用NoSQL

在负载均衡策略的时候,会引发session问题:

有可能第一次session存在了服务器1,但是第二次session被分配到了服务器2,就会找不到session导致后续功能失效。

解决方法:

1.存储到客户端的cookie中,每次请求服务器的时候把session带过来。不安全,网络负担效率低。

2.session复制,每次复制session到每一个服务器中。数据冗余。

3.NoSQL数据库,第一次请求服务器的时候把session存放在NoSQL数据库中,以后其他服务器访问的时候,先去NoSQL数据库中寻找是否有session。完全在内存中,速度快,数据结构简单,减少了CPU的压力。

4.NoSQL数据库还有一个优点,可以把经常需要读操作的数据,放在NoSQL数据库中,减少了io的读操作,减少了io的压力。

三、Redis的后台启动(Linux)

默认安装目录:/usr/local/bin

redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何

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

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

redis-sentinel:Redis集群使用

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

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

1.备份redis.conf文件

我的redis文件是放在/opt目录下的,我把它的redis.conf文件复制了一份到了/etc/redis.conf

cp  /opt/redis-6.2.6/redis.conf /etc/redis.conf

2.后台启动设置

修改redis.conf(128行)文件将里面的daemonize no改成 yes,让服务在后台启动

在这里插入图片描述

3.启动Redis

输入redis-server+配置文件路径

然后使用redis-cli,如果ping的通那么就启动成功

[root@centos100 ~]# redis-server /etc/redis.conf
[root@centos100 ~]# redis-cli
127.0.0.1:6379> ping
PONG

4.退出Redis

[root@centos100 ~]# redis-cli shutdown

或者是直接kill掉redis的进程号

5.设置Redis启动密码(建议设置)

同样的去往/etc/redis.conf文件下,打开902的requirepass注释 后面跟上想要设置的密码即可
在这里插入图片描述

四、Redis简介

1.Redis的端口6379来历

根据一个名叫Merz的女明星对应的九键输入法

2.Redis数据库的管理

默认16个数据库,类似数组下标从0开始,初始默认使用0号库

使用命令 select id来切换数据库。如: select 8

统一密码管理,所有库同样密码。

dbsize查看当前数据库的key的数量

flushdb清空当前库

flushall通杀全部库

3.Redis为什么性能高

1.完全基于内存

2.Redis是单线程+多路IO复用技术

多路复用是指使用一个线程来检查多个文件描述符(Socket)的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作可以在同一个线程里执行,也可以启动线程执行(比如使用线程池)本质上是没有阻塞的。