推荐在Linux系统上安装,这里我采用CentOS6:
Redis采用3.0.0版本,官网下载即可
由于Redis是C语言编写,需要安装gcc(部分Linux自带gcc)
yum install gcc-c++
解压安装包:
tar -zxvf redis-3.0.0.tar.gz
编译redis源码:
cd redis-3.0.0 make
安装:
make install PREFIX=/usr/local/redis
启动redis:
第一种:不推荐
cd /usr/local/redis/bin
./redis-server
第二种:使用配置文件
cd redis-3.0.0 cp redis.conf /usr/local/redis/bin vi /usr/local/redis/bin/redis.conf
修改daemonize为yes,然后:wq保存
启动:
./redis-server redis.conf
关闭:
./redis-cli shutdown
连接redis:Redis默认是16个数据库
第一种:直接使用自带客户端连接
./redis-cli -h 127.0.0.1 -p 6379
第二种:使用windows的图形化界面客户端连接(直观)
注意:如果有连接不到但是确定已经开启了redis的情况,需要配置防火墙
重点要关注的是第三点:Java连接,稍后再说,先来看一看数据类型
在自带客户端中进行操作:选择第一个(也就是redis-0)数据库
127.0.0.1:6379> select 0 OK
String数据类型:
127.0.0.1:6379> set key value OK 127.0.0.1:6379> get key "value" 127.0.0.1:6379>
多条信息存储和获取:
127.0.0.1:6379> mset k1 v1 k2 v2 OK 127.0.0.1:6379> mget k1 k2 1) "v1" 2) "v2" 127.0.0.1:6379>
根据key删除信息:
127.0.0.1:6379> del k1 k2 (integer) 2
数值增减:
递增:
127.0.0.1:6379> incr num (integer) 1 127.0.0.1:6379> incr num (integer) 2 127.0.0.1:6379> incr num (integer) 3 127.0.0.1:6379> get num "3" 127.0.0.1:6379>
127.0.0.1:6379> incrby num 2 (integer) 2 127.0.0.1:6379> incrby num 2 (integer) 4 127.0.0.1:6379> incrby num 2 (integer) 6 127.0.0.1:6379> get num "6"
递减:
127.0.0.1:6379> decr num (integer) -1 127.0.0.1:6379> decr num (integer) -2 127.0.0.1:6379> decr num (integer) -3 127.0.0.1:6379> get num "-3"
127.0.0.1:6379> decrby num 3 (integer) -3 127.0.0.1:6379> decrby num 3 (integer) -6 127.0.0.1:6379> decrby num 3 (integer) -9 127.0.0.1:6379> get num "-9"
一些其他命令的示范:
127.0.0.1:6379> set str hello OK 127.0.0.1:6379> append str " world!" (integer) 12 127.0.0.1:6379> get str "hello world!"
Hash类型:可以理解为HashMap
代替Hash类型的方式:将需要保存的信息转换成JSON字符串
hset命令,插入和更新没有区分
127.0.0.1:6379> hset user username root (integer) 1 127.0.0.1:6379> hset user password root (integer) 1
多条插入:
127.0.0.1:6379> hmset user username root password root OK
当不存在时候赋值:当字段不存在时赋值,存在的话不做任何操作
127.0.0.1:6379> hset user username root (integer) 1 127.0.0.1:6379> hsetnx user username admin (integer) 0 127.0.0.1:6379>
取Hash中的值:
127.0.0.1:6379> hget user username "root" 127.0.0.1:6379> hmget user username password 1) "root" 2) "123" 127.0.0.1:6379> hgetall user 1) "username" 2) "root" 3) "password" 4) "123"
删除Hash中的字段:
127.0.0.1:6379> hdel user username (integer) 1 127.0.0.1:6379> hgetall user 1) "password" 2) "123"
Hash字段增加数字:
127.0.0.1:6379> hset user age 30 (integer) 1 127.0.0.1:6379> hincrby user age 2 (integer) 32 127.0.0.1:6379> hget user age "32"
判断字段是否存在:
127.0.0.1:6379> hexists user age (integer) 1 127.0.0.1:6379> hexists user sex (integer) 0
只获取key或者value:
127.0.0.1:6379&