NoSQL数据库之Redis(一):安装 & 简介

Redis概述

Redis是一个开源的key-value存储系统。
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。

这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。

在此基础上,Redis支持各种不同方式的排序。
与memcached一样,为了保证效率,数据都是缓存在内存中。
区别的是Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件。
并且在此基础上实现了master-slave(主从)同步。

Redis应用场景

配合关系型数据库做高速缓存

高频次,热门访问的数据,降低数据库IO
分布式架构,做session共享
在这里插入图片描述

多样的数据结构存储持久化数据

在这里插入图片描述

Redis安装

1、安装 gcc 编译器

# 安装 C 语言的编译环境
yum install centos-release-scl scl-utils-build
yum install -y devtoolset-8-toolchain
scl enable devtoolset-8 bash

# 测试 gcc版本 
gcc --version

2、下载并安装 Redis

Redis官方网站:http://redis.io
Redis中文官方网站:http://redis.cn/

1、官网下载 redis-6.2.1.tar.gz 后放 /opt 目录

2、解压安装 redis-6.2.1.tar.gz

# 解压命令:
tar -zxvf redis-6.2.1.tar.gz
# 解压完成后进入目录:
cd redis-6.2.1

# 在redis-6.2.1目录下再次执行make命令(只是编译好)
make install
	如果没有准备好C语言编译环境,make 会报错—Jemalloc/jemalloc.h:没有那个文件
	# 解决方案:执行命令make distclean后,在redis-6.2.1目录下再次执行make install命令(只是编译好)

3、安装目录:/usr/local/bin

查看默认安装目录:
	redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何
	redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲
	redis-check-dump:修复有问题的dump.rdb文件
	redis-sentinel:Redis集群使用
	redis-server:Redis服务器启动命令
	redis-cli:客户端,操作入口

4、启动/关闭 redis server

  • 前台启动:

      # 前台启动(不推荐),命令行窗口不能关闭,否则服务器停止
      redis -server
    
  • 后台启动:

    1、备份redis.conf

      # 复制一份 redis.conf 到其他目录
      cp  /opt/redis-3.2.5/redis.conf  /myredis
    

    2、修改redis.conf(128行):后台启动设置daemonize no改成yes

    3、Redis 启动

      # 启动 redis
      redis-server /myredis/redis.conf
    

    4、测试验证

      # 访问 redis
      redis-cli
      # 端口访问 redis
      redis-cli -p6379
    
      [root@zy bin]# redis-cli
      127.0.0.1: 6379>
      127.0.0.1: 6379> ping
      PONG
    

    5、Redis关闭

      # 单实例关闭:
      redis-cli shutdown
      # 指定端口关闭:
      redis-cli -p 6379 shutdown
    
      # 也可以进入终端后再关闭
      redis-server /myredis/redis.conf
      shutdown	
    

Redis是单线程+多路IO复用技术

端口6379从何而来:
	默认16个数据库,类似数组下标从0开始,初始默认使用0号库
	使用命令 select  <dbid> 来切换数据库。如: select 8 
	统一密码管理,所有库同样密码。
	dbsize :查看当前数据库的key的数量
	flushdb :清空当前库
	flushall :通杀全部库

Redis是单线程+多路IO复用技术。

多路复用是指使用一个线程来检查多个文件描述符(Socket)的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作可以在同一个线程里执行,也可以启动线程执行(比如使用线程池)

串行 vs 多线程+锁(memcached) vs 单线程+多路IO复用(Redis)
(与Memcache三点不同: 支持多数据类型,支持持久化,单线程+多路IO复用)
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值