Redis

首先我们先了解nosql是什么

nosql[not only sql]不仅仅是sql。所有非关系型数据库的统称。除去关系型数据库之外的都是非关系数据库。(之前我们所了解的MySql  ”RDBMS“  是关系型数据库   )

然后我们再区分一下NOSQL和RDBMS的区别

RDBMS--关系型数据库得到通称
- 高度组织化结构化数据。 
- 结构化查询语言(SQL) sql语句 
- 数据和关系都存储在单独的表中。
- 数据操纵语言DML,数据定义语言DDL  
- 严格的一致性. 事务
- 基于事务

NoSQL--非关系型数据库的统称
- 代表着不仅仅是SQL
- 没有声明性查询语言。 sql语句
- 键 - 值对存储。
- 非结构化和不可预知的数据  value: 字符串  对象  集合  无需集合
- 高性能,高可用性和可伸缩性。 适合搭建集群。 ---基于内存计算的

然后Redis就是NOSQL常用的产品

redis [企业使用频率很高]
2. mongodb [抽空看看]
3. hbase [适合大数据]

什么是Redis

官网:Redis - The Real-time Data Platform/

Redis是一种开放源代码(BSD许可)的内存中数据结构存储,用作数据库,缓存和消息代理。Redis提供数据结构,例如字符串,哈希,列表,集合,带范围查询的排序集合,位图,超日志,地理空间索引和流。Redis具有内置的复制[集群],Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性[磁盘],并通过Redis Sentinel和Redis Cluster自动分区提供了高可用性【集群】。

简单来说:redis他是免费的软件,它可以用作数据库,缓存,消息代理。而且里面可以存储多种数据类型,并且提高了高可用机制。

redis的特点

1.Redis读取的速度是110000次/s,写的速度是81000次/s
2.原子 。Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。线程安全
3.支持多种数据结构:string(字符串);list(列表);hash(哈希),set(集合);zset(有序集合)
4.持久化--磁盘,主从复制(集群)
5.官方不支持window系统,但是又第三方版本。 linux系统。

然后就是安装redis

首先它是个c语言,--也就是我们需要安装c的环境

yum  install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel

然后需要在官网下载redis源码安装包     ----redis-7.2.3.tar.gz

安装:

1、放到你在安装的位置进行解压

tar -zxvf redis-7.2.3.tar.gz

2、进入解压后的目录

cd redis-7.2.3

3、编译安装:

make install

3、然后我们需要启动服务器

redis-server redis.conf


redis-server: redis启动的脚本命令
redis.conf: redis配置文件的名

安装redis.conf这个配置来启动redis服务.

6、客户端连接redis服务器

redis-cli

redis-cli -h redis服务器的ip -p 端口号
-h: 如果不写默认127.0.0.1
-p: 默认6379

为了后期使用我们需要进入redis.conf文件进行配置

保护机制

安装图形化客户端:

使用:

命令:

设置一个

keys *:查看所有的key
del key ...: 删除指定的key
expire key second: 为指定的key设置过期时间
exists key: 判断指定的key是否存在

数据库:

select n:选择库 
flushdb: 清空当前库
flushall: 清空所有库。

Redis支持的数据类型

redis命令手册/

上面我们说了,redis支持的数据类型很多,最频繁的是;String字符串,Hash,List队列,Set集合,ZSet有序集合等

字符串:

表示里面的value的类型为字符串类型。默认可以存放512M大小的字符串内容

常用:

1. set key value: 存放字符串类型的数据 
2. get key: 获取指定key对应的value值。
3. setex key second value: 存放字符串类型的数据并设置过期时间。
4. setnx key value: 如果指定的key存在,则不设置。不存在则存入。
5. incr key: 为指定的key递增 
6. decr key: 为指定的key递减 

Hash类型

表示value值为Hash数据类型。 表示value又是key-value形式。

常用:

1. hset key field value: 存储哈希类型的数据
2. hget key field: 获取存在哈希表中指定字段的value值
3. hgetall key: 获取在哈希表中指定key的所有字段和值
4. hkeys key: 获取所有哈希表中的字段
5. hvals key: 获取哈希表中所有的值
6. hexists key field:查询哈希表key中,指定的字段是否存在

list类型

list表示列表类型,表示value的值为list类型。

常用:

1. lpush key value value ....: 将一个或多个值插入到列表的头部。
2. lrange key start end: 获取列表指定范围内的元素
3. linsert key before|after element value: 在列表元素前或后插入元素
4. lpop key: 移除并获取列表中的第一个元素
5. lset key index value: 修改指定下标的值。

===============================持续更新============================

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值