学习redis

目录

1.什么是NOSQL

2.NOSQL和RDBMS的区别

3.NOSQL的产品

4.介绍Redis

目录

1.什么是NOSQL

2.NOSQL和RDBMS的区别

3.NOSQL的产品

4.介绍Redis

Redis 优势

5.安装Redis

6. redis客户端连接redis服务器

7. 聊聊redis的配置文件

8. 安装redis的客户端的UI软件

9. 学习redis中常用的命令

9.1 关于key的命令

9.2 关于数据库的命令

9.3 redis支持的数据类型

9.3.1 String 字符串类型

8.3.2 Hash类型

9.3.3 list 队列

9.3.4 set集合类型

9.3.5 sort set有序集合



1.什么是NOSQL

NoSQL(Not only SQL)是对不同于传统的关系数据库的数据库管理系统的统称,即广义地来说可以把所有不是关系型数据库的数据库统称为NoSQL。

NoSQL 数据库专门构建用于特定的数据模型,并且具有灵活的架构来构建现代应用程序。NoSQL 数据库使用各种数据模型来访问和管理数据。这些类型的数据库专门针对需要大数据量、低延迟和灵活数据模型的应用程序进行了优化,这是通过放宽其他数据库的某些数据一致性限制来实现的。

2.NOSQL和RDBMS的区别

RDBMS的特点:关系型数据库管理系统

工具:MySQL、Oracle、SQL Server
应用:业务性数据存储系统
特点:体现数据之间的关系,支持事务,保证业务完整性和稳定性,小数据量的性能也比较好。
开发:SQL
问题:以网站后台存储为例,当并发量很大,所有的高并发全部直接请求MySQL,容易导致MySQL崩溃。
NoSQL的特点:(Not Only SQL) 非关系型数据库

工具:Redis、Hbase、MongoDB
应用:一般用于高并发高性能场景下的数据缓存或者数据存储。
特点:读写速度特别快,并发量非常高。相对而言,不如RDBMS稳定,对事务性的支持不太友好。
开发:每种NoSQL都有自己的命令语法

3.NOSQL的产品

redis----结构基于key和value的形式
mongodb---介于关系型数据库和非关系数据库之间


4.介绍Redis

Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。

Redis 与其他 key - value 缓存产品有以下三个特点:

  • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  • Redis支持数据的备份,即master-slave模式的数据备份。

Redis 优势

  • 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
  • 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
  • 原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
  • 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性


5.安装Redis

(1)把redis软件放入centos系统中并解压

tar -zxvf xxxx.tar.gz

 (2)进入到解压目录进行编译

       make 

(3)安装---可以在任意目录下使用redis的脚本命令

         make install(可以直接走这一步)

(4)启动redis

          redis-server  redis.conf //配置文件所在的路径(相对路径)

               ps -ef  |grep redis(查看进程)

6. redis客户端连接redis服务器

redis-cli  连接本地redis服务

redis-cli -h 192.168.86.128 -p 7001
-h: redis服务器主机的ip
-p: redis服务器的端口号

7. 聊聊redis的配置文件

(1)打开redis.conf配置文件

 修改配置文件 no改为yes

(2)查看redis的进程:

        ps -ef | grep redis

        关闭redis进程

        kill -9 进程号

(3) 设置redis远程连接

找到redis.conf配置文件

修改配置文件

验证是否成功

8. 安装redis的客户端的UI软件

连接客户端,连接前关闭防火墙

9. 学习redis中常用的命令

redis命令手册

Redis 命令参考 — Redis 命令参考

9.1 关于key的命令

        keys *: 查看redis中所有的key

        
        del key [key....]: 删除指定key的内容

        
        expire key seconds:  为指定的key设置过期时间

        
        ttl key: 查看当前的key的剩余时间

        
        exists key: 判断指定的key是否存在  返回0表示不存在指定的key  否则表示存在指定的key

         

9.2 关于数据库的命令

默认redis支持数据库的个数为16个

select n: 选择数据库

flushdb: 清空当前库

flushall: 清空所有库的数据

9.3 redis支持的数据类型

String 字符串类型

Hash 对象类型

List: 队列类型

Set: 集合类型

ZSet: 有序集合类型.

不同的数据类型有不同的命令。

9.3.1 String 字符串类型

表示它的value为字符串类型,它是使用最多的类型,因为任意数据类型都可以转化为字符串。

1. set key value: 设置指定 key 的值

 2. get key 获取指定 key 的值。

 3. mset key value key value .... 同时设置一个或多个 key-value 对。

 4. mget key key ....  获取所有(一个或多个)给定 key 的值。

5. incr key     将 key 中储存的数字值增一。 点赞 收藏

6. decr key       将 key 中储存的数字值减一

 

7. setnx key value 只有在 key 不存在时设置 key 的值。

8.3.2 Hash类型

1. hset key field value      将哈希表 key 中的字段 field 的值设为 value 。

2. hget key field   获取存储在哈希表中指定字段的值/td>

3. hget key   获取在哈希表中指定 key 的所有字段和值

4. hkeys  key   获取所有哈希表中的字段

 5.hvals key      获取哈希表中所有值

9.3.3 list 队列

1. LPush key  value value value...    将一个或多个值插入到列表头部

2. lrange key start end   获取列表指定范围内的元素

3.lpop key   移出并获取列表的第一个元素

9.3.4 set集合类型

1. sadd key value value ....向集合添加一个或多个成员

2.smemebers key 返回集合中的所有成员

 3.SRANDMEMBER KEY 随机获取一个或多个元素

9.3.5 sort set有序集合

1.zadd key  score value score value :向有序集合添加一个或多个成员或者更新已存在成员的分数

 

2.zrange key        通过索引区间返回有序集合成指定区间内的成员

 3.ZREVRANK key start end 返回有序集合中指定成员的排名,有序集成员按分数值递减(从大到小)排序

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值