您的位置:首页 > 其它

reids 安装配置 基本操作

2013-06-25 11:17 549 查看
1 先下载redis

命令 wget http://redis.googlecode.com/files/redis-2.0.0-rc4.tar.gz
然后解压

tar zxvf redis-2.0.0-rc4.tar.gz

进入解压后的目录 cd redis-2.0.0-rc4

开始安装 make 如果make不行的话 出现"Makefile", line 8: Missing dependency
operator 错误的话 改用 gmake

创建一个存放reids的目录

mkdir ~/redis-2.0.0

把几个重要文件放进去

cp redis-sever redis-benchmark redis-cli redis.conf
~/redis-2.0.0

cd ~/redis-2.0.0

修改配置文件 该为自己想要的

是否作为守护进程

deamonlize yes

配置pid的存放路径及文件名。默认为当前路径下面

pidfile redis.pid

reidis默认监听端口

port 6397

客户端闲置多少秒之后断开

timeout 300

日志显示级别

log|evel|verbose

指定日志输出的文件名 也可指定到标准输出端口

logfile stdout

设置数据库的数量 默认连接的数据库是 0 可以通过select N 来连接不同的数据库

databases 16

保存数据到disk的策略

。。。。。。

启动redis 在~/redis-2.0.0 目录下

./reids-server redis.conf

检测是否启动

netstat -an -t (?? 貌似不太有用)

ps aux | grep "redis-server"

set 操作

redis-cli -n 0 set uid_001 makang //
像数据库0中插入字符串key为uid_001 value 为makang的字符串

get 操作

redis-cli -n 0 get uid_001 | redis-cli get uid_001
//表示获取数据库为0,key为uid_001的字符串 不写-N 0 表示在默认数据库 0
中取

mget

redis-cli mget uid_001 uid_002 //表示获取多个key的值

setnx

redis-cli setnx uid_001 "value" //表示当一个指定的key不存在时。设置这个key指定的value
如果存在 设置不成功 返回 int(0)

setex

redis-cli setex 5 uid_001 "value"
//表示设置一个key指定value保存5秒后失效 。设置key/value的有效期

mset

redis-cli mset a 'aa' b 'bb' c 'cc' //表示多键值对的数据保存 在保证原子操作的情况下

msetnx

redis-cli msetnx u 'uuu' m 'mm' //表示在单元子操作的情况下
keys不存在的前提下插入多个values值 如果存在其中一个keys 插入失败

incr

redis-cli incr u //表示对给定的key的value进行递增的操作 u 必须为整数
也可对一个不存在变量递增

incrby

redis-cli incrby u 6 //表示对给定的key的value进行指定步长的递增操作

decr

redis-cli decr u //表示对给定的key的value进行递减的操作 u 必须为整数
也可对一个不存在变量递减

decrby

redis-cli decrby u 4 //表示对给定的key的value进行指定步长的递减操作

append

redis-cli append content '01234'

redis-cli append content '56789'

redis-cli get content //'0123456789'
//表示追加一个value到指定的key中 如果key不存在 新建一个key

substr

redis-cli substr content 0 4 //表示返回指定key的value的部分字符串

del

redis-cli del name //删除指定的key

keys pattern

redis-cli keys * //查找符合给定模式的key

ttl

redis-cli ttl name //返回给定key的剩余生存时间,当key不存在或者过期时 返回-1

rename

redis-cli rename key newkey //将key改名为newkey
当key和newkey相同或者key不存在时,返回一个错误。当newkey存在。rename将其覆盖

type

redis-cli type key //返回key中存储的value的值的类型

expire

redis-cli expire key 10 //为给定的key设置过期时间。

persist

redis-cli persist key //移除给定key的过期时间

sort

redis-cli lpush list001 30

redis-cli lpush list001 20

redis-cli lpush list001 25

redis-cli sort list001
[desc,asc]//返回或保存给定列表、集合、有序集合key中的(经过排序的)元素。排序默认以数字作为对象,值被解释为双精度浮点数,然后进行比较

redis-cli sort liststr alpha //
当数据集中保存的是字符串值时,你可以用alpha修饰符(modifier)进行排序。

redis-cli sort list001 limit 0 5 desc //
修饰符可以组合使用。返回降序(从大到小)的前5个对象

redis-cli sort list001 limit 0 5 store key //保存排序结果

list 类型

rpush

redis-cli rpush list001 '001'

reids-cli rpush list001 '002'

redis-cli rpush list001 '003'

redis-cli lrange list001 0 3 //
表示向指定key的list后面追加指定的value 另
输出list 用lrange 并且要加上开始结束位置 输出全部的 0 -1

lpush

redis-cli lpush list001 'zhuijia'
//表示向指定的key的list左边追加指定的value

llen

redis-cli llen list001 //返回指定的key list的长度

lrange

redis-cli lrange list001 0 4 //表示返回指定key list 里面的位置范围 value

ltrim

redis-cli ltrim list001 0 2 //删除指定key的值范围以外的数据

lindex

redis-cli lindex list001 2 //表示返回指定key list 里面索引的值

lset

redis-cli lset list001 1 'newvalue'
表示给指定的key的list里面指定索引的值修改为一个新值

lrem

redis-cli lrem list001 1 'value' //
表示删除指定key的list里面值为value的指定个数

lpop

redis-cli lpop list001 //表示删除指定key的list的最前面 左边的值 并返回该值

rpop

redis-cli rpop list001 //表示删除指定key的list的最后面 右边的值 并返回该值

rpoplpush

redis-cli rpoplpush list001 list002 'list001.value'
//表示将原来key的list后面的值删掉 病保存在指定的木的的key中 并返回该值

集合

sadd

redis-cli sadd s001 '001' //表示向指定的key的集合中添加成员
不能有重复的值 而list可以有重复的值

redis-cli smembers s001 //输出这个集合里面的值

srem

redis-cli srem s001 'value' 删除指定key的指定value的值

spop

redis-cli spop s001 //表示从指定key的set集中随即删除一个成员value 并返回

smove

redis-cli smove s001 s002 'value'
//表示从一个指定的key中移动一个指定的value成员到另一个指定的key中

scard

redis-cli scard s001 返回指定key的set集合value的成员个数

sismember

redis-cli sismember s001 'value' //表示判断指定的key的成员是否存在于sets集合中

sinter

redis-cli sinter s001 s002
//表示对指定的key的sets集执行交集操作,返回指定sets集合中相同的value成员

sinterstore

redis-cli sinterstore s003 s001 s002
//表示将指定的key的sets集做交集。并将结果保存到指定的key中 保存到s003中

sunion

redis-cli sunion s001 s002 //表示对指定的key的sets集合做并集

sunionstore

redis-cli sunionstore s003 s002 s001
//表示对指定的key的sets集合做并集,并将结果保存到指定的key中

sdiff

redis-cli sdiff s001 s002 s003
//表示对给定的第一个key的sets集合与其他的key的sets集合的value进行对比,并返回不同的value的成员

sdiffstroe

redis-cli sdiffstore s004 s001 s002 s003
//表示对给定的第一个key的sets集合与其他的key的sets集合的value进行对比,并返回不同的value的成员
保存到一个指定的key

smembers

redis-cli smembers s001 //表示返回指定key的所有的sets集合的成员

srandmember

redis-cli srandmember s001 //表示返回一个给定key的sets集合中随即的一个成员

zsets 排序后的sets集合

zadd

redis-cli zadd z001 1 'value'
//表示通过给定的积分顺序插入成员值到指定的key顺序sets集合中。如果成员存在则插入失败

zrem

redis-cli zrem z001 'value' //表示从给定的key的顺序sets集合中删除指定的成员

zincrby

redis-cli zincrby z001 2 'value'
//表示给指定的key的成员的排序积分进行给定的递增值递增,如果积分为零,则将递增值作为积分排序

zrank

redis-cli zrank z001 'value' //
表示获取当前指定key的成员在排序sets集合中的排名。从0开始计数。

zrange

redis-cli zrange z001 0 8
//表示通过开始值,和结束值来获取指定key的排序sets集合中的成员范围。

zrevrange

redis-cli zrevrange z001 0 1
//表示通过对指定的key的排序sets集合倒序后在获取指定范围的成员集

zcard

redis-cli zcard z001 //表示获取指定key的排序sets集合的成员的基数

zscroe

redis-cli zscroe z001 //表示获取指定key排序sets集合中成员的积分 也就是相当于数据的键

zremrangebyrank

redis-cli zremrangebyrank z001 4 5 //表示删除指定key的排序的sets集合中成员的排名范围的成员
(通过排名范围删除成员)

hash

hset

redis-cli hset huid uid001 'value'

redis-cli hset huid uid002 'value'

redis-cli hset huid uid003 'value'
//表示给指定的hash字段设置值 ,如果不存在则创建

hget

redis-cli hget huid uid001 //表示获取指定hash字段的值

hmget

redis-cli hmget huid uid001 uid002 uid003 //表示批量获取指定hash字段的值

hmset

redis-cli hmset huid uid004 'value' uid005 'value'
//表示批量设置hash字段的值

hincrby

redis-cli hincrby huid uid001 1 // 表示对指定的hash字段的值进行递增操作
最有一个参数为递增的数量

hexists

redis-cli hexists huid uid001 //表示判断指定的hash字段知否存在

hdel

redis-cli hdel huid uid001 //表示通过指定的hash字段删除hash值

hlen

redis-cli huid //表示返回hash长度

hkeys

redis-cli hkeys huid //表示返回指定hash的所有key

hvals

redis-cli hvals huid 表示返回指定hash的所有value

hgetall

redis-cli hgetall huid //表示返回指定hash的所有字段及关联的值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: