Linux安装部署Redis(超级详细)

前言

网上搜索了一筐如何在Linux下安装部署Redis的文章,各种文章混搭在一起勉强安装成功了。自己也记录下,方便后续安装时候有个借鉴之处。

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

下载Redis

进入官网找到下载地址 https://redis.io/download

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

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

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

等待下载完成。

解压并安装Redis

 解压

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

tar -zvxf redis-5.0.7.tar.gz

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

移动redis目录

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

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

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

编译

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

make

最终运行结果如下:

安装

输入以下命令

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。

执行结果如下图:

启动redis

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

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

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

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

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

redis.conf配置文件

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

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

redis-cli
CONFIG GET *

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

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

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

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

更改方式:

vim /usr/local/redis/redis.conf

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

如下图:

其他两个属性也是同样方式查找和编辑即可。

查看Redis是否正在运行

1、采取查看进程方式

ps -aux | grep redis

结果如下图:

2、采取端口监听查看方式

netstat -lanp | grep 6379

结果如下图:

redis-cli

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

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

关闭运行中的Redis服务

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

远程连接不上问题

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

后面发现是启动命令的问题,因为我比较偷懒,启动redis我都是直接输入命令
redis-serverredis-server& 这两种方式都是直接读取默认的配置文件启动,无非前者是显示启动后者是作为后台应用启动。我其实也很纳闷,因为我修改的就是默认的配置文件啊,我并没有重新生成新的配置文件,但是确实我输入命令 redis-server /usr/local/redis/etc/redis.conf 就是能成功,而且我输入命令redis-server& /usr/local/redis/etc/redis.conf也是远程登录失败。
关于直接输入redis-server不行的问题我还怀疑是不是Linux缓存问题,我重启服务器尝试下。结果还是一样的。。。哎先不纠结了 后续再去找原因吧

原文地址:https://www.cnblogs.com/hunanzp/p/12304622.html

时间: 2024-12-29 06:58:20

Linux安装部署Redis(超级详细)的相关文章

vim配置及插件安装管理(超级详细)

vim配置及插件安装管理(超级详细) 分类: Linux 相关2012-07-26 09:34 97079人阅读 评论(18) 收藏 举报 vimsearchbuffertags浏览器microsoft 1 写在前面   Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, "工欲善其事, 必先利其器"

linux安装部署tomcat

linux安装部署tomcat 联系qq:413607496,大家可以互相讨论一下. 1.准备tomcat系列包 本次使用这个版本进行安装部署:apache-tomcat-7.0.73.tar.gz 2.将这个tomcat版本上传linux服务器 上传路径:/usr/local/ 3.解压tomcat tar zxvf /usr/local/apache-tomcat-7.0.73.tar.gz 4.保留原始tomcat,并复制一份出来重命名使用 cp /usr/local/apache-tom

Linux 安装部署SVN服务器

svn 版本管理工具. svn服务器有2种运行方式:独立服务器和借助apache运行.两种方式各有利弊,用户可以自行选择. svn存储版本数据也有2种方式:BDB(一种事务安全型表类型)和FSFS(一种不需要数据库的存储系统).因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点. 1.环境 # cat /etc/redhat-release CentOS release 6.3 (Final) # getconf LONG_BIT 64 2.安装 svn #yum -y

Centos-6.5安装部署redis

redis作为NoSQL数据库的一种应用,响应速度和命中率上还是比较高效的.项目中需要用集中式可横向扩展的缓存框架,因配合开发人员做测试,以下讲讲redis的安装部署过程. 下载redis 官网下载:http://redis.io/download 下载方式及版本依个人情况而定,我选择的版本是redis-3.0.7 wget http://download.redis.io/releases/redis-3.0.7.tar.gz 或者下载完成后拷贝到linux服务器 安装redis 首先安装依赖

Storm集群安装部署步骤【详细版】

作者: 大圆那些事 | 文章可以转载,请以超链接形式标明文章原始出处和作者信息 网址: http://www.cnblogs.com/panfeng412/archive/2012/11/30/how-to-install-and-deploy-storm-cluster.html 本文以Twitter Storm官方Wiki为基础,详细描述如何快速搭建一个Storm集群,其中,项目实践中遇到的问题及经验总结,在相应章节以“注意事项”的形式给出. 1. Storm集群组件 Storm集群中包含两

(针对新手)如何用VMware虚拟机安装RedHat Linux系统?(超级详细)

准备工作:先安装好VMware Workstation虚拟机软件(笔者安装的是当前最新版本的)下载好RedHat .iso镜像文件(这里以redhat 6.3 -64版本 为例)PS:软件均可以在网上免费下载,这里就不提供下载地址了. 安装步骤:1.打开VMware虚拟机,选择"创建新的虚拟机". 2.这里点击"自定义配置",以便进行更详细的配置.(当然你也可以选择"典型安装",步骤更加简化)3.注意这里我们选择"稍后安装操作系统&qu

linux 7安装部署Redis

1  下载Redis包 下载地址:http://download.redis.io/releases/redis-3.2.4.tar.gz 2 上传服务器的/usr/local/下 3 安装gcc  pcre-devel zlib-devel yum -y install gcc pcre-devel zlib-devel 4 解压Redis包 cd /usr/loca/redis-3.2.4.tar.gz  (将Redis改个名 mv redis-3.2.4.tar.gz redis) tar

linux安装部署apache+subversion+jsvnadmin

1.apache网页服务器(注意不是tomcat) 2.subversion版本控制(svn服务器) 3.jsvnadmin项目(svn管控台) 以上三个整合,形成svn版本管理的平台 1.安装之前,先更新linux系统 # yum update 需要输入y确认 2.更新完成重启 # reboot  3.安装apache # yum install httpd httpd-devel 安装时需要输入y确认 4.启动服务器 # service httpd start  5.apache设置开机启动

vim配置及插件安装管理(超级详细)[转]

1 写在前面   Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, "工欲善其事, 必先利其器"嘛, 我想如果有一个很好用的IDE, 那些Linux牛人也会欢迎的. 这都是劳动人民的美好愿望罢了, 我今天教大家把gvim改装成一个简易IDE, 说它"简易"是界面上看起来&quo