小白带你学习linux的Redis基础(三十二)

简介: 小白带你学习linux的Redis基础(三十二)



前言

Redis(REmote DIctionary Server)是一个开源的内存数据库,它支持存储和检索键值对。Redis被广泛应用于各种场景,如缓存、消息队列、计数器、分布式锁等。

Redis的特点包括:

  1. 内存数据存储:Redis将所有数据都存储在内存中,以实现快速的读写操作。
  2. 数据持久性:Redis可以将数据持久化到硬盘中,以防止数据丢失。
  3. 多种数据结构支持:Redis支持多种数据结构,如字符串、哈希表、列表、集合、有序集合等,使得它可以处理各种不同类型的数据。
  4. 高性能:由于数据存储在内存中,Redis能够以非常高的速度读取和写入数据。
  5. 分布式:Redis支持主从复制和分片,可以实现数据的高可用和横向扩展。
  6. 支持事务:Redis支持简单的事务操作,保证多个操作的原子性。
  7. 发布/订阅模式:Redis支持发布/订阅模式,可以用于实现消息队列。

总之,Redis是一个高性能、灵活和可扩展的数据库,它在许多大规模互联网应用中被广泛使用。

一、概述

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支持发布订阅模式,可以作为一个轻量级的消息队列使用,实现异步消息理和任务派发等功能。

2、Redis

Remote Dictionary Server       远程字典服务

官网        https://www.redis.net.cn/

内存存储、持久化

键值对存储

监听端口号      6379

数据类型

字符串(string)

哈希值(hash)

列表(list)

集合(set)

位图(bitmap)

二、安装

1、基础配置

关闭防火墙,更改宽容模式,配置IP地址能联通网络

配置IP网卡重启网络

vim /etc/sysconfig/network-scripts/ifcfg-ens33
systemctl restart network

关闭防火墙,改为宽容模式

systemctl stop firewalld
setenforce 0

能连上网即可

2、编译安装

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

3、RPM安装网络源安装

yum install -y epel-release
yum install -y redis

启动

systemctl start redis
netstat -anptu | grep redis

 默认监听127.0.0.1地址

三、目录结构

1、rpm  -ql redis

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的密码

/var/lib/redis                  持久化文件存储目录

/var/log/redis                 日志文件存储目录

/var/run/redis                  PID文件存储目录

四、命令解析

1、redis-server

vim /etc/redis.conf 
cp /etc/redis.conf  /opt/redis_6380.conf
vim /opt/redis_6380.conf 
redis-server /opt/redis_6380.conf 
!net

第一步

第二步cp

第三步port改为6380

第四步redis-server /opt/redis_6380.conf

第五步!net

redis启动命令

2、redis-cli

redis登录命令

-h            redis服务器IP

-p             指定访问端口号

-a             指定登录密码

-n             指定数据库编号

2、redis-check-rdb

检查RDB文件

3、redis-check-aof

检查AOF文件

五、redis登录更改

1、问题

更改完port后,systemctl启动redis异常

2、解决办法

理论上cp这个文件可以开启无限的进程

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

使用redis-server /opt/redis_6380.conf

开启的是前台进程如果要开启后台进程需要进行下一步

若要redis后台运需修改配置文件 daemonize yes

六、数据库操作

1、登录数据库

本地登录         监听回环地址              redis-cli

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

远程登录

基本部署条件需要一台服务器和客户端

客户端更改完配置安装软件

服务端需要更改配置文件

vim/etc/redis.conf

systemctl restart redis
netstat -anptu | grep redis

回到客户机输入命令 :redis-cli -h 192.168.28.100

回服务器设置一个密码重启一下服务器

回服务器进一下数据库

比如想换一下库

2、帮助信息

help 命令字

tab补齐

3、库操作

切换           select 数据库编号

4、数据操作

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持久化

1、RDB模式

默认持久化

dump.rdb         数据库启动时会读取

触发条件        redis进程退出                      宕机

                                                                  redis程序崩溃

                       手动保存(触发RDB)       save

2、AOF模式

默认关闭

appendonly.aof          默认进程启动时读取

开启           appendonly  yes

数据库创建用户

查看一下文件

开启aof系统就不读取dump.rdb

可以与RDB同时使用

相关文章
|
5月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
692 7
|
Linux 编译器 开发工具
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
797 2
|
存储 安全 Linux
|
10月前
|
消息中间件 NoSQL Linux
Redis的基本介绍和安装方式(包括Linux和Windows版本),以及常用命令的演示
Redis(Remote Dictionary Server)是一个高性能的开源键值存储数据库。它支持字符串、列表、散列、集合等多种数据类型,具有持久化、发布/订阅等高级功能。由于其出色的性能和广泛的使用场景,Redis在应用程序中常作为高速缓存、消息队列等用途。
1004 16
|
存储 IDE Linux
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
本文详细介绍了在VMware虚拟机中安装CentOS 6.8的全过程。首先,需确保已安装VMware并开启V-CPU虚拟化功能,可通过BIOS设置或使用LeoMoon CPU-V工具检测。接着,下载CentOS镜像文件,并在VMware中新建虚拟机,配置CPU、内存、硬盘等参数。最后,加载ISO镜像启动虚拟机,按照提示完成CentOS的安装,包括语言、键盘、存储方式、地区、密码设置及硬盘分区等步骤。安装完成后,以root用户登录即可进入系统桌面,开始学习Linux命令和操作。
1198 13
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
|
NoSQL 关系型数据库 MySQL
Linux安装jdk、mysql、redis
Linux安装jdk、mysql、redis
674 7
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
629 4
|
6月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
736 1
二、Linux文本处理与文件操作核心命令
|
6月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
435 137
|
6月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
1143 59