一.redis简介
redis是c语言开发,基于内存并且可以持久化到硬盘的key-value型非关系型数据库。通常用来做高速缓存。其存储的value可以是字符串string、哈希hash、列表list、集合set和有序集合zset等类型。
二.redis安装
在线安装
1.因为redis是c语言开发的,所以需要安装gcc(在根目录下执行):
yum install gcc-c++
-
因为在线安装,需要使用wget命令,所以如果linux中没有,需要先安装wget
yum -y install wget
-
下载redis最新的稳定版本,也可以指定其他版本的压缩包
-
解压redis压缩包:
tar xzf redis-stable.tar.gz
-
安装redis
进入redis-stable目录,执行下面的命令
make install PREFIX=/usr/local/redis
PREFIX参数指定文件的安装目录,一般安装在/usr目录下
/usr/local/目录下已经生成redis目录 -
启动redis,进入redis到安装目录中,即/usr/local/redis/bin:
输入命令: ./redis-server
能正常启动redis则安装成功
离线安装
-
同样的步骤如果没有安装gcc,也要安装gcc
yum install gcc-c++
把下载好的离线压缩包redis-stable.tar.gz上传到Linux的根目录中
-
解压redis压缩包
tar xzf redis-stable.tar.gz
-
安装redis
make install PREFIX=/usr/local/redis
PREFIX参数指定文件的安装目录,一般安装在/usr目录下
/usr/local/目录下已经生成redis目录 -
启动redis,进入redis到安装目录中,即/usr/local/redis/bin:
输入命令: ./redis-server
能正常启动redis则安装成功
三.redis基本数类型的使用
启动客户端
在redis的安装目录下,和redis-server同级有一个redis-cli文件,输入下面的命令,则可以启动客户端
./redis-cli
**redis使用命令行来查询时,解决乱码问题 **
启动客户端时使用 redis-cli --raw ,问题解决
$ echo -e
./redis-cli get k1
1.string类型
string 是 redis 最基本的类型,一个 key 对应一个 value。它的值是二进制安全的,也就是说 redis 的 string 可以包含任何数据,例如图片视频的二进制值。string 类型的值最大能存储 512MB。string 的存取用的是get 和 set 命令:
127.0.0.1:6379> set java "a language"
OK
127.0.0.1:6379> get java
"a language"
-
Hash类型
Hash是string类型的key-value键值对,它相当于java中的HashMap,比较适合存储对象,他可以存储2^32-1个键值对,Hash的存取命令是hmset,hget
127.0.0.1:6379> hget user name 张三 127.0.0.1:6379> hget user age 10
3.List类型
redis中的List类型是String类型的列表,他可以在列表的头部(左边)或是尾部(右边)来添加元素,每个列表也可以存储2^32-1个元素(40多亿),存取使用lpush和lrange。
127.0.0.1:6379> lpush numbers 1 2 3 3 127.0.0.1:6379> lpush numbers 4 4 127.0.0.1:6379> lrange numbers 0 4 4 3 2 1
4.Set类型
redis中的Set类型是String类型的无序不重复集合,可以存储2^32个元素,集合是通过哈希表实现的,使用sadd添加到对应的set中,返回结果为添加元素个数,如果返回为0,则说明此元素已经存在。获取所有元素使用smembers。
127.0.0.1:6379> sadd names "tom" 1 127.0.0.1:6379> sadd names "jerry" "laopi" 2 127.0.0.1:6379> sadd names "laopi" 0 127.0.0.1:6379> smembers names jerry tom laopi
5.Zset
redis中Zset类型是String类型的有序不重复集合,可以存储2^32个元素,它是通过给每个元素关联一个double类型的值来实现对元素进行排序的,使用zadd key score members 来添加元素,使用zrange来获取集合中的元素
127.0.0.1:6379> zadd zset 4 spring 1 127.0.0.1:6379> zadd zset 1 springboot 1 127.0.0.1:6379> zadd 2 springmvc 3 springData 127.0.0.1:6379> zrange zset 0 4 springboot springmvc springData spring
redis五种基本数据类型的使用总结完毕