热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

redishashfield过期时间_Redis

redis支持数据永久存储,五种数据类型数据模型key-valuestring,list[列表],set[集合],zset[有续集和],h
0b8eebd85a6dff83d6334c9373ec06f0.png

redis 支持 数据永久存储,

五种数据类型

数据模型 key-value

string , list[列表] ,set[集合] ,zset[有续集和] , hash

支持服务器主从模式【集群-高可用】

redis 和 memcache 对比

1.redis 支持数据持久化 , memcache 不支持

2.redis 不但有 sting类型的 key-value ,还有更多的数据存储类型。而memcache 只有 string 类型的 key-value

3.redis 支持 主从集群,memcache 集群很弱,若到基本没人用

redis 和 mongodb 的区别

1.redis 是key-value存储的 ,mongodb是 文档类型存储

2.mongodb 有索引 ,redis 没有

3.mongodb 数据是结构化存储 ,而 redis 只有五大类型存储

4.端口号 不一样 ,mongodb 端口 27017 。 redis 6379

5.mongodb 有用户,和自定义创建库和集合能力 ,而redis 没有

6.mongodb 不支持事物, redis 支持(弱)

共同性:都是高性能的 nosql 数据库 ,数据都永久存储

redis 优势

性能极高 ----读每秒 11万/秒 。 写 8.1万/秒

丰富数据类型 ----redis 支持 sting,list,set,zset,hash 数据类型操作

原子性 ----redis的所有操作都支持原子性,意思就是成功就都执行,失败就都不执行,多个操作支持事物,即原子性(通过MULTI/EXEC包裹使用)

api接口丰富,调用简单(面向对象)

上线时候需要修改redis(其他数据库同理)端口号(安全,别人猜不到)

配置文件修改可以后台操作,因为开启之后终端就会被占用

配置文件修改可访问的ip地址,修改为0.0.0.0 然后可视化工具输入ip地址端口号就可以链接

redis 默认创建16个数据库,从0开始到15(可修改,在配置文件中修改初始数量)

redis指令

Redis对key的操作命令

——————————————————————————————————-

keys(查找key) * 所有

exists (判断key存不存在) key名字

type key(查看key 类型)key 名字

dbsize(查看key的数量)

rename(修改key名字) rename 旧key 新key

set(设置 ) set key value‘添加 key-value’

1.添加有过期时间的key set id 100 ex 3600

2.添加不存在的key ,key set id 100 ex 3600 nx

3.存在就修改,不存在就默认 key set id 100 ex 3600 xx

4.查看指定key剩余时间,ttl key(如果key没有过期时间,返回负值)

expire 设置key 过期时间值 ,单位秒 expire name 10

del 删除一个或多个key , del key1 key2 key3

flushdb 清楚当前数据库数据

select 切换数据库 select N(n是要进的数据库数字)

flushall 清除所有数据库数据

—————————————————————————————————————————

字符串(string)操作命令

set key value [ex 秒数]/[px 毫秒数] [nx]/[xx](用于设置给定 key 的值。如果 key 已经存储其他值, SET 就覆写旧值,且无视类型

get key(用于获取指定 key 的值。如果 key 不存在,返回 nil 。如果key 储存的值不是字符串类型,返回一个错误

mset key1 value1 key2 value2 …(一次性设置多个键值

mget key1 key2 key3 …(获取多个key的值

incr key(自增 每次自增1

incrby key step(指定步长的自增 可为负数

decrby key step(指定步长的自减

append key value(把value追加到key的原值上

getset key newValue(设置新值同步返回旧值

——————————————————————————————————————————

列表(list)操作命令

lpush key value(把值插入到列表的头部(左边) 。 从左向右添加

rpop key(从列表右边(尾部)删除元素,并返回删除的元素值 。从右向左弹出列表中数据

llen key(获取列表的长度,返回的是数字

lrange key startIndex endIndex(返回指定区间内的元素,下标从0开始

rpush key value(从尾部添加, 从右向左添加

lpop key(从头部删除元素并返回删除元素值

rpoplpush mylist otherlist(移除列表的最后一个元素,并将该元素添加到另一个列表并返回,从左向右弹出列表中数据

———————————————————————————————————————————

哈希(hash)操作命令

表名:主键字段名:id值 user:id:1 hash的key值

类似于PHP的关联数组。一般用于存储数据库中一条记录值。

hset key field value(把key中 field字段的值设置为 value,如果没有field字段,直接添加,如果有,则覆盖原field字段的值

hmset key field1 value1 field2 value2 …(一次性设置多个

hget key field(获取key中指定field字段的值

hmget key field1 field2 …(一次性获取之个key中field字段的值

hgetall key(返回key中所有字段的值

hdel key field(删除key中指定的field字段

hlen key(返回key中元素的数量

hexists key field(判断key中有没有field字段

hincrby key field step (把key中field字段的值自增长 ,步长可以为负数

hkeys key(返回所有key对应的field字段

hvals key(返回所有key对应field字段对应的值

——————————————————————————————————————————————

集合(set)操作命令

redis的set是无序集合。集合里不允许有重复的元素。

set元素最大可以包含(2的32次方-1)个元素。

场景:存放用户Id,不重复的信息 抽奖,好友关系 脉脉

sadd key value1 value2(向集合key中添加元素

smembers key(返回key集合中所有的元素

scard key(返回key集合中元素的个数

srem key value1(删除key集合中为value1的元素

spop key(随机删除key集合中的1个元素并返回

sismember key value( 判断value是否存在于key集合中

smvoe sSet dSet value(把源集合中的value删除,并添加到目标集合中 【移动】

sinter key1 key2(求出key1,key2两个集合的交集,并返回

sunion key1 key2(求出key1,key2两个集合的并集,并去重,并返回

sdiff key1 key2(求出key1与key2的差集

——————————————————————————————————————————————-

有序集合(zset)操作命令

和set一样有序集合,元素不允许重复,不同的是每个元素都会关联一个分值。

zadd key score(分值) value(给key有序集合中添加元素

zrem key value1(删除key有序集合中指定的元素

zrange key start end [withscores](返回有序集中,指定区间位置内的成员 ,从小到大排列

zrevrange key start end [withscores](返回有序集中,指定区间位置内的成员 ,从大到小排列

zremrangebyscore key min max&#xff08;按照分值来删除元素&#xff0c;删除score在 min<&#61;score<&#61;max之间的

zcard key&#xff08;返回集合元素个数

zcount key minScore maxScore&#xff08;返回min <&#61; score <&#61; max分值区间内元素的数量

zscore key value&#xff08;返回有序集中&#xff0c;成员的分数值

zincrby key score 元素&#xff08;对有序集合中指定成员的分数加上增量 把value的分数&#43;score值

后台挂起启动 redis-server /usr/local/redis-5.0.7/redis.conf

关闭 pkill redis



推荐阅读
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文详细介绍了GetModuleFileName函数的用法,该函数可以用于获取当前模块所在的路径,方便进行文件操作和读取配置信息。文章通过示例代码和详细的解释,帮助读者理解和使用该函数。同时,还提供了相关的API函数声明和说明。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 本文介绍了使用PHP实现断点续传乱序合并文件的方法和源码。由于网络原因,文件需要分割成多个部分发送,因此无法按顺序接收。文章中提供了merge2.php的源码,通过使用shuffle函数打乱文件读取顺序,实现了乱序合并文件的功能。同时,还介绍了filesize、glob、unlink、fopen等相关函数的使用。阅读本文可以了解如何使用PHP实现断点续传乱序合并文件的具体步骤。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 有没有一种方法可以在不继承UIAlertController的子类或不涉及UIAlertActions的情况下 ... [详细]
author-avatar
傻咾厷叫我洪儿
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有