Linux系统中redis基础

本节主要学习redis的概述,安装目录结构,命令解析和redis登录更改,数据库的操作,和redis的持久化。


目录

一、概述

二、安装

1.编译安装

2.rpm安装

三、目录结构

四、命令解析

五、redis登陆更改

问题

解决办法

六、数据库操作

1、登录数据库

1.1本地登录

1.2远程操作

2、帮助信息

3、库操作

4、数据操作

七、redis持久化

1、RDB模式

默认持久化

触发条件

2、AOF模式---默认关闭

[appendonly.aof 默认进程启动时读取](#appendonly.aof 默认进程启动时读取)

开启


一、概述

1、NoSQL

1.1非关系型数据库

1.2内存存储

1.3类型

文档型数据库(Document-oriented database)如MongoDB;

列族数据库(Column-family database)如HBase、Cassandra等;

图形数据库(Graph database)如Neo4j、ArangoDB等;

键值对数据库(Key-value database)如Redis、Memcached等;

对象数据库(Object-oriented database)如db4o等。

1.4应用场景

缓存:Redis最常用的应用场景就是缓存,它可以缓存各种类型的数据,如数据库查询结果、API返回结果等,以提高应用程序的响应速度和并发性能。

分布式锁:Redis的分布式锁可以确保在分布式系统中对某个资源的互斥访问,避免多个节点出现并发操作的问题。

计数器:Redis支持对计数器的操作,能够方便地实现各种计数器的功能,如网站访问次数计数、订单数量计数等。

会话管理:Redis可以用来管理会话信息,实现会话的状态存储和共享,避免了单点故障的问题。

消息队列:Redis支持发布订阅模式,可以作为一个轻量级的消息队列使用,实现异步消息处理和任务派发等功能。

2、Redis

Remote Dictionary Server 远程字典服务

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

内存存储、持久化

键值对存储

监听端口号 6379

数据类型 :字符串(string) 哈希值(hash) 列表(list) 集合(set) 位图(bitmap)

二、安装

1.编译安装

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

make && make install

2.rpm安装

yum install -y epel-release

yum install -y redis

启动 systemctl start redis

默认监听127.0.0.1地址

三、目录结构

|----------------|-----------|
| rpm -ql redis---查看是否安装redis ||
| /var/lib/redis | 持久化文件存储目录 |
| /var/log/redis | 日志文件存储目录 |
| /var/run/redis | PID文件存储目录 |

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

四、命令解析

redis-server

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

kill关闭redis

然后在重启,服务后台进行

六、数据库操作

1、登录数据库

1.1本地登录

监听回环地址 redis-cli

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

1.2远程操作

客户端: redis -cli -h 服务器地址 -p 端口号

2、帮助信息

help 命令字 tab补齐

3、库操作

select 数据库编号 ---切换

4、数据操作

|----------|--------------------------------------|
| set | 设置键值对 |
| set | set key value |
| keys | keys * ---查看所有键的名称 |
| keys | keys 键名称---查看一个键是否存在 |
| get | 取出键值对 |
| get | get 键 键不存在则返回空 |
| del | 删除键值对 |
| del | del key |
| flushall | 清空所有数据库中的数据 |
| rename | 重命名键名称 |
| rename | 不论更名后的键是否存在都会覆盖原有键, 并将改名前的键的值赋予改名后的键 |
| rename | rename oldkey newkey |
| renamenx | 移动键值对到指定数据库, |
| renamenx | move key dbnumber,假如目标数据库中存在同名键则移动失败 |
| ttl | 查看键值对的生命周期 |
| ttl | ttl key -1 永久 |
| ttl | -2 已过期 |
| expire | 设置键值对的存储周期 expire key seconds |
| expire | 设置键值对的存储周期 expire key seconds |
| expire | 设置键值对的存储周期 expire key seconds |

取出键值,添加键值,删除键值,查看键值

清除所有键值

重命名键名称

移动键值对到指定数据库,

查看键值对的生命周期

七、redis持久化

1、RDB模式

默认持久化

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

触发条件

redis进程退出: 宕机 redis程序崩溃

手动保存(触发RDB)" save

2、AOF模式---默认关闭

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

开启

appendonly yes 可以与RDB同时使用

查看日志生成appendonly.aof

创建键值

查看日志


相关推荐
小妖同学学AI19 小时前
抛弃传统数据库!Qdrant用Rust重写AI记忆,大模型知识库迎来性能革命!
数据库·人工智能·rust
m0_7411733319 小时前
如何实现SQL复杂计算触发器原子性_利用触发器事务控制
jvm·数据库·python
手握风云-19 小时前
Redis:不只是缓存那么简单(六)
redis·缓存
秋919 小时前
一键安装mysql8.0.46(附脚本)
数据库
abc123456sdggfd19 小时前
C#怎么使用gRPC双向流_C#如何实现高效RPC调用【进阶】
jvm·数据库·python
qq_4142565719 小时前
Redis如何解决哨兵通知延迟问题_优化客户端连接池动态刷新拓扑的订阅监听机制
jvm·数据库·python
m0_6765443819 小时前
MySQL如何配置不同级别的事务锁_调整innodb_locks_unsafe_for_binlog
jvm·数据库·python
dFObBIMmai19 小时前
mysql索引区分度不足如何解决_mysql多列索引组合优化
jvm·数据库·python
神明93119 小时前
SQL处理JOIN查询中数据倾斜的问题_散列连接键或增加缓存
jvm·数据库·python
m0_5913647319 小时前
c++ 实时傅里叶变换stft c++如何进行音频的频谱分析
jvm·数据库·python