欢迎投稿

今日深度:

Redis--常用命令,

Redis--常用命令,


-- redis


-- 服务端


开启
sudo service redis start


重启
sudo service redis restart


停止
sudo service redis stop


查看服务
ps ajx | grep redis


-- 客户端


redis-cli --raw 解决中文乱码


登录 redis-cli


ping 判断服务端是否活着


选择数据库
select 0


-- string


-- 增加、修改


如果设置的键不存在则为添加,如果设置的键已经存在则修改
设置键值
set key value
例1:设置键为'py1'值为'gj'的数据


set 'py1' 'gj'


-- 获取


获取:根据键获取值,如果不存在此键则返回nil
get key
例5:获取键'py1'的值


get py1


-- 设置键值及过期时间,以秒为单位
setex key seconds value
例2:设置键为'py2'值为'hr'过期时间为3秒的数据


setex py2 10 hr


-- 设置多个键值
mset key1 value1 key2 value2 ...
例3:设置键为'py3'值为'dx'、键为'py4'值为'xd'、键为'py5'值为'nd'、键为'py6'值为'bg'的数据


mset py3 dx py4 xd py5 nd


-- 根据多个键获取多个值
mget key1 key2 ...
例6:获取键'py3'、'py4'、'py5'、'py6'的值

mget py3 py4 py5 

-- 追加值
append key value
例4:向键为py1中追加值' haha'


append py1 hr

help get 查看某个命令使用方法


help @string 查看某个列席使用方法


-- 删除


del key


del py1


-- 键命令


-- 查找键,参数支持正则表达式
keys pattern
例1:查看所有键
keys *

keys p*


-- 判断键是否存在,如果存在返回1,不存在返回0
exists key1
例3:判断键'py1'、'py2'是否存在

exists py3

-- 查看键对应的value的类型
type key
例4:查看键'py1'的值类型,为redis支持的五种类型中的一种

type name

-- 设置过期时间,以秒为单位
如果没有指定过期时间则一直存在,直到使用DEL移除
expire key seconds
例6:设置键'py1'的过期时间为10秒

expire name 10

-- 查看有效时间,以秒为单位
-2 代表过期或者key不存在,-1 代表key永久

ttl key
例7:查看键'py2'的有效时间
ttl name

-- hash

-- 增加、修改

设置单个属性
hset key field value
例1:设置键'py2'的属性'name'为'hr'

hset py2 name hr

-- 获取一个属性的值
hget key field
例4:获取键'py2'属性'name'的值

hget py2 name

-- 获取指定键所有的属性
hkeys key
例3:获取键'py3'的所有属性

hkeys py2

-- 设置多个属性
hmset key field1 value1 field2 value2 ...
例2:设置键'py3'的属性'name'为'dx'、属性'gender'为'1'、属性'birthday'为'2017-1-1'

hmset py6 name dx gender 1 birthday 2010-1-1

-- 获取多个属性的值
hmget key field1 field2 ...
例5:获取键'py3'属性'name'、'gender'、'birthday'的值

hmget py6 name gender


-- 获取所有属性的值
hvals key
例6:获取键'py3'所有属性的值

hvals py6

-- 删除

把hash所有的属性删除,此key也自动被删除
删除整个hash键及值,使用del命令
删除属性,属性对应的值会被一起删除
hdel key field1 field2 ...
例7:获取键'py3'的属性'gender'、'birthday'

hdel py6 gender name

-- 增加

在左侧插入数据 相当于python中的list的insert(0)
lpush key value1 value2 ...
例1:从键为'py11'的列表左侧加入数据'dx'、'xd'

lpush py11 dx xd 

-- 返回列表里指定范围内的元素
start、stop为元素的下标索引
索引从左侧开始,第一个元素为0
索引可以是负数,表示从尾部开始计数,如-1表示最后一个元素
lrange key start stop
例4:获取键为'py11'的列表所有元素

lrange py11 0 -1

-- 在右侧插入数据
相当于python中的list的append
rpush key value1 value2 ...
例2:从键为'py11'的列表右侧加入数据'nd'、'bg'
xd dx nd bg

rpush py11 nd bg


-- 在指定元素的前或后插入新元素
linsert key before或after 现有元素 新元素
例3:在键为'py11'的列表中元素'nd'前加入'zbt'

linsert py11 before dx zb

-- 修改

设置指定索引位置的元素值
索引从左侧开始,第一个元素为0
索引可以是负数,表示尾部开始计数,如-1表示最后一个元素
lset key index value
例5:修改键为'py11'的列表中下标为1的元素值为'xidu'

lset py11 2 xidu

-- 删除

删除指定元素
将列表中前count次出现的值为value的元素移除
count > 0: 从头往尾移除
count < 0: 从尾往头移除
count = 0: 移除所有
lrem key count value
例6.1:向列表'py12'中加入元素'h0'、'h1'、'h2'、'h0'、'h1'、'h3'、'h0'、'h1'

rpush py12 h0 h1 h2 h0 h1 h3 h0 h1

lrem py12 2 h0

-- set

-- 增加

添加元素
sadd key member1 member2 ...
例1:向键'py21'的集合中添加元素'yg'、'xln'、'yzp'
sadd 'py21' 'yg' 'xln' 'yzp'

sadd py21 yg xln yzp

-- 获取

返回所有的元素
smembers key
例2:获取键'py21'的集合中所有元素

smembers py21

-- 删除

删除指定元素
srem key member
例3:删除键'py21'的集合中元素'yzp'

srem py21 yzp

-- sorted_set

-- 增加

添加
zadd key score1 member1 score2 member2 ...
例1:向键'py31'的集合中添加元素'gj'、'hr'、'yg'、'xln',权重分别为1、5、8、3

zadd py31 1 gj 5 hr 8 yg 3 xln

-- 获取

返回指定范围内的元素
start、stop为元素的下标索引
索引从左侧开始,第一个元素为0
索引可以是负数,表示从尾部开始计数,如-1表示最后一个元素
zrange key start stop
例2:获取键'py31'的集合中所有元素

zrange py31 0 -1

-- 返回score值在min和max之间的成员
zrangebyscore key min max
例3:获取键'py31'的集合中权限值在4和9之间的成员
zrangebyscore py31 4 9

-- 返回成员member的score值
zscore key member
例4:获取键'py31'的集合中元素'yg'的权重

zscore py31 yg

-- 删除

删除指定元素
zrem key member1 member2 ...
例5:删除集合'py31'中元素'yg'

zrem py31 yg xln

-- 删除权重在指定范围的元素
zremrangebyscore key min max
例6:删除集合'py31'中权限在4、9之间的元素

zremrangebyscore py31 4 9

Redis集群配置

 -- 需要两台机器

  主服务器 192.168.133.133
  修改/etc/redis/redis.conf
  bind 192.168.133.133
重启redis

  从服务器 192.168.133.132

修改/etc/redis/redis.conf
bind 192.168.133.132
slaveof 192.168.133.133 6379
重启redis

-- 集群

服务器 192.168.133.133
3个redis服务
redis-server 7000.conf 
  redis-server 7001.conf 
  redis-server 7002.conf 


服务器 192.168.133.132
3个redis服务

      redis-server 7003.conf 
redis-server 7004.conf 
redis-server 7005.conf

redis-trib.rb create --replicas 1 192.168.133.133:7000 192.168.133.133:7001  192.168.133.133:7002 192.168.133.132:7003  192.168.133.132:7004  192.168.133.132:7005



Using 3 masters:
192.168.133.133:7000
192.168.133.132:7003
192.168.133.133:7001
Adding replica 192.168.133.132:7004 to 192.168.133.133:7000
Adding replica 192.168.133.133:7002 to 192.168.133.132:7003
Adding replica 192.168.133.132:7005 to 192.168.133.133:7001
M: 53c2529efca2776dddbec3d2429fd80d02e93880 192.168.133.133:7000
   slots:0-5460 (5461 slots) master
M: 3aab869c83e1c8751d482e7ec970a935c3b9bca5 192.168.133.133:7001
   slots:10923-16383 (5461 slots) master
S: 803253c6455fb7b7190ee90cac13819062d449e6 192.168.133.133:7002
   replicates 96d7c861d7eed880999ae08fa1d74c56f7c0fe2f
M: 96d7c861d7eed880999ae08fa1d74c56f7c0fe2f 192.168.133.132:7003
   slots:5461-10922 (5462 slots) master
S: 4476a061ff2990399e77a7b39dad2f1ad1dcf55b 192.168.133.132:7004
   replicates 53c2529efca2776dddbec3d2429fd80d02e93880
S: 3b2a24132cdfd2a091a42e08461888589ffe05f6 192.168.133.132:7005
   replicates 3aab869c83e1c8751d482e7ec970a935c3b9bca5




www.htsjk.Com true http://www.htsjk.com/redis/29323.html NewsArticle Redis--常用命令, -- redis -- 服务端 开启 sudo service redis start 重启 sudo service redis restart 停止 sudo service redis stop 查看服务 ps ajx | grep redis -- 客户端 redis-cli --raw 解决中文乱码 登录 redis-cli...
相关文章
    暂无相关文章
评论暂时关闭