redis基础及基本命令
什么是redis
Redis是一个Key-value存储系统,redis提供了丰富的数据结构,包括string(字符串),list(列表),sets(集合),ordered set(有序集合),hashes(哈希)。可以对于这些数据执行原子操作,例如对字符串进行附加操作,递增哈希中的值,向列表中增加元素,计算集合的交集,并集和差集等。
Redis的优点
性能极高:redis能支持超过100k每秒的读写频率。
丰富的数据类型:set集合,ordered set有序集合,list列表,string字符串,hashes哈希
原子性:redis的所有操作都是原子性的,同时redis还支持对几个操作全并后的原子性执行
丰富的特性:Redis还支持public/subscribe,通知,key过期等等特性。
安装redis
1、wget
2、tar
3、make
开启redis
在../src/下开启redis-server(服务端)和redis-cli(客户端),先开启服务端。
使用netstat命令监听6379端口,netstat -nlt |grep "6379"(tcp,不做域名解析,显示socket)
redis命令
set数据类型命令
使用set和get命令来创建和检索string,set命令将取代任何已存在的key,set命令还有一个附加参数,可以让set命令只有在没有相同key的情况下成功,反之亦然,可以让set命令在有相同key的情况下成功
set mykey newval nx
set mykey newval xx
加法器
set sum 1
incr counter (sum=2)
incrby counter 50 (sum=52)
redis可以运用mset和mget命令一次性完成多个key-value的对应关系,使用mget命令,redis返回一个value数组
mset a 1 b c 3
mget a b c
list数据类型命令
lpush 插入一个新的元素到头部
rpush 插入一个新的元素到尾部
lrange 显示元素,需要两个索引,0表示list开头第一个,-1表示最后一个
brpop blpop 用阻塞式请求队列
hashes数据类型命令
hashes是字符串字段和字串值之间的映射
hmset命令设置一个多域的hash表
hget命令获取指定的单域
hgetall获取指定key的所有信息
hmget类似于hget,返回一个value数组
Set无序集合命令
sadd 命令产生一个无序集合,返回集合的元素个数
smembers 用于查看集合
sismember用于查看集合是否存在,匹配项包括集合名和元素个数,匹配成功返回1,匹配失败返回0
ordered set有序集合命令
Redis有序集合与普通集合很相似,是一个没有重复元素的字符串集合,不同之处是有序集合的每一个成员都关联了一个权值用来排序集合中的成员。
使用withscores参数返回记录值
redis基础及基本命令的更多相关文章
- REDIS基础笔记
Redis基础笔记 资源链接 简介 简介 安装 五种数据类型及相应命令 1. 字符串类型 2. 散列类型 3. 列表类型 4. 集合类型 5. 有序集合 其他 事务 SORT 生存时间 任务队列 发布 ...
- linux - redis基础
目录 linux - redis基础 redis 源码编译安装 redis 数据结构 1. strings类型 2. list 类型 3. sets集合类型 有序集合 5. 哈希数据结构 centos ...
- windows下使用redis,Redis入门使用,Redis基础命令
windows下使用redis,Redis入门使用,Redis基础命令 >>>>>>>>>>>>>>>> ...
- [.net 面向对象程序设计深入](14)Redis——基础
[.net 面向对象程序设计深入](14)Redis——基础 很长一段时间没更新博客了,坚持做一件事,真不是件容易的事,后面我会继续尽可能的花时间更新完这个系列文章. 因这个系列的文章涉及的范围太大了 ...
- linux redis基础应用 主从服务器配置
Redis基础应用 redis是一个开源的可基于内存可持久化的日志型,key-value数据库redis的存储分为内存存储,磁盘存储和log文件三部分配置文件中有三个参数对其进行配置 优势:和memc ...
- 【redis 基础学习】(六)Redis HyperLogLog
摘自:http://www.mayou18.com/detail/o6M0v9mi.html Redis HyperLogLog 结构讲解 Redis 在 2.8.9 版本添加了 HyperLogL ...
- [.net 面向对象程序设计深入](36)Redis——基础
[.net 面向对象程序设计深入](36)Redis——基础 很长一段时间没更新博客了,坚持做一件事,真不是件容易的事,后面我会继续尽可能的花时间更新完这个系列文章. 因这个系列的文章涉及的范围太大了 ...
- mysql主从复制、redis基础、持久化和主从复制
一.mysql(mariadb)基础 1.基础命令(centos7操作系统下) 1.启动mysql systemctl start mariadb 2.linux客户端连接自己 mysql -uroo ...
- Redis基础用法、高级特性与性能调优以及缓存穿透等分析
一.Redis介绍 Redis是一个开源的,基于内存的结构化数据存储媒介,可以作为数据库.缓存服务或消息服务使用.Redis支持多种数据结构,包括字符串.哈希表.链表.集合.有序集合.位图.Hype ...
随机推荐
- canvas 点击图片播放视频
canvas.js window.onload=function() { var canvas = document.getElementById('canvas'); var ctx= canvas ...
- 2025年VR虚拟现实技术将渗透人们日常生活
2025年VR虚拟现实技术将给人们带来什么好处?今年早些时候,虚拟现实VR游戏制造商Survios在广州一个非常大的购物中心内的一个小型灰色墙壁店面,通过AMC中心植入了其位置游戏市场上的第一面旗帜. ...
- 3.1.2 Socket网络通信开发
Socket语法 Python中,我们用Socket()函数来创建套接字,语法如下: socket.socket([family[, type[, proto]]]) 参数 family:套接字家族可 ...
- C#基础提升系列——C#任务同步
C#任务同步 如果需要共享数据,就必须使用同步技术,确保一次只有一个线程访问和改变共享状态.如果不注意同步,就会出现争用条件和死锁. 不同步导致的线程问题 如果两个或多个线程访问相同的对象,并且对共享 ...
- vue项目中echarts使用渐变效果报错echarts is not defined
解决办法:在当前单组件中在引用一次
- SSH小应用
1:Spring整合Hibernate <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hi ...
- 4412 make menuconfig和make
一.Menuconfig的操作 • Linux编译器通过.config文件确认哪些代码编译进内核,哪些被裁减掉• menuconfig是生成.config的一个工具• 在Linux发展过程中,配置内核 ...
- 09-排序3 Insertion or Heap Sort(25 分)
According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and gr ...
- 【Flutter学习】之button按钮
一,概述 由于Flutter是跨平台的,所以有适用于Android和iOS的两种风格的组件.一套是Google极力推崇的Material,一套是iOS的Cupertino风格的组件.无论哪种风格,都是 ...
- gym 101810 M. Greedy Pirate (LCA)
题目:https://codeforc.es/gym/101810/problem/M 题意:给 你一颗树,下面有m次查询,求u->v的最大值是多少,输入两点之间都会有两条边,正边有正权,反边有 ...