导航

redis入门

Posted on 2018-03-13 11:09  Byyyyy  阅读(120)  评论(0)    收藏  举报

 

Redis简介:

Redis是一个开源的使用ANSI C编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库

Redis是REmote DIctionary Server即远程字典服务器的缩写,以类似python字典的结构存储数据,允许其他应用以TCP协议读写字典的内容。

Redis数据库将所有数据存储在内存中,由于内存读写明显好过硬盘读写速度,因此Redis在速度上要好过其他基于硬盘存储的数据库如mysql,由于数据存储在内容中存在易丢失的问题,Redis也同时提供了持久化的功能。

Redis的key-value支持以下几种数据类型:

字符串类型

散列类型

列表类型

集合类型

有序集合类型

Redis安装:

在Linux系统下可直接用以下命令进行安装:

1 wget http://download.redis.io/redis-stable.tar.gz
2 tar xzf redis-stabel.tar.gz
3 cd redis-stable
4 make

Redis启动与停止:

直接启动:

在终端输入以下命令启动Redis的服务器

redis-server

Redis默认占用6379端口可以通过--port参数来调整

redis-server --port 6380

Redis客户端启动:

通过参数-h和-p可以自定义地址和端口号

redis-cli -h 127.0.0.1 -p 6380

Redis停止:

由于Redis在内存中存储数据,运行时可能正在将内存中数据同步到硬盘中,强行终止Redis进程可能会导致数据丢失,所以正确停止的方式是

redis-cli shutdown

Redis收到该命令后,会先断开所有客户端连接,然后进行一次持久化,最后退出完成

Redis多数据库:

Redis默认支持16个独立的数据库,也可以通过配置参数databases来修改,Redis客户端与Redis服务器连接后默认选择第0号数据库,可以通过select命令来更换

127.0.0.1:6380> select 4
OK

 

Redis状态回复:

执行一条命令后,我们会关心命令的返回值,Redis有以下几种返回的类型

1.状态回复,状态回复是最简单的回复类型比如发送set命令设置某个key的value时,Redis会回复OK,如

127.0.0.1:6380[1]> set foo 1
OK

 

2.错误回复,输入一个不存在命令或者格式有误时,Redis返回一个错误回复,错误信息以Error开头,并跟上一个错误信息,如

 

127.0.0.1:6380[1]> dsdadeq
(error) ERR unknown command 'dsdadeq'

 

3.整数回复,Redis没有整数类型,但可以通过递增key值的INCR命令来以整数的形式返回key值

127.0.0.1:6380[1]> incr foo
(integer) 2

 

4.字符串回复,也是最常见的一种回复类型,当请求一个key的值时,会得到字符串回复

127.0.0.1:6380[1]> get foo
"2"

 

Redis命令:

判断一个key是否存在

exists key

如果存在则返回整数类型1,不存在则返回整数类型0

删除一个或多个key

del key

获得key-value的数据类型

type key