【Redis】 CentOS 7.6 安装redis

目录

1、安装redis

前言

下载Redis

解压并安装Redis

 查看Redis是否正在运行

redis-cli

关闭运行中的Redis服务

远程连接不上问题

【问题记录】

2.1、redis如何设置密码

2.2、Redis安装完后redis-cli无法使用(redis-cli: command not found)


1、安装redis

1.1 环境

  • Redis版本 5.0.4
  • 服务器版本 Linux CentOS 7.6 64位

1.2 下载Redis

进入官网找到下载地址 Redis

右键Download按钮,选择复制链接。
进入到Xshell控制台(默认当前是root根目录),输入wget 将上面复制的下载链接粘贴上,如下命令:

1

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

敲入回车键执行后如下图:

等待下载完成。

1.3 解压并安装Redis

 1.3.1 解压

下载完成后需要将压缩文件解压,输入以下命令解压到当前目录

1

tar -zvxf redis-5.0.7.tar.gz

解压后在根目录上输入ls 列出所有目录会发现与下载redis之前多了一个redis-5.0.7.tar.gz文件和 redis-5.0.7的目录。

1.3.2 移动redis目录,并重命名为redis

一般都会将redis目录放置到 /usr/local/redis目录,所以这里输入下面命令将目前在/root目录下的redis-5.0.7文件夹更改目录,同时更改文件夹名称为redis。

1

mv /root/redis-5.0.7 /usr/local/redis

cd 到/usr/local目录下输入ls命令可以查询到当前目录已经多了一个redis子目录,同时/root目录下已经没有redis-5.0.7文件夹

1.3.3 编译

cd到/usr/local/redis目录,输入命令make执行编译命令,接下来控制台会输出各种编译过程中输出的内容。

1

make

最终运行结果如下:

 安装

输入以下命令

1

make PREFIX=/usr/local/redis install

这里多了一个关键字 PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,

库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis 即可删除redis。

执行结果如下图:

 1.4 配置 redis 为后台运行,修改 redis.conf

将redis.conf文件中 daemonize no 为 daemonize yes    (设置redis为后台运行模式)

不然每次启动都得在redis-server命令后面加符号&,不这样操作则只要回到Linux控制台则redis服务会自动关闭,同时也将bind注释,将protected-mode设置为no。

1

vim /usr/local/redis/redis.conf

进入vim模式后,输入 /daemonize 找到 daemonize  配置项,默认是no,更改为yes即可。 (通过vim / 关键字查找出现多个结果则使用 n字符切换到下一个即可,查找到结果后输入:noh退回到正常模式)

1.5  启动redis服务

根据上面的操作已经将redis安装完成了。在目录/usr/local/redis 输入下面命令启动redis

1

如果没有修改 daemonize 为 yes ,需要按一下方式来后台运行:

./bin/redis-server& ./redis.conf

如果已经修改 daemonize 为 yes ,需要按一下方式来后台运行:

./bin/redis-server ./redis.conf

上面的加 & 启动方式是采取后台进程方式,下面是采取显示启动方式(如在配置文件设置了daemonize属性为yes则跟后台进程方式启动其实一样)。

两种方式区别无非是有无带符号&的区别。 redis-server 后面是配置文件,目的是根据该配置文件的配置启动redis服务。redis.conf配置文件允许自定义多个配置文件,通过启动时指定读取哪个即可。

1.6 进入redis-cli  查看配置项,配置项解读

也可以通过redis-cli命令进入redis控制台后通过CONFIG GET * 的方式读取所有配置项。 如下:

1

2

redis-cli

CONFIG GET *

回车确认后会将所有配置项读取出来,如下图

1.7 redis.conf 配置文件

在目录/usr/local/redis下有一个redis.conf的配置文件。我们上面启动方式就是执行了该配置文件的配置运行的。我么可以通过cat、vim、less等Linux内置的读取命令读取该文件。redis 启动文件,一般在  /usr/local/redis/src  或者 /usr/local/redis/bin 目录下,取决于你的版本;

这里列举下比较重要的配置项

配置项名称配置项值范围说明
daemonizeyes、noyes表示启用守护进程,默认是no即不以守护进程方式运行。其中Windows系统下不支持启用守护进程方式运行
port指定 Redis 监听端口,默认端口为 6379
bind绑定的主机地址,如果需要设置远程访问则直接将这个属性备注下或者改为bind * 即可,这个属性和下面的protected-mode控制了是否可以远程访问 。
protected-modeyes 、no保护模式,该模式控制外部网是否可以连接redis服务,默认是yes,所以默认我们外网是无法访问的,如需外网连接rendis服务则需要将此属性改为no。
timeout300当客户端闲置多长时间后关闭连接,如果指定为 0,表示关闭该功能
logleveldebug、verbose、notice、warning日志级别,默认为 notice
databases16设置数据库的数量,默认的数据库是0。整个通过客户端工具可以看得到
rdbcompressionyes、no指定存储至本地数据库时是否压缩数据,默认为 yes,Redis 采用 LZF 压缩,如果为了节省 CPU 时间,可以关闭该选项,但会导致数据库文件变的巨大。
dbfilenamedump.rdb指定本地数据库文件名,默认值为 dump.rdb
dir指定本地数据库存放目录
requirepass设置 Redis 连接密码,如果配置了连接密码,客户端在连接 Redis 时需要通过 AUTH <password> 命令提供密码,默认关闭
maxclients0设置同一时间最大客户端连接数,默认无限制,Redis 可以同时打开的客户端连接数为 Redis 进程可以打开的最大文件描述符数,如果设置 maxclients 0,表示不作限制。当客户端连接数到达限制时,Redis 会关闭新的连接并向客户端返回 max number of clients reached 错误信息。
maxmemoryXXX <bytes>指定 Redis 最大内存限制,Redis 在启动时会把数据加载到内存中,达到最大内存后,Redis 会先尝试清除已到期或即将到期的 Key,当此方法处理 后,仍然到达最大内存设置,将无法再进行写入操作,但仍然可以进行读取操作。Redis 新的 vm 机制,会把 Key 存放内存,Value 会存放在 swap 区。配置项值范围列里XXX为数值。

1.8 查看Redis是否正在运行

1.8.1 采取查看进程方式

1

ps -aux | grep redis

结果如下图:

1.8.2 采取端口监听查看方式

1

netstat -lanp | grep 6379

结果如下图:

1.9 redis-cli

redis-cli是连接本地redis服务的一个命令,通过该命令后可以进入redis的脚本控制台。如下图

输入exit可以退出redis脚本控制台

关闭运行中的Redis服务

输入redis-cli 进入控制台后输入命令shutdown即可关闭运行中的Redis服务了。如下图:

2 .0  redis开启远程连接

配置redis.conf文件

2.1 找到 bind 127.0.0.1 把这段注释掉,然后 改成” bind 0.0.0.0  “或者” bind  指定IP ‘

以下方式是改成bind 虚拟机的ip:

2.2 protected-mode yes 改成 protected-mode no  将本机访问保护模式设置no

2.3  安全起见,添加一行“ requirepass 密码xxx  ”,修改为自己的密码  

【问题记录】

1、远程连接不上问题

首先检查连接的必备条件(redis的配置,查看配置可以用 redis-cli 进入客户端后查看,最准确);

然后排查端口是否开放(服务器、云服务控制台)

如下图,已经开放了Redis服务的ip不为127.0.0.1,理论上远程客户端应该可以连接了,而且云服务器的端口号也在安全组里开放了。

启动redis我都是直接输入命令 redis-server 直接读取默认的配置文件启动,

2.1、redis如何设置密码?redis密码登录?


redis密码设置有两种方式,一种需要重启redis服务,一种不需要重启redis服务。

1)需重启redis服务的设置方式,修改配置文件,永久添加密码
即找到redis的配置文件—redis.conf文件,然后修改里面的requirepass,这个本来是注释起来了的,将注释去掉,并将后面对应的字段设置成自己想要的密码,保存退出。重启redis服务,即可。

在这里插入图片描述

我这里是设置密码成了 123 

然后重启服务;

2)不需要重启redis服务的设置方式,临时密码,重启后失效
这种相对简单,连接redis之后,通过命令设置,如下:
        config set requirepass 123456
如此,便将密码设置成了123456
设置之后,可通过以下指令查看密码

        config get requirepass

在这里插入图片描述
密码设置之后,当你退出再次连上redis的时候,就需要输入密码了,不然是无法操作的。这里有两种方式输入密码,一是连接的时候直接输入密码,而是连接上之后再输入密码,分别如下所示: 在这里插入图片描述

命令行修改了密码,但配置文件的requirepass字段后面的密码是不会随之修改的。最好同时修改,避免重启时忘记了设置。

redis密码登录:

redis-cli  -p  6379  -a  [密码]

或者

先登陆后验证密码:

redis-cli

127.0.0.1:6379>  auth [密码]

2.2、Redis安装完后redis-cli无法使用(redis-cli: command not found)

添加 redis-cli 快捷方式到 linux 的 bin 目录下,

sudo cp  redis/bin/redis-cli  /usr/local/bin/  

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值