跳到主要内容

Redis

配置

服务端

服务端
Redis
启动
redis-server
redis-server --help
重启
service redis stop
redis-server redis.conf
杀死进程
sudo kill -9 pid
指定加载的配置文件
sudo redis-server /etc/redis/redis.conf

客户端

客户端redis-cli
连接
redis-cli
远程
redis-cli -h ip -p port
运行测试命令
ping
切换数据库
select 10

类型

String类型

String类型
保存
设置键值
set key value
设置键值及过期时间,以秒为单位
setex key 秒数 value
设置多个键值
mset key1 value1 key2 value2
追加(如果没有,相当于创建)
appends key value
向a1中追加值
append a1 hahah

查看所有的key
keys *
查看类型
type key
查看有效期
ttl key
-1:长期存储
-2:过期,不存在

获取
get key
获取多个
mget k1 k2 k3

删除
del k1 k2
把当前数据库全部清空
flushdb
把所有0-15号库全部清空
flushall

查找键
(模式,或者正则)
keys pattern
keys a*(查询a开头)
判断键是否存在,存在返回1,不存在返回0
exists key
指定有效期
expire key 秒数

hash类型

hash类型
增加修改
hset key field value
(hset user name xxx)
设置多个属性
hmset key f1 v1 f2 v2

获取
所有属性
hkeys key
一个属性的值
hget key f1
多个属性的值
hmget key f1 f2 f3
获取所有value值
hvals key

删除
hdel key f1 f2

list类型(按插入顺序进行排序)

增加:
在左侧插入数据
lpushi key v1 v2
在右侧插入数据
rpushi key v1 v2

取值
lrange key 开始索引 结束索引(-1表示最后一个元素)

插入
insert key before/after 现有元素 新元素

设置指定索引位置的元素值(索引从0开始)
lset key index value

删除
将列表中前count次出现的值为value的元素移除
count > 0 :从头往尾移除
count < 0 :从尾往头移除
count = 0 :移除所有
lrem key count value

set类型(用于去重)

添加元素
sadd key m1 m2
获取
smembers key
删除
srem key

zset(有序集合)

score:权重,从小到大排序
添加
zadd key score1 member1 score2 member2
获取
zrange key start stop
获取指定权重之间的值
zrangebyscore key min max
返回成员member的socre值
zscore key member
删除
zrem key m1 m2
删除权重范围内的
zremrangebyscore key min max

master-slave(主从/集群)

cp redis.config slave.conf
修改端口号
slaveof 主ip:端口

查看主持关系
redis-cli -h 172.16.155.129 info Replication

集群(多主多从)
port 7000
bind 172.16.179.130
daemonize yes
pidfile 7000.pid
cluster-enabled yes
cluster-config-file 7000_node.conf
cluster-node-timeout 15000
appendonly yes

创建集群
https://gems.ruby-china.com
连接集群
在172.16.179.131机器上连接7002,加参数-c表示连接到集群
redis-cli -h 172.16.179.131 -c -p 7002

其他

uuid 32
name
age
性别 tinyint
简介200
用户类型
1游客2vip tinyint
状态tinyint
1非正常 0正常
is_delete bit
备注

物体
id
唯一标识
物品名字
类型
上架状态
录入人员
录入时间

活动
创建时间 年月日时分秒
行为
活动类型
备注
活动的值