redis基础知识

简介:
Redis是一个开源,使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库。
他通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
特点:
Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
Redis支持数据的备份,即master-slave模式的数据备份。
优势:
性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。


安装:
windows下载地址:https://github.com/dmajkic/redis/downloads
下载之后解压,选择32位的还是64位的文件,拷贝到你的盘目录任意位置中
文件包括:
redis.conf          # 配置文件
redis-benchmark.exe         #基准测试
redis-check-aof.exe         # aof
redischeck-dump.exe        # dump
redis-cli.exe               # 客户端
redis-server.exe            # 服务器
redis基础知识

打开cmd进入到目录中  G:/redis

输入命令:  redis-server.exe redis.conf   就启动了服务端

redis基础知识

重开一个窗口启动客户端

输入命令:redis-cli.exe  该命令为连接本地redis服务器,ping 命令用于检测本地服务器是否开启

 redis基础知识

远程服务器
如果需要在远程 redis 服务上执行命令,同样我们使用的也是 redis-cli 命令。

语法:redis-cli -h host -p port -a password

配置:
Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf。
你可以通过 CONFIG 命令查看或设置配置项。  
查看配置  CONFIG GET
语法:CONFIG GET CONFIG_SETTING_NAME    * 号获取所有配置项

编辑配置
通过修改 redis.conf 文件或使用 CONFIG set 命令来修改配置。 语法:CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUEredis 

数据类型:

Redis支持五种数据类型:字符串(String),哈希(Map),列表(List),集合(set),有序集合(sorted set)

五种数据类型的添加与查看

字符串(String)
string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。
string类型是Redis最基本的数据类型,一个键最大能存储512MB。
语法:SET name value   GET  name。键为 stringName,对应的值为 redisString
redis基础知识
哈希(Map)
Redis hash 是一个键值对集合,每个 hash 可以存储 232 - 1 键值对(40多亿)。。
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。
语法:Redis HMSET name  key1 value1 key2 value 2 key 3 value 3 ...... , HGETALL name
redis基础知识
列表(List)
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。
列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。
语法:lpush name value1   lrange name
redis基础知识
集合(set)
Redis的Set是string类型的无序集合。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。
sadd命令   添加一个string元素到,key对应的set集合中,成功返回1,如果元素以及在集合中返回0,key对应的set不存在返回错误。
但根据集合内元素的唯一性,第二次插入的元素将被忽略。  smembers name
redis基础知识
有序集合(sorted set)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
zset的成员是唯一的,但分数(score)却可以重复。
zadd  添加元素到集合,元素在集合中存在则更新对应score

 redis基础知识

五种类型常用的命令请参考官方文档。