这节我们主要讲redis的安装和简单的数据类型和使用,我用的是ubuntu11.10这个系统,我直接安装的,我们安装和编译很简单

wget http://redis.googlecode.com/files/redis-2.4.17.tar.gz //当然我们也可以下载其他的版本的
tar zxf redis-2.4.17.tar.gz
cd redis-2.4.17
make && make install //就可以了
为什么我们使用redis,因为redis不仅能很好的做主从,他对数据的处理,大数据量的存储非常好,而且可以用配置低的服务器做 对于负载均衡来说很好 安装好之后 为了好配置 我们可以把redis-2.4.17底下的src底下的配置文件放到一个文件夹 譬如redis-server redis-cli 安装好之后我们开启redis-server ,redis-cli进入客户端我们就开始学习之路了 我们讲三个类型 string hashes list类型的使用 set 存储一个String
redis 127.0.0.1:6379> set news.blog.title  "kaka is back!" 
OK 
get 读取一个String
redis 127.0.0.1:6379> get news.blog.title 
"kaka is back!" 
decr 如果String存储的是数字的话,对其递减。如果递减的key不存在的话,将set一个key,并将其的值设为0。如果String存储的不是数字或所存的数字超出64bit,则报错
redis 127.0.0.1:6379> set num "10" 
OK 
redis 127.0.0.1:6379> decr num 
(integer) 9 
redis 127.0.0.1:6379> decr num1 (num1原本不存在,自动生成一个,并将其初始值设为0)
(integer) -1 
redis 127.0.0.1:6379> get num1 
"-1" 
redis 127.0.0.1:6379> set num2 "a" 
OK 
redis 127.0.0.1:6379> decr num2 
(error) ERR value is not an integer or out of range 
redis 127.0.0.1:6379> set num2 "234293482390480948029348230948" 
OK 
redis 127.0.0.1:6379> decr num2 
(error) ERR value is not an integer or out of range 
 incr  与decr相同,其为递增
redis 127.0.0.1:6379> incr num 
(integer) 10 
redis 127.0.0.1:6379> incr num3 (num3原本不存在,自动生成一个,并将其初始值设为0)
(integer) 1 
 mget  得到所有key的值
redis 127.0.0.1:6379> mget num num1 num2 num3 
1) "10" 
2) "-1" 
3) "234293482390480948029348230948" 
4) "1" 

 mset key value [key1 value1...]  设置多个键值对
redis 127.0.0.1:6379> mset data1 "hello" data2 "thanks" data3 "haha" 
OK 
redis 127.0.0.1:6379> mget data1 data2 data3 
1) "hello" 
2) "thanks" 
3) "haha"
Hash 相当于Map,可以存储键值对 HSET/HGET 存储/查询一个Hash,单属性
redis 127.0.0.1:6379> hset user.22213 name "xiaoruoen" 
(integer) 1 
redis 127.0.0.1:6379> hget user.22213 name 
"xiaoruoen" 
HMSET/HMGET 存储/查询一个Hash,多属性
redis 127.0.0.1:6379> hmset usr.135001 name "xiaoruoen" age 25 sex "male" 
OK 
redis 127.0.0.1:6379> hmget usr.135001 name age sex 
1) "xiaoruoen" 
2) "25" 
3) "male" 
HKEYS/HVALS 列出Hash里所有的key值/valuewfh
redis 127.0.0.1:6379> hkeys usr.135001 
1) "name" 
2) "age" 
3) "sex" 
redis 127.0.0.1:6379> hvals usr.135001 1) "xiaoruoen" 2) "25" 3) "male"
HLEN 得到Hash的长度
redis 127.0.0.1:6379> hlen usr.135001 
(integer) 3 
HSETNX 只有当hash里没有这个key是才会生成一个key/value。如果hash里面已经存在这个key值的话,则些操作将被忽略
redis 127.0.0.1:6379> hsetnx usr.556633 name "kaka" 
(integer) 1 
redis 127.0.0.1:6379> hsetnx usr.556633 name "kaxi" 
(integer) 0 
redis 127.0.0.1:6379> hget usr.556633 name 
"kaka" 
 HDEL 删除hash里面的key/value
redis 127.0.0.1:6379> hdel usr.135001 sex 
(integer) 1 
redis 127.0.0.1:6379> hkeys usr.135001 
1) "name" 
2) "age" 
List Redis list的实现为一个双向链表,即可以支持反向查找和遍历。 LPUSH/RPUSH 向List的头部或者尾部添加值。如果List不存在的话,则创建一个。
redis 127.0.0.1:6379> lpush usrlist "kaka" 
(integer) 1 
redis 127.0.0.1:6379> lpush usrlist "xiaoruoen" 
(integer) 2 
redis 127.0.0.1:6379> rpush usrlist "arivel" 
(integer) 3 
redis 127.0.0.1:6379> rpush usrlist "bear" 
LRANGE 返回列表 key 中指定区间内的元素,区间以偏移量 start 和 stop 指定。下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
redis 127.0.0.1:6379> lrange usrlist 0 3  列出从第一个到第4个无素,lrange只能正向排列
1) "xiaoruoen" 
2) "kaka" 
3) "arivel" 
4) "bear" 
今天就先说到这里吧,以后在给大家讲其他的,欢迎转载,转载请注明来自微度网络-网络技术中心http://yun.widuu.com

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部