数据库第十五课-------------非关系型数据库----------Redis 1

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介: 数据库第十五课-------------非关系型数据库----------Redis

安装Redis

Readis的优点

  1. Reids是非关系型数据的代表,里面储存的数据类型十分多样
  2. Reids是内存型数据,读写快速
  3. 应用十分广泛

安装Redis

# 添加EPEL仓库,更新yum源
sudo yum install epel-release
sudo yum update
# 安装Redis数据库
sudo yum -y install redis
# 启动Redis服务
sudo systemctl start redis
# 进入Redis命令行模式操作
redis-cli
# 退出redis
exit

配置redis

# 进入到配置文件
sudo vim /etc/redis.conf
# 一般而言,配置文件会在这个路径下
# 允许被远程连接,注释掉这一行
# bind 127.0.0.1
# 为redis设置密码,取消注释
requirepass foobared
# foobared为密码,可以自己更改
# 保存后重启
sudo systemctl restart redis
# 因为设置了密码,所以有任何操作出现了
(error) NOAUTH Authentication required
# 可以先输入密码,1223456是具体的密码
auth 123456

注意一下,进入到redis命令模式后我们要输入auth 123456 后面的操作就不用再输入密码了

判断redis是否正常运行,我们输入ping来看看

如果回复pong就是运行成功了

Reids分区

如同是MySQL里分库一样,对不同的数据进行分区操作,有利于提高数据库的效率。通过利用多台计算机内存的和值,允许我们构造更大的数据库

# 选择redis的分区
select index
# index是分区的编号,只能是数字,默认从0开始,一般最大编号是255

Redis数据类型

有string(字符串)、 hash(哈希)、 set(集合)、list(链表)、sorted set,

图中的写法是让我们可以理解大概是啥类型

啥是链表

链表包含列表

列表形式(通过索引访问元素)

方向是从左往右,而链表是从左往右和从右往左的

Redis操作

string(字符串)

redis中,所有的数据形式都是由键值对组成的,即为 {key: value} ,其中说的数据类型,都是针对值而言

# 获取所有的键,星号* 表示任意匹配
keys *
keys 1*

# 设置值
set key value

# 获取指定的值
get key

# 将给定key的值设为value,并返回key原来的值
getset key value

# 获取一个或多个给定key的值,键之间以空格隔开
mget key1 key2

# 设置值,并将key的过期时间设为n(以秒为单位)
setex key n value

当这个key超过这个时间,就会不存在,为啥会这样呢 ?

原因是redis的全称为内存型数据库,数据本身是保存在硬盘里面的,当启动redis 就会把所有数据写到内存里面去,结束就会保存到硬盘里面

# 当key不存在时,设置值
setnx key value

# 返回key所储存的字符串长度
strlen key

fc62550465084a2592cf58fd74872b99.png

# 同时设置一个或多个键值对
mset key1 value1 key2 value2
# 同时设置一个或多个键值对,当且仅当所有给定key都不存在
msetnx key1 value1 key2 value2

需要注意的是使用msetnx要保证所有的可以的key不存在

hash(哈希)

哈希里面包含字典

字典保存的形式是{key : value}

# 将哈希key中的字段field设为value
hset key field value

# 获取存储在哈希中指定字段的值
hget key field

查看h_num1 中的field字段的值,我们可以理解为h_num1={“field”: “100”}

# 获取在哈希中指定key的所有字段和值
hgetall key

# 获取所有哈希表中的字段
hkeys key

# 查看哈希key中指定的字段是否存在
hexists key field

存在返回1,不存在返回0

# 取哈希中所有值
hvals key

注意一下key和filed是不一样的,key是哈希的名称,filed是哈希里面的字段名

# 删除一个或多个哈希字段
hdel key field1 field2

# 获取哈希中字段的数量
hlen key

650e6a4ded0646749ab33d9fc426185d.png

# 获取哈希中字段的数量
hlen key
# 获取所有给定字段的值
hmget key field1 field2
# 只有在字段field不存在时,设置哈希字段的值。
hsetnx key field value


相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
14天前
|
canal 缓存 NoSQL
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
根据对一致性的要求程度,提出多种解决方案:同步删除、同步删除+可靠消息、延时双删、异步监听+可靠消息、多重保障方案
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
|
16天前
|
关系型数据库 MySQL Serverless
探索PolarDB MySQL版:Serverless数据库的灵活性与性能
本文介绍了个人开发者对阿里云PolarDB MySQL版,特别是其Serverless特性的详细评测体验。评测涵盖了产品初体验、性能观测、Serverless特性深度评测及成本效益分析等方面。尽管试用过程中遇到一些小问题,但总体而言,PolarDB MySQL版表现出色,提供了高性能、高可用性和灵活的资源管理,是个人开发者和企业用户的优秀选择。
|
23天前
|
关系型数据库 分布式数据库 数据库
2024年全国大学生计算机系统能力大赛PolarDB数据库创新设计赛(天池杯)等你来战!
2024年全国大学生计算机系统能力大赛PolarDB数据库创新设计赛(天池杯)等你来战!
2024年全国大学生计算机系统能力大赛PolarDB数据库创新设计赛(天池杯)等你来战!
|
15天前
|
关系型数据库 MySQL 分布式数据库
PolarDB MySQL数据库场景体验与测评
本文介绍如何在PolarDB上部署数据库,包括登录控制台、配置账号与数据库管理、执行SQL查询及调整Serverless配置等内容。通过创建测试表和数据操作演示了基本数据库管理功能,并展示了如何设置资源弹性扩缩、监控及备份数据。此外,还提供了关于节点切换、压测、加速复杂SQL查询、弹性并行查询及高可用性的详细场景体验说明,全方位展示了PolarDB的强大功能。
|
5天前
|
关系型数据库 分布式数据库 数据库
来!跟通义灵码一起参加PolarDB 数据库创新设计赛,突破传统,探索人机协作
无论你是数据库新手,还是技术大咖,通义灵码邀请你参加2024 年全国大学生计算机系统能力大赛 PolarDB 数据库创新设计赛(天池杯),新参赛模式启动,挑战极限!
|
9天前
|
存储 关系型数据库 分布式数据库
揭秘PolarDB:中国云原生数据库的超级英雄,如何颠覆传统数据存储?
在数字化时代,数据成为企业的核心资产,而云原生数据库则是推动企业转型的关键。PolarDB凭借其先进的存储计算分离架构,在性能、可靠性和易用性方面脱颖而出,成为国内领先的选择。它支持多种数据库引擎,提供多副本存储机制,并采用按量付费模式,有效降低管理和成本压力,助力企业实现高效、可靠的数字化转型。
23 1
|
17天前
|
关系型数据库 分布式数据库 数据库
报名啦|PolarDB数据库创新设计赛(天池杯)等你来战
2024年全国大学生计算机系统能力大赛PolarDB数据库创新设计赛(天池杯)已启动报名,面向全国高校全日制本专科学生。大赛由多家机构联合主办,旨在培养数据库领域人才,促进产学研合作,设有丰厚奖金与奖项。报名截至10月7日,决赛将于12月13日举行。更多详情及报名请访问大赛官网。
|
18天前
|
关系型数据库 分布式数据库 数据库
报名啦|PolarDB数据库创新设计赛(天池杯)等你来战
2024年全国大学生计算机系统能力大赛PolarDB数据库创新设计赛(天池杯)已启动报名,面向全国高校全日制本专科学生。大赛由多家机构联合主办,旨在培养数据库领域人才,促进产学研合作,设有丰厚奖金与奖项。报名截至10月7日,决赛将于12月13日举行。更多详情及报名请访问大赛官网。
|
22天前
|
SQL 关系型数据库 分布式数据库
PolarDB Proxy配置与优化:提升数据库访问效率
【9月更文挑战第6天】PolarDB是阿里云推出的高性能分布式关系型数据库,PolarDB Proxy作为其关键组件,位于客户端与PolarDB集群间,负责SQL请求的解析与转发,并支持连接池管理、SQL过滤及路由规则等功能。本文详细介绍了PolarDB Proxy的配置方法,包括连接池、负载均衡和SQL过滤设置,并探讨了监控调优、缓存及网络优化策略,以帮助提升数据库访问效率。
27 1
|
存储 缓存 负载均衡
学会这15点,让你分分钟拿下Redis数据库
介绍Redis技术入门的一些基础知识点
学会这15点,让你分分钟拿下Redis数据库