redis
来源:互联网 发布:java项目有红色感叹号 编辑:程序博客网 时间:2024/06/18 13:18
1、简介
Redis是一个开源的,C语言编写的、内存中的日志型、key-value、数据结构存储系统,可用作数据库、缓存和消息中间件。支持多种类型的数据结构,如字符串(strings)、散列(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)。
2、三个特点
①支持数据持久化,将内存中的数据保存在硬盘中,重启的时候可再次加载使用。
②不仅支持简单的key-value型数据,还提供list,set,zset,hash等数据结构的存储。
③Redis支持数据库的备份,即master-slave模式的数据备份。
3、运行
打开一个cmd窗口,使用cd命令切换目录到C:\redis运行redis-server.exe redis.windows.conf。
这时候另启一个cmd窗口,原来的不要关闭,不然就无法访问服务端了。
切换到redis目录下运行redis-cli.exe -h 127.0.0.1 -p 6379,配置环境变量后则不必再切换到c:\redis目录。
redis.windows.conf文件很重要,其中的requirepass用于配置服务器密码
4、常见命令
连接远程:redis-cli.exe -h 地址 -p 端口 -a 密码
select index 选择redis中不同db
config get dir得到redis安装目录
save备份redis至安装目录下,文件后缀名为rdb
①String
set key value与get key
②hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。
hmset key field value[field value...]
hgetall key
③List 有序,按插入顺序排序,元素可重复,还可添加一个元素到列表的头部或尾部
lpush key value[value...]
lrange key start stop
④Set 是string类型的无序集合,成员唯一,即集合中不能出现重复数据,通过哈希表实现。
sadd key member
smembers key
⑤zset(sorted set:有序集合)成员唯一,不同于set的是每个元素关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。
zadd key score member
zrangebyscore key min max
⑥发布订阅
频道、客户端
5、Redis事务
Redis事务可以一次执行多个命令,有两个重要保证:
①事务是一个单独的隔离操作:所有命令都会序列化、按顺序地执行。事务在执行过程中,不会被其他客户端发送来的命令请求打断。
②事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。
命令包括:multi、exec等。
6、对value操作的命令
- exists(key):确认一个key是否存在
- del(key):删除一个key
- type(key):返回值的类型
- keys(pattern):返回满足给定pattern的所有key
- randomkey:随机返回key空间的一个key
- rename(oldname, newname):将key由oldname重命名为newname,若newname存在则删除newname表示的key
- dbsize:返回当前数据库中key的数目
- expire:设定一个key的活动时间(s)
- ttl:获得一个key的活动时间
- select(index):按索引查询
- move(key, dbindex):将当前数据库中的key转移到有dbindex索引的数据库
- flushdb:删除当前选择数据库中的所有key
- flushall:删除所有数据库中的所有key
教程
参考:http://blog.csdn.net/chen88358323/article/details/47318303
菜鸟教程:http://www.runoob.com/redis/redis-install.html
- Redis
- redis
- Redis
- redis
- Redis
- redis
- Redis
- redis
- REDIS
- Redis
- Redis
- redis
- Redis
- Redis
- Redis
- Redis
- Redis
- Redis
- 关于spark streaming新版本ssc创建不了问题
- cas 4.2.5 返回更多的用户信息
- 多表透视图的制作 第一讲:数据规范化
- LeetCode之Distribute Candies
- PRVG-10122 : ASMLib configuration value
- redis
- 1081. Rational Sum 解析
- 爪哇(Java)的诞生、组成
- 机器学习 VS. 深度学习
- 数据挖掘之决策树介绍
- React Native原生模块向JS传递数据的几种方式(Android)
- Java中初始化和清理
- [linux上路] 开发环境准备四 Debian8 导入CA证书
- springmvc异常处理