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

  

  

 

posted on 2017-06-06 11:31  孔扎根  阅读(367)  评论(0编辑  收藏  举报

导航