redis 基础

Posted myxxjie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis 基础相关的知识,希望对你有一定的参考价值。

redis

    1、redis是一种nosql数据库,他的数据是保存在内存中,同时redis可以定时把内存数据同步到磁盘,即可以将数据持久化,并且他比memcached支持更多的数据结构、

    2 、redis  属于 非关系型数据库  

redis和memcached的比较

 

memcached

redis

类型

纯内存数据库

内存磁盘同步数据库

数据类型

在定义value时就要固定数据类型

不需要

虚拟内存

不支持

支持

过期策略

支持

支持

存储数据安全

不支持

可以将数据同步到dump.db中

灾难恢复

不支持

可以将磁盘中的数据恢复到内存中

分布式

支持

主从同步

订阅与发布

不支持

支持

 

 

持久化

         redis提供了两种数据备份方式,一种是RDB,另外一种是AOF。

   RDB:RDB持久化是指在指定的时间间隔内将内存中的数据集快照写入磁盘。 也是默认的持久化方式,这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb。可以通过配置设置自动做快照持久化的方式。

   AOF:AOF持久化策略是将发送到Redis服务端的每一条命令都记录下来,并且保存到硬盘中的AOF文件中,类似打日志文件,来一条命令就记录一条。

操作系统:CentOS7.5

redis 版本:redis-5.0

1>下载

wget http://download.redis.io/releases/redis-5.0.0.tar.gz

 技术图片

2>解压到指定目录

 技术图片

3>进入到解压后的目录进行编译   ( 需要用到 gcc  gcc-++  yum 可以安装) 

 技术图片

4>安装

技术图片

5>进入安装好的redis目录

 技术图片

6>添加到环境变量

 技术图片

这我已经添加一次了

6>启动

技术图片

注:一定要加& 让它在后端运行,不然会在前端一直hang住

#查看端口

redis 的端口为  6379

 技术图片

#补充 关闭redis

 技术图片

7>连接上 redis-server

redis-cli -p 6379   -h127.0.0.1

 技术图片

#

 技术图片

8>添加 set key  value    (字符串)

将value 值 关联到 key  ( 如果 value 已存在,将覆盖旧值,默认过期时间为永久)

 技术图片

9>取 key 下的 value    (  get  key)

 技术图片

10>删除   key( del key)

 技术图片

11>设置过期时间

 技术图片

12>查看过期时间

 技术图片

13>查看所有的key

 技术图片

14>切换数据库

redis 默认有16 个数据库。

 select  index      ( 0 -- 15)

技术图片

15>列表

&1在列表左边添加值   (会显示上面)

lpush  key  value    因为是列表, value 可以是多个,

 技术图片

#rpush key value

在列表右边添加值 (会显示在下面)

 技术图片

&2查看

lrange  key  start stop 

lrange   students   0  -1    (  -1  最后 )  ( 0 开始)       查看所有 

 技术图片

&3>查看列表中有几个元素 (key中)

llen  key

llen  students

 技术图片

&4>取列表中的值

lindex key  index

lindex  students  2

 技术图片

&5>删除列表中的值

lrem   key  count  value

lrem   students  2  lijie

技术图片 

列表只有一个lijie ,所以只删掉了一个

16>集合

&1>添加元素

sadd   key  member     (自动去重)

sadd    name  lijie lige lijie  

技术图片 

&2> 查看元素

smembers  key

smembers  name

 技术图片

&3>删除元素

srem  key  member

serm  name  lijie

 技术图片

&4>查看集合中多少元素

scard  key

 技术图片

&5>查看两个集合的交集

sinter  key1  key2

sinter  name2 name3  

 技术图片

&6> 查看两个集合并集

sunion  key1 key2

sunion  name2 name3

 技术图片

&7>查看两个集合的差集

sdiff  key1 key2

sdiff  name2 name3

 技术图片

17>哈希操作 (字典套字典)

&1>添加一个新值

hest  key field value   ( field  相当于 key 里面的key)

hest  lijie   age  23

hest   lijie   high  170

hest  lijie mariadb - 索引.note   gender  man

 技术图片

&2>获取哈希中 filed 中的值

hget  lijie age

hget lijie  high

 技术图片

 lijie&3>删除  哈希中 key 里的 field

 hdel   age

技术图片

注:可以删除多个  filed

&4>获取某个哈希中所有 fleld 和 value

hgetall   key

 技术图片

&5>获得某个哈希中的所有field

hkeys   key

 技术图片\\

&6>判断哈希中是否存在某个field

hexists  key   field

hexists  lijie  age

技术图片 

&7>获取哈希中总共的键值对

hlen  key

hlen  lijie

技术图片

 

以上是关于redis 基础的主要内容,如果未能解决你的问题,请参考以下文章

Redis实战-Redis基础篇(上)

01. Redis 基础

01. Redis 基础

Redis与Celery基础

2.Redis系列Redis基础数据结构

redis使用基础 ——Redis管理