REDIS 用法详解

Redis 用法详解

1. 常规命令

  • 系统配置

    系统配置文件:redis.windows.conf/redis.conf(linux系统)
        bind 127.0.0.1
        port 6379
        daemonize yes # linux 中设置为守护进程,在后台运行不会,不会阻塞CMD命令行
        dbfilename dump.rdb # 数据文件
        dir/var/lib/redis # 数据文件存储路径
        logfile"/var/log/redis/redis-server.log" # 日志文件
        database 16 # 默认有16个数据库
        slaveof # 主从配置
    
  • 系统命令

    redis-server  # 启动服务器
    redis-server redis.windows.conf # windows中以该配置文件启动
    redis-server redis.conf # LINUX	中以该配置文件启动
    redis-cli # 启动客户端
    
  • 键的操作命令(适用于任何数据类型)

    flushall  # 清除当前数据库中所有内容
    keys * # 查看所有数据的键
    keys a* # 查看以a开头的数据库中的键
    keys a[1-6] # 以正则匹配键来查询
    EXISTS a6 # 查看a6是否存在,存在返回1,不存在返回0
    type a6 # 查看a6的值的数据类型
    del a1 a2 #删除键为a1和a2的数据
    expire a3 10 # 设置a3的过期时间为5秒,5秒后删除
    ttl a4 # 查看过期时间,-1 为永久
    
  • 字符串的操作命令

    set a1 234 # 添加键为a1值为234的数据
    set a1 234 EX 5 # 添加的数据过期时间为5秒
    setex a1 5 234 # 效果与上面相同
    mset a1 234 a2 333 a3 haha # mset 一次插入多条数据
    get a1  # 查询键为a1的值
    mget a1 a2 a3 # 一次查询多条数据的值
    append a1 haha # 给a1的值后边追加haha ===> 234haha
    
  • 哈希值(hash)的操作命令(类似于字典,键为字典的名称)

    hset xiaoming height 180
    hset xiaoming weight 70kg
    hset xiaoming age 30   # 分别插入键为小明的身高,体重,年龄三个属性及值
    hmset xiaoming score 90 tel 1380000000 # 一次插入小明的多个属性及值
    hget xiaoming height # 获取小明的身高属性值
    hmget xiaoming height score # 一次获得小明的两个属性值
    hkeys xiaoming # 查看小明的各个属性
    hvals xiaoming # 查看小明的各个属性的值
    hdel xiaoming score # 删除小明的分数的属性值
    
  • 列表(LIST)的操作命令

    lpush l1 a b c aa xf # 从左侧添加,结果相当于:li = [xf,aa,c,b,a]
    rpush l2 aa bb xx dd # 从右边添加,相当于append
    lrange l1 0 3 # 查询l1中索引从0到3的4个值
    lrange l1 0 -1 # 查询l1中所有的值
    linsert l1 after b ok # 在l1中的b后边插入OK
    lset l1 2 nuuu # 将l1 中索引为2的值修改为nuuu
    lrem l1 2 aa # 删除l1中前两个值为aa的数据
    lrem l1 -2 aa # 删除l1中后两个值为aa的数据
    lrem l1 0 aa # 删除l1中所有的值为aa的数据
    
  • 无序集合(set),集合的数据不能修改

    sadd s1 python java php c++ # 增加记录
    smembers s1 # 查看s1的数据
    srem s1 java # 删除s1中的java
    
  • 有序集合(zset) , 每个元素有关联的score作为权重

    zadd z1 3 lisi 5 wangwu 7 zhaoliu 4 wangmazi 6 lujie # 增加记录,元素前边的数字为对应的score
    zrange z1 0 -1 # 获取z1的所有值
    zrangebyscore z1 3 6  # 查询z1 中score在3-6之间的值
    zrem z1 zhaoliu # 删除z1中值为zhaoliu的数据
    

2. python中redis的使用

from redis import StrictRedis           # 1.导入
def demo():
    sr = StrictRedis(host='127.0.0.1')  # 2.实例化
    try:
        result = sr.set('lisi','19')    # 3.通过实例调用redis命令
    except Exception as e:
        return 'error'
if __name__=='__main__':
    demo()
# sr.mset({'a':'13','b':'22'})  mset的参数为字典

3. 主从配置

  1. 主服务器配置文件修改(redis.windows.conf/redis.conf)
    • bind 192.168.28.44 # 修改本地IP
    • port 6379 # 本地端口,默认6379
  2. 从服务器配置文件修改(redis.windows.conf/redis.conf)
    • bind 192.168.28.33 # 修改为本地IP
    • port 6379 # 本地端口,如果在一台电脑上配置主从,因为IP一样,应该调整端口不一样
    • slaveof 192.168.28.44 6379 # 修改为主服务器的IP和端口
  3. 分别启动主从服务器,用携带配置文件的命令
    • redis-server redis.windows.conf
  4. 启动客户端
    • redis-cli -h 192.168.28.44 -p 6379

通常主写,从读,从服务器默认不可写入

4. 集群创建

  1. 在各自的服务器创建配置文件,修改7000为对应端口号,绑定各自IP
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
  1. 通过配置文件启动各服务器的REDIS服务
redis-server 7001.conf
  1. LINUX中将集群服务的模块拷贝到 usr/local/bin/ 目录下方便启动
sudo cp /usr/share/doc/redis-tools/examples/redis-trib.rb /usr/local/bin/
  1. 安装ruby环境

sudo apt-get install ruby

  1. 创建集群
redis-trib.rb create --replicas 1 172.16.179.130:7000 172.16.179.130:7001 172.16.179.130:7002 172.16.179.131:7003 172.16.179.131:7004 172.16.179.131:7005
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值