`
李大宝
  • 浏览: 14420 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

redis基础教程使用

 
阅读更多

Redis的定义

Redis是开源的使用C语言编写的Key/Value存储系统(nosql数据库)属于非关系型数据库

1:开源的;

2:C语言编写的;

3:key/value(重点)

 NoSQL(非关系型数据库)是什么?

一、关系型数据库与非关系型数据比较

1.Mysql Oracle属于关系型数据库:表结构存储

2.Nosql:key/value

二、非关系型数据库的应用场景

 电商、互联网企业

三、常见NoSQL

1.mongodb(文档型数据库)支持的数据类型:bson

2.redis(内存数据库)支持的数据类型:string、set、list、hash、sorted-set

3.hbase(海量的分布式nosql数据库--hadoop生态体系)

 

Redis的特性

一、缓存

什么是缓存:把硬盘上的数据存储在内存上提供快速的读写操作。

常见的缓存工具?

memcached

OScache

Redis(它还能持久化!!!有丰富的数据类型)

 

二、丰富的数据类型

Redis是key/value存储形式,其中key的类型永远是string和二进制、而value的类型非常丰富,例如:string、list、set、hash(map)等等。

三、持久化

持久化就是把数据保存到硬盘上。(例如:文件IO)

 

什么是Redis数据类型

Redis数据类型:Redis使用key/value格式存储数据,其中key的类型永远是string,而value的类型非常丰富;

常用的数据类型:

string:存储字符串

list:是一个集合,可以在头部或者尾部操作数据

hash(Map):采用键值对存储

set:无序不可重复的集合

SortedSet:使用score来排序的集合

 

string类型

最为基础的数据存储类型。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。

 

命令

描述

例子

Set

赋值

SET key value

Get

获取值

GET key

APPEND

追加字符串

APPEND key value

DECR

减少值

DECR key

INCR

增加值

INCR key

DECRBY

设置减少数值的步长

DECRBY key decrement

INCRBY

设置增加数值的步长

INCRBY key increment

GETSET

先获取值再赋值

GETSET key value

STRLEN

返回key的长度

STRLEN key

SETEX

设置key在服务器中存在的时间

SETEX key seconds value

SETNX

Key不存在设置值,否则不做操作

SETNX key value

SETRANGE

字符串替换

SETRANGE key start "value"

GETRANGE

截取字符串

GETRANGE key start end

SETBIT

设置二进制的值

SETBIT key offset value

GETBIT

获取二进制的值

GETBIT key offset

MGET

返回多个key的值

MGET key [key ...]

MSET

设置多个key、value

MSET key value [key value ...]

MSETNX

Key不存在设置多个key、value值,否则不做操作

MSETNX key value  [key value ...]

 

 

list类型

List类型是按照插入顺序排序的字符串链表。可以在链表的两头插入或删除元素,List中可以包含的最大元素数量是4294967295。

命令

描述

例子

LPUSH

在list头部添加多个值

LPUSH key value [value ...]

LPUSHX

Key存在则添加值,否则不做操作

LPUSHX key value

LRANGE

遍历list中key数据

LRANGE key start stop

LPOP

从头部弹出key中的值

LPOP key

LLEN

返回key的长度

LLEN key

LREM

删除前面几个值等于某值得元素

LREM key count value

LSET

给下标赋值

LSET key index value

LINDEX

返回下标中的值

LINDEX key index

LTRIM

截取list中的值

LTRIM key start stop

LINSERT

在某个值的前面或者后面插入值

LINSERT key BEFORE|AFTER pivot value

RPUSH

在list尾部添加多个值

RPUSH key value [value ...]

RPUSHX

在list尾部添加单个值

RPUSHX key value

RPOP key

从尾部弹出值

RPOP key

RPOPLPUSH

从一个集合尾部弹出值插入到里一个集合的头部

RPOPLPUSH source destination

 

 

hash类型

Hashes类型可以看成具有String Key和String Value的map容器。非常适合于存储值对象的信息。如Username、Password和Age等。

命令

描述

例子

HSET

给key中filed字段赋值

HSET key field value

HGET

获取key中filed的值

HGET key field

HEXISTS

判断filed是否存在

HEXISTS key field

HLEN

获取key 的长度

HLEN key

HDEL

删除file字段

HDEL key field [field ...]

HSETNX

如果filed不存赋值否则不做操作

HSETNX key field value

HINCRBY

给filed增加步长

HINCRBY key field increment

HGETALL

获取所有的filed和value

HGETALL key

HKEYS

获取key

HKEYS key

HVALS

获取value

HVALS key

HMGET

获取所有filed字段的值

HMGET key field [field ...]

HMSET

设置多个filed字段value

HMSET key field value [field value ...]

 

set类型

Set类型看作为没有排序的字符集合,Set集合中不允许出现重复的元素,redis可以在服务器端完成多个Sets之间的计算操作,

如unions、intersections和differences。

这些操作均在服务端完成,因此效率极高,而且也节省了大量的网络IO开销

命令

描述

例子

SADD

添加值

SADD key member [member ...]

SMEMBERS

遍历集合

SMEMBERS key

SCARD

获取key的成员数量

SCARD key

SISMEMBER

判断成员是否存在

SISMEMBER key member

Spop

随机弹出值

Spop key

SREM

删除指定的成员

SREM key member [member ...]

SRANDMEMBER

随机返回成员,不删除原值

SRANDMEMBER key

SMOVE

移动一个集合的成员到另一个集合

SMOVE source destination member

SDIFF

求集合差集

SDIFF key [key ...]

SDIFFSTORE

集合中的差集存储到新集合中

SDIFFSTORE destination key [key ...]

SINTER

求集合交集

SINTER key [key ...]

SINTERSTORE

将集合交集存储到新集合

SINTERSTORE destination key [key ...]

SUNION

求集合并集

SUNION key [key ...]

SUNIONSTORE

将集合的并集存储到新集合

SUNIONSTORE destination key [key ...]

 

sortedset类型

不允许出现重复的元素,每一个成员都会有一个分数(score)与之关联,用分数来进行排序,分数是可以重复的

命令

描述

例子

ZADD

添加排序成员

ZADD key score member [score] [member]

ZCARD

获取成员数量

ZCARD key

ZCOUNT

获取分数在min和max之间成员有多少个

ZCOUNT key min max

ZINCRBY

增加指定成员的分数

ZINCRBY key increment member

ZRANGE

遍历成员以及分数

ZRANGE key start stop [WITHSCORES]

ZRANGEBYSCORE

返回分数在min和max之间的成员和分数

ZRANGEBYSCORE key min max [WITHSCORES]

ZRANK

返回成员的下标

ZRANK key member

ZREM

删除指定成员

ZREM key member [member ...]

ZREVRANGE

遍历成员以及分数从大到小

ZREVRANGE key start stop [WITHSCORES]

ZREVRANK

返回成员下标顺序从大到小

ZREVRANK key member

ZSCORE

获取指定成员的分数

ZSCORE key member

ZREVRANGEBYSCORE

获取成员以及分数按照从高到低

ZREVRANGEBYSCORE key max min [WITHSCORES]

ZREMRANGEBYRANK

删除下标之间的数据

ZREMRANGEBYRANK key start stop

ZREMRANGEBYSCORE

删除分数在min和max中的成员

ZREMRANGEBYSCORE key min max

 redis对于key的应用

使用对key的操作,通常可以用来维护数据

命令

描述

例子

KEYS

获取所有的key

KEYS pattern

Del

删除指定的key

DEL key [key ...]

EXISTS

判断key是否存在

EXISTS key

MOVE

移动一个key到另一个库中

MOVE key db

RENAME

给key从新命名

RENAME key newkey

RENAMENX

修改key的名字

RENAMENX key newkey

PERSIST

持久化key

PERSIST key

EXPIRE

设置key存活时间

EXPIRE key seconds

EXPIREAT

设置key存活时间(年月日)

EXPIREAT key timestamp

TTL

实时查看key存活时间

TTL key

RANDOMKEY

随机返回一个key

RANDOMKEY

TYPE

查看key的中value数据类型

TYPE key

SELECT

进入指定库

SELECT NUM

 

分享到:
评论

相关推荐

    【Redis基础教程及开发案例及解析】Redis基础教程及开发案例及解析

    Redis基础教程及开发案例及解析Redis基础教程及开发案例及解析Redis基础教程及开发案例及解析Redis基础教程及开发案例及解析Redis基础教程及开发案例及解析Redis基础教程及开发案例及解析Redis基础教程及开发案例及...

    Redis安装和使用教程

    ### Redis安装和使用教程 #### 一、Redis简介 Redis是一种功能强大的开源键值(Key-Value)数据库系统,它不仅支持内存数据存储还提供了数据持久化的选项。这使得Redis成为了一个既可以作为缓存又可以作为数据库使用...

    C# Redis 基础使用

    本教程将引导初学者掌握C#中Redis的基本使用。 首先,安装StackExchange.Redis库。通过NuGet包管理器,搜索并安装"StackExchange.Redis",它提供了丰富的API来操作Redis。 1. 连接Redis服务器: 使用`...

    redis基础教程-介绍了redis的安装方法,概念,以及python中redis的使用方法

    介绍了redis的安装方法,概念,以及python中redis的使用方法

    redis安装及使用

    ### Redis安装及使用详解 #### 一、Redis简介 Redis是一种高性能的键值对存储系统,采用内存存储机制,能够实现快速的数据访问速度。...掌握这些基础知识有助于开发者更好地利用Redis来解决实际问题。

    Windows下安装Redis图文教程

    在Windows环境下安装Redis是一项简单但重要的任务,尤其对于开发者来说,因为Redis是一个高效的数据存储和缓存系统。本文将提供一个详细的步骤指南,帮助你...记住,理解Redis的基础知识和最佳实践是充分利用它的关键。

    超强、超详细Redis入门教程

    ### Redis入门教程精要 #### 1. Redis 是什么? Redis 是一款开源的、使用 C 语言编写的、支持网络交互的 Key-Value 数据库。它不仅能够将数据存储在内存中实现高速读写,同时也提供了多种持久化机制来确保数据的...

    Redis基本教程

    安装完毕后,会有几个基础工具文件,如性能测试工具redis-benchmark、日志文件检测工具redis-check-aof、快照文件检测工具redis-check-dump、客户端redis-cli和服务端redis-server。通过命令行工具redis-cli可以与...

    尚硅谷redis视频教程更新

    1. **Redis基础概念介绍**:包括Redis的历史背景、特点、优势以及应用场景等。 2. **环境搭建与配置**:详细介绍如何安装Redis服务器及客户端工具,并配置相关参数。 3. **数据类型详解**:对Redis支持的各种数据...

    Redis开发教程及项目案例

    本教程将引导初学者全面掌握Redis的开发与应用,通过丰富的案例来深化理解。 首先,我们需要了解Redis的基本概念。Redis支持的数据结构包括字符串、哈希、列表、集合和有序集合,这些数据结构设计独特,使得Redis在...

    redis命令基础教程

    ### Redis 命令基础教程知识点总结 #### 一、Redis 概述 - **定义**: Redis 是 Remote Dictionary Server 的缩写,它是一款完全开源且免费的高性能 KV(Key-Value)分布式内存数据库。 - **特性**: - **基于内存...

    Redis教程_redis_Redis教程_

    本教程将深入探讨Redis的基础知识、核心特性和实际应用。 一、Redis简介 Redis作为一个内存数据存储,具有极快的数据读写速度,同时通过持久化机制保证数据在断电后仍能恢复。它的设计目标是提供低延迟的服务,并...

    超详细Redis数据库入门教程.docx

    Redis 数据库入门教程 Redis 是一个开源的、使用 C 语言编写的、支持网络交互的、可基于内存也可持久化的 Key-Value 数据库。Redis 的官网地址是 redis.io。Vmware 在资助着 Redis 项目的开发和维护。 Redis 的...

    redis的初级教程

    redis学习的一些总结,其中包含一些简单操作,常用命令,java中使用redis,redis充当Mybatis的二级缓存等一些基础内容

    Redis 实例 教程

    Redis基础概念 Redis支持多种数据类型,如字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。这些数据类型使得Redis能处理各种复杂的数据操作需求。 ### 2. Redis安装与启动 ...

    Redis 教程合集(2019版).pdf

    - 高性能:Redis使用内存存储数据,读写速度极快。 - 数据持久化:支持RDB和AOF两种持久化方式,确保数据在系统崩溃后仍可恢复。 - 主从复制:支持多个从节点复制主节点数据,提高数据可用性和读取性能。 - 集群支持...

    v2 动力节点redis基础

    【Redis基础知识】 Redis,全称为Remote Dictionary Server,是一款开源的、基于内存的、高性能的NoSQL数据库。它采用键值对(Key-Value)数据结构,同时也支持多种其他数据结构如列表(List)、集合(Set)、有序...

    Redis视频教程.zip

    这是一套超级详细的Redis实战视频教程,本套Redis视频教程适合Redis数据库零基础的学员学习,这套Redis入门视频教程俗易懂。

Global site tag (gtag.js) - Google Analytics