zoukankan      html  css  js  c++  java
  • redis之安装与简单使用

    python操作redis:

        https://www.cnblogs.com/melonjiang/p/5342505.html

        https://www.jianshu.com/p/2639549bedc8

     redis命令:

        http://doc.redisfans.com/

    操作系统环境‘

       CentOS Linux release 7.2.1511 (Core)

    redis版本

      redis-3.2.9

    安装过程

      从官网https://redis.io/下载redis软件后放到linux服务器/app目录中,解压后查看README文档,了解安装步骤

    $ wget http://download.redis.io/releases/redis-3.2.9.tar.gz
    $ tar xzf redis-3.2.9.tar.gz
    $ cd redis-3.2.9
    $ make
    $ make test (比较重要)
    
    启动与验证
    $ ./src/redis-server &
    
    $ ./src/redis-cli 
    127.0.0.1:6379> set foo bar
    OK
    127.0.0.1:6379> get foo
    "bar"
    

      

    我们再做一些配置项

      1、密码登陆

      默认redis数据库登陆是无须密码的,为了安全起见,我们爬虫项目应该设置密码登陆验证。

      

    vi redis.conf
    注释requierpass
    requirepass redis
    

      

      2、允许远程访问redis数据库

      redis默认情况下,只监本机的端口,如果想其它机器也能访问些数据库的话,需要修改其监听ip

    注释此监听
    # bind 127.0.0.1
    

      

      3、重新启动redis服务

      

    $ redis-cli 
    127.0.0.1:6379> shutdown save
    
    $ ./src/redis-server redis.conf &
    

      

      4、远程访问

      此时远程访问数据需要在命令行后面加上密码验证

    $ redis-cli  -h 192.168.10.106  -a redis
    192.168.10.106:6379> keys *
    1) "myk"
    

      

    常用操作命令

     在官方文档https://redis.io/commands中有详细的redis命令可查找

      现仅列举几个示例:

      

    查看数据中现在所有的Key
    127.0.0.1:6379> keys *
    1) "myk"
    
    增加一个key值
    127.0.0.1:6379> set name liming
    OK
    
    获取一个key值
    127.0.0.1:6379> get name
    "liming"
    
    判断一个key值是否存在
    127.0.0.1:6379> exists name
    (integer) 1
    
    删除一个key值
    127.0.0.1:6379> del myk
    (integer) 1
    
    查看一个key值的类型
    127.0.0.1:6379> type name
    string
    
    随机返回一个key值
    127.0.0.1:6379> randomkey
    "name"
    
    给key重命名
    127.0.0.1:6379> rename name names
    OK
    
    返回数据库中key的数目
    127.0.0.1:6379> dbsize
    (integer) 3
    
    
    给一个key设置生存期
    127.0.0.1:6379> expire age 10
    (integer) 1
    
    删除当前数据库所有key
    127.0.0.1:6379[3]> flushdb
    OK
    
    删除所有数据库中所有Key
    127.0.0.1:6379[3]> flushall
    11507:M 06 Jun 11:46:08.952 * DB saved on disk
    OK
    
    一次获取多个key
    127.0.0.1:6379[3]> mget sex age names
    1) "mail"
    2) "16"
    3) "liming"
    
    当key不存在时设置其值
    127.0.0.1:6379[3]> setnx sex 16
    
    设置一个key的过期时间及值
    127.0.0.1:6379[3]> setex hei 10 158
    
    批量设置key值
    127.0.0.1:6379[3]> mset flower juhua water kquan
    OK
    
    使key值增1
    127.0.0.1:6379[3]> incr sex
    
    指定key的增加值
    127.0.0.1:6379[3]> incrby sex 2
    
    傅key值减1
    127.0.0.1:6379[3]> decr sex
    
    指定key的减少值
    127.0.0.1:6379[3]> decrby sex 3
    (integer) 16
    
    给指定key的值赋加新值,成为一个新的value
    127.0.0.1:6379[3]> append name zha
    
    返回指定key值的子串
    127.0.0.1:6379[3]> substr names 0 4
    "limin"
    
    列表操作
    在列表最后面新增一个value
    127.0.0.1:6379[3]> rpush zhiwu flower
    
    在列表最前面新增一个value
    127.0.0.1:6379[3]> lpush zhiwu shui
    
    返回列表的长度
    127.0.0.1:6379[3]> llen zhiwu
    
    获取列表的范围元素
    127.0.0.1:6379[3]> lrange zhiwu 0 2
    
    截取列表的指定范围
    127.0.0.1:6379[3]> ltrim zhiwu 0 1
    
    通过索引获取一个列表中的值
    127.0.0.1:6379[3]> lindex zhiwu 1
    
    通过索引设置列表中元素的值
    127.0.0.1:6379[3]> lset zhiwu 1 nia
    
    从列表中删除指定个数的值
    127.0.0.1:6379[3]> lrem mylist 2 hello
    
    删除并获取列表最后一个key值
    127.0.0.1:6379[3]> rpop mylist
    
    删除并获取列表第一个key值
    127.0.0.1:6379[3]> lrange mylist 0 -1
    
    删除源列表最后一个key值,同时添加到目标列表的第一个位置
    127.0.0.1:6379[3]> rpoplpush mylist namelist
    
    
    集合操作
    向集合中添加一个元素
    127.0.0.1:6379[3]> sadd mykey kong
    
    查看集合中所有元素
    127.0.0.1:6379[3]> smembers mykey
    
    随机查看集合中的一个元素
    127.0.0.1:6379[3]> srandmember mykey
    
    移除指定集合中指定的一个或多个元素
    127.0.0.1:6379[3]> srem mykey kong
    
    移除指定集合中最后一个元素
    127.0.0.1:6379[3]> spop myeky
    
    从源集合中移除一个值到目标集合中
    127.0.0.1:6379[3]> smove mykey1 myeky kong
    
    检测一个给定的值是否为指定集合的成员
    127.0.0.1:6379[3]> sismember mykey gen
    
    求两集合的交集
    127.0.0.1:6379[3]> sinter mykey mykey1
    
    求两集合的交集结果存入在新的集合中
    127.0.0.1:6379[3]> sinterstore interkey mykey mykey1
    
    求两集合的并集
    127.0.0.1:6379[3]> sunion mykey mykey1
    
    求两集合的并集结果存储到新的集合中
    127.0.0.1:6379[3]> sunionstore unionkey mykey mykey
    
    求两集合的差集
    127.0.0.1:6379[3]> sdiff mykey mykey1
    
    求两集合的差集并存储在新的集合中
    127.0.0.1:6379[3]> sdiffstore diffkey mykey mykey1
    

      

      

  • 相关阅读:
    监控注册表和文件夹改动
    Windows中根据GetLastError的错误代码,取得文字描述
    VBA 读取文件/写入文件
    (转)ansi,gb2312,gbk,gb18030,unicode,utf8,unicode big endian编码的区别及什么是BOM
    VBA 打开文件对话框
    修改GitHub记录中的invalidemailaddress
    使用DWM实现Aero Glass效果
    RAII(C++必知必会 条款40)
    C函数包装ASM代码时,指针无法传值的问题
    msysgit color.ui auto is invalid msysgit无法开启彩色显示
  • 原文地址:https://www.cnblogs.com/kongzhagen/p/6950668.html
Copyright © 2011-2022 走看看