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 ...
随机推荐
- Mysq修改引擎
[数据库]Mysql更改默认引擎为Innodb的步骤方法 前言 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定. 基本的差别为:MyI ...
- 18.Vim基础指令(自用)——2019年12月13日
title: vim study date: "2018-12-26 20:17:16" tags: 指令学习 categories: 技术驿站 vim study 2018年12 ...
- linux mail 发送邮件
1.mail -s "Title“ 123456@163.com 只有主题,没有内容 2. 有邮件内容 echo "text" | mail -s "Tit ...
- 01 spring security入门篇
1. 环境搭建 使用SpringBoot搭建开发环境,只需在pom.xml添加如下依赖即可. <?xml version="1.0" encoding="UTF-8 ...
- macOS 和 Linux 的内核区别
有些人可能会认为 macOS 和 Linux 内核之间存在相似之处,因为它们可以处理类似的命令和类似的软件.有些人甚至认为苹果公司的 macOS 是基于 Linux 的.事实上是,两个内核有着截然不同 ...
- java 反射,类的加载过程以及Classloader类加载器
首先自定义一个类Person package reflection; public class Person { private String name; public int age; public ...
- 七、单例设计模式共享数据分析、解决、call_once
一.设计模式大概谈 代码的一些写法,与常规的写法不太一样,程序灵活,维护起来很方便,但是别人接管.阅读代码很痛苦. 用设计模式理念写出来的代码很晦涩.<< head first>&g ...
- delphi String 与 Stream的互转
stream1 := TStringStream.create(str); str := TStringStream(stream1).DataString; Stream 是抽像类, ...
- AGC002 F Leftmost Ball——DP
题目:https://atcoder.jp/contests/agc002/tasks/agc002_f 充要条件是前缀0的个数 >= 颜色种数. 设计 DP ,放一个颜色的时候就把所有该颜色的 ...
- [CSP-S模拟测试]:联(小清新线段树)
题目描述 由于出题人懒所以没有背景.一个无限长的$01$序列,初始全为$0$,每次选择一个区间$[l,r]$进行操作,有三种操作:$\bullet 1\ l\ r$将$[l,r]$中所有元素变成$1$ ...