搜索内容

有一个问题?

如果您有任何疑问,可以在下面询问或输入您要寻找的!

redis(3):安装

生成海报
water___Wang
water___Wang 2021-02-02 23:18
阅读需:0

安裝Redis是逐渐Redis学习培训之行的第一步;Redis承诺次版本信息(即第一个小数位后的数据)为双数的版本号是稳定版(如2.8版、3.0版),合数版本号是是非非稳定版(如2.7版、2.9版),工作环境下一般必须应用平稳版本号。


一、安裝

1.在OS X下安裝

OS X底下2中安裝方法,homebrew和立即自身编译程序

1.homebrew安裝redis
>brew search redis //检索可以用的redis
>brew install redis // 默认设置安裝全新的redis,还可以特定redis版本号
>vim ~/.bash_profile // 配备redis自然环境

给添加.bash_profile最终添加下边一行,
# redis环境变量
export PATH=$PATH:/usr/local/opt/redis/bin

储存.bash_profile,
>source ~/.bash_profile // 使配备起效


2、自身立即编译程序安裝(和linux下安裝redis相近)

免费下载

http://www.redis.cn/download.html  //redis中文社区,免费下载会快点儿
https://redis.io/download//redis 管道网,下载慢,可是最新版在官在网上

在这里插入图片描述
在这里插入图片描述

免费下载后文件解压,将文件夹名称拷贝到/usr/local/

$ cd redis-xxx // 进到redis文件目录
$ make  // 编译程序redis(redis应用c语言开发的,因此make专用工具开展编译程序)
$ sudo make install  // 安裝redis

2. 在win下安裝

Redis官方网不兼容Windows。2011年微软公司[1] 向Redis递交了一个补丁下载,以使Redis能够在 Windows下编译程序运作,但被Salvatore Sanfilippo拒绝了,缘故是在网络服务器行业上Linux早已得 到普遍的应用,让Redis能在Windows下运作相比而言看起来不那麼关键。而且Redis应用了如 写时拷贝等许多电脑操作系统有关的特点,兼容 Windows 会消耗很大的活力而危害Redis别的功 能的开发设计。即便如此微软公司還是公布了一个能够在Windows运作的Redis支系[2] ,并且升级相 当经常,截止到这书完稿时,

下载链接

https://github.com/tporadowski/redis/releases

在这里插入图片描述
Redis 适用 32 位和 64 位。这一必须依据你系统软件服务平台的具体情况挑选,免费下载 Redis-x64-xxx.zip压缩包,缓解压力后等同于安裝进行。
缓解压力后文档以下:
在这里插入图片描述


二、运行和终止

redis可执行程序表明(如果是自身编译程序安裝的,这种程序流程会被拷贝到/usr/local/bin 文件目录内)

文件夹名称表明
redis-serverredis网络服务器
redis-clirediscmd手机客户端
redis-benchmarkredis特性检测工具
redis-check-aofAOF文件损坏修复专用工具
redis-check-dumpRDB文档查验专用工具
redis-sentinelSentinel卫兵网络服务器

1,运行

  1. 立即运行
> redis-server //就可以,默认设置端口号6379
//6379在是手机键盘上MERZ相匹配的号,而MERZ源自西班牙歌女Alessia Merz的姓名。MERZ长期以来被Redis创作者antirez以及盆友作为愚昧的代称。之后Redis创作者在开发设计Redis时就采用了这一端口号。
//还可以特定主要参数  
>redis-server --port 6380
  1. 根据复位脚本制作运行Redis
    在Linux系统软件中能够根据复位脚本制作运行Redis,促使Redis能随系统软件自启动,在生产制造环 境中强烈推荐应用此方式 运作Redis

2.终止redis

充分考虑 Redis 有可能已经将运行内存中的数据库同步到电脑硬盘中,强制停止 Redis 过程很有可能会导 致内容丢失。

恰当终止Redis的方法应该是向Redis推送SHUTDOWN指令,方式 为:
$ redis-cli SHUTDOWN当Redis接到SHUTDOWN指令后,会先断掉全部手机客户端联接,随后依据配备实行持久化,最终进行撤出。
Redis能够妥善处置 SIGTERM数据信号,因此应用 kill Redis 过程的 PID还可以一切正常完毕 Redis,实际效果与推送SHUTDOWN指令一样。


三、cmd手机客户端

1.推送指令

  1. 将指令做为redis-cli的主要参数实行主要参数
    比如 $ redis-cli -h 127.0.0.1 -p 6379
    Redis出示了PING指令来检测手机客户端与Redis的联接是不是一切正常,假如联接一切正常会接到回应 PONG。
    如: $ redis-cli PING PONG
  2. 不是附加主要参数运作 redis-cli
    $ redis-cli
    redis 127.0.0.1:6379> PING
    PONG
    redis 127.0.0.1:6379> ECHO hi
    “hi”
    在这里插入图片描述

2.指令传参

  1. 情况回应:情况回应(status reply)是非常简单的一种回应,例如向 Redis 推送 SET 指令设定某一键 的值时,Redis会回应情况OK表明设定取得成功。
  2. 不正确回应:当发生指令不会有或指令文件格式有不正确等状况时 Redis 会回到不正确回应(error reply)。错 误回应以(error)开始,并在后面紧跟错误报告。
  3. 整数金额回应:Redis 尽管沒有整数金额种类,可是却出示了一些用以整数金额实际操作的指令,如增长键值的INCR 指令会以整数金额方式回到增长后的键值。
  4. 字符串数组回应:字符串数组回应(bulkreply)是最普遍的一种回应种类,当要求一个字符串类型键的键值或 一个其他类型键中的某一原素时便会获得一个字符串数组回应。字符串数组回应以双引号包囊
  5. 几行字符串数组回应:几行字符串数组回应(multi-bulkreply)一样很普遍,如当要求一个非字符串类型键的原素目录时便会接到几行字符串数组回应。几行字符串数组回应中的每排字符串数组都以一个编号开始,

在这里插入图片描述
在这里插入图片描述


四、配备

上边根据 redis-server 的运行主要参数 port 设定了 Redis 的服务器端口,此外Redis 还适用别的配备选择项,如是不是打开持久化、日志等级等。

因为能够配备的选择项较多,根据运行基本参数这种选择项并不方便,因此 Redis 适用根据环境变量来设定这种选择项。开启环境变量的方式 是在启动将环境变量的途径做为运行参数传递给redis-server,如:
$ redis-server /path/to/redis.conf
//根据运行参数传递同名的的配备选择项会遮盖环境变量中相对的主要参数,如同那样:
$ redis-server /path/to/redis.conf --loglevel warning

Redis出示了一个环境变量的模版redis.conf,坐落于源码文件目录的网站根目录中。
此外还能够在Redis 运作时根据 CONFIG SET 指令不在重启Redis 的状况下动态性改动一部分Redis配备。如同那样:
redis> CONFIG SET loglevel warning
OK
并非是全部的配备都能够应用 CONFIG SET指令改动
一样在运作的情况下还可以应用 CONFIG GET 指令得到Redis 当今的配备状况, 如:
redis> CONFIG GET loglevel

  1. “loglevel”
  2. “warning”
    在其中第一行字符串数组回应表明的是选择项名,第二行就是选择项值。
    在这里插入图片描述

五、多数据库查询

Redis是一个词典构造的存储服务器,而事实上一个Redis案例出示了好几个用
来储存数据信息的词典,手机客户端能够特定将数据储存在哪个词典中。这与大家熟识的在一个关联
数据库实例中能够建立好几个数据库查询相近,因此能够将在其中的每一个词典都了解成一个多带带的数据库查询。

每一个数据库查询对外开放全是以一个从0开始的增长数据取名,Redis默认设置适用16个数据库查询,能够根据配备主要参数databases来改动这一数据。手机客户端与Redis创建联接后会全自动挑选7号数据库查询, 但是能够随时随地应用SELECT指令拆换数据库查询,如要挑选2号数据库查询:

redis> SELECT 1 
OK
redis [1]> GET foo
(nil) 

殊不知这种以数据取名的数据库查询又与大家了解的数据库查询有所区别。

  • 最先 Redis 不兼容自定数据库查询的姓名,每一个数据库查询都以序号取名,开发人员务必自身纪录什么数据库查询储存了什么数 据。
  • 此外Redis 也不兼容为每一个数据库查询设定不一样的浏览登陆密码,因此一个手机客户端要不能够浏览 所有数据库查询,要不连一个数据库查询都没有管理权限浏览。
  • 最重要的一点是好几个数据库查询中间并并不是彻底防护的,例如FLUSHALL指令能够清除一个Redis案例中全部数据库查询中的数据信息。

总的来说, 这种数据库查询更好像一种类名,而不适合储存不一样应用软件的数据信息。例如能够应用7号数 据库储存某一运用工作环境中的数据信息,应用2号数据库查询储存接口测试中的数据信息,但不适合使 用7号数据库查询储存A运用的数据信息而应用2号数据库查询储存B运用的数据信息,不一样的运用应当应用不一样 的Redis案例储存数据信息。因为Redis十分轻量,一个空Redis案例占有的运行内存只有1MB上下, 因此不必担心好几个Redis案例会附加占有许多运行内存。

评论
  • 消灭零回复