什么是 Redis

Redis 是一个使用ANSI C 编写的开源、支持网络协议、基于内存、可选持久性的键值对数据库,它是一个NOSQLnot only sql)数据库,也就是常说的非关系型数据库。从 2005 年开始,Redis 的开发由 Redis Labs 赞助,之前一直被 Pivotal 和 VMware 先后赞助。根据月度排行网站 DB-Engines.com 的数据显示,Redis 是最流行的键值对数据库。

Redis 应用场景

主要用于数据量大,并发量高的情况下

  • 数据缓存(页面具体数据),页面缓存(商品内容,新闻内容)
  • 分布式集群中架构中的Session分离
  • 应用排行榜,在线好友列表等
  • 任务队列,例如抢购秒杀等

Redis 的安装

Redis 是不支持 windows 版本的,因为其在 windows 下的效率非常低,但是Microsoft 开放技术小组开发和维护了一个针对 windows 版的 Redis,但是从项目记录来看已经有两年没更新了。

官网可以看到,目前最新稳定版为 Redis 4.0.11。此次安装环境选择 centOS ,方式为源码编译安装,所以我们需要有gcc环境,先执行下面的命令安装 gcc

yum install gcc-c++ -y

然后将最新稳定版的源码包下载下来

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

解压到/usr/local/目录下

tar -zxvf redis-4.0.11.tar.gz -C /usr/local

进入Redis 目录进行编译

cd /usr/local/redis-4.0.11
make

编译完成后,安装到指定目录,例如:/usr/local/redis-6379(也可以直接命令6379,因为可以在同一台机器上运行多个 redis 服务,所以一般以运行端口命名)

cd /usr/local/redis-4.0.11
make PREFIX=/usr/local/redis-6379 install

安装完成之后,我们还需要拷贝一份 redis 的配置文件——redis.conf 到安装路径下面,redis.conf 在 redis 的源码目录下

cd /usr/local/redis-4.0.11
cp redis.conf /usr/local/redis-6379/bin/

文件名 说明
redis-server redis 服务器
redis-cli redis 命令行客户端
redis-benchmark redis 性能测试工具
redis-check-aof aof 文件修复工具
redis-check-dump rub 文件检查工具

Redis 的启动

前端模式启动

如果在bin目录下直接运行 ./redis-server将以前端模式启动,启动成功界面如下所示

这种方式启动后,我们不能关闭该窗口,关闭该窗口后 redis 服务将会停止。如果想要使用 redis 需要再开一个窗口。进入到bin目录,运行./redis-cli命令,开启一个 redis 客户端连上 redis 服务。

后端模式启动

我们进入bin目录,先给之前拷贝过来的redis.conf配置文件赋予权限

cd /usr/local/redis-6379/bin/
chmod 777 redis.conf

然后打开 redis.conf配置文件,修改启动参数daemonizeyes,以后端方式启动。如果找不到daemonize,可以使用 vim打开文件后,使用:/daemonize来查找,找到后修改noyes,然后wq保存退出。此时,我们就可以使用如下命令以后端方式启动 redis

./redis-server redis.conf

启动后可以使用ps -aux|grep redis命令来查看是否启动成功

如上图所示,默认启动端口为 6379

Redis 的停止

如果我们强行停止 Redis 的进程可能会导致 Redis 持久化的数据丢失,所以正确停止 Redis 的方式应该是使用 ./redis-cli shutdown命令。

Redis 客户端的连接和使用

bin目录下的redis-cli就是 redis 的客户端,执行./redis-cli命令将会连接到 redis 服务器。连接成功后,我们可以使用set key1 111来保存一个值为111名为key1的键值对。使用get key1命令读取key1的数据

使用Redis 可视化工具

如果想要在Windows、Mac 或Linux 图像界面下可视化操作 Redis ,可以使用 Redis Desktop Manager,但是现在对于Windows 和 Mac 不提供下了,不过在网上还能搜到下载的链接。

另外还有几款开源的可视化工具也不错,例如:Redis ClientRedis Studio,但是都已经停止更新维护了。

Redis系列(一):Redis的简介与安装的更多相关文章

  1. Redis系列(一)——简介及安装

    摘自:redis中文网(http://www.redis.net.cn/) 参考:http://www.cnblogs.com/hoojo/p/4466024.html,http://keenwon. ...

  2. Redis系列一 Redis安装

    Redis系列一    Redis安装 1.安装所使用的操作系统为Ubuntu16.04 Redis版本为3.2.9 软件一般下载存放目录为/opt,以下命令操作目录均为/opt root@ubunt ...

  3. Redis系列(二):Redis的数据类型及命令操作

    原文链接(转载请注明出处):Redis系列(二):Redis的数据类型及命令操作 Redis 中常用命令 Redis 官方的文档是英文版的,当然网上也有大量的中文翻译版,例如:Redis 命令参考.这 ...

  4. redis系列:redis介绍与安装

    前言 这个redis系列的文章将会记录博主学习redis的过程.基本上现在的互联网公司都会用到redis,所以学习这门技术于你于我都是有帮助的. 博主在写这个系列是用的是目前最新版本4.0.10,虚拟 ...

  5. Redis系列一:reids的单机版安装

    环境:VM+centos6+xshell 1.准备好linux的虚拟机,这里用的是centos6,具体方法百度 2.进入software目录,创建一个redis的目录来存放下载的redis包 cd s ...

  6. 深入剖析Redis系列: Redis集群模式搭建与原理详解

    前言 在 Redis 3.0 之前,使用 哨兵(sentinel)机制来监控各个节点之间的状态.Redis Cluster 是 Redis 的 分布式解决方案,在 3.0 版本正式推出,有效地解决了 ...

  7. Redis系列之----Redis的两种持久化机制(RDB和AOF)

    Redis的两种持久化机制(RDB和AOF) 什么是持久化    Redis的数据是存储在内存中的,内存中的数据随着服务器的重启或者宕机便会不复存在,在生产环境,服务器宕机更是屡见不鲜,所以,我们希望 ...

  8. 【Redis 系列】redis 学习十六,redis 字典(map) 及其核心编码结构

    redis 是使用 C 语言编写的,但是 C 语言是没有字典这个数据结构的,因此 C 语言自己使用结构体来自定义一个字典结构 typedef struct redisDb src\server.h 中 ...

  9. redis系列之redis是什么

    一.简介 REmote DIctionary Server(Redis),redis是一个基于内存的单机key/value系统,类似memcached,但支持value为多种形式,包括:字符串(str ...

随机推荐

  1. Pycharm中自动生成作者,日期等信息

    初次安装使用PyCharm,在新建.py文件时会发现文件头并没有什么信息,因此,使用模板会比较方便.方法如下: 1.打开PyCharm,选择File--Settings 2.依次选择Editor--- ...

  2. 昕有灵犀-xyFS私有文件云存储OSS服务

    本工程为本人开发的开源项目,地址: https://gitee.com/475660/xyFS 介绍: 一站式企业私有文件服务.针对软件开发时提供的文件存储系统,对文件上传.下载.分类.分组.审计.统 ...

  3. Java语言访问Redis数据库之Set篇

    如果想通过Java语言对Redis数据库进行访问. 首先,需要安装Redis数据库,可以是Windows系统,或者Linux系统.(本文以Windows系统的本地Redis数据库为例,代码说明如何操作 ...

  4. sublime text 前端开发插件安装和配置

    前端开发sublimeconfig mac配置 此文件目录中文件主要是关于sublime的插件配置,快捷键配置,主题和字体配置. 插件列表 所有插件都可以使用Package Control安装,具体的 ...

  5. 全网最详细的一个超级好用的命令行工具【Cmder】是什么?

    不多说,直接上干货! Cmder是什么? 一款Windows环境下非常简洁美观易用的cmd替代者,它支持了大部分的Linux命令.支持ssh连接linux,使用起来非常方便.比起cmd.powersh ...

  6. 2018.4.25-ml笔记(梯度下降)

  7. 从零开始学 Web 之 ES6(六)ES6基础语法四

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  8. php持续推送信息到客户端的方法

    <?php set_time_limit(0); $i=1; while($i++) { echo $i,'<br />'; ob_flush();//冲刷出(送出)输出缓冲区中的内 ...

  9. Debatching(Splitting) XML Message in Orchestration using DefaultPipeline - BizTalk 2010

    Debatching(Splitting) XML Message in Orchestration using DefaultPipeline - BizTalk 2010   In this po ...

  10. shiro源码篇 - shiro的session的查询、刷新、过期与删除,你值得拥有

    前言 开心一刻 老公酷爱网络游戏,老婆无奈,只得告诫他:你玩就玩了,但是千万不可以在游戏里找老婆,不然,哼哼... 老公嘴角露出了微笑:放心吧亲爱的,我绝对不会在游戏里找老婆的!因为我有老公! 老婆: ...