在Linux环境安装redis步骤,且设置开机自动启动redis

简介: 在Linux环境安装redis步骤,且设置开机自动启动redis

 

最近一直在学习redis相关知识,看了很多理论知识后,觉得还是要多动手操作,就如王阳明说的知行合一那样,因此,便决定在linux环境安装了redis,过程捣鼓了一番,也遇到了一些波折,但最后还是成功安装完成,顺便把步骤流程记录了下来,分享给有需要的小伙伴。

1.首先,我在linux的/usr/local/localsoftware/目录下,创建了一个存放redis安装包的文件夹,可按照以下指令进行执行:

cd  /usr/local/localsoftware/

mkdir redis


2.创建好叫redis的文件夹后,可进入到该文件夹下,通过wget进行下载redis安装压缩包:

cd redis

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


3.解压命令:tar zxvf redis-4.0.8.tar.gz

4.解压完成后,直接进入到解压之后的文件夹:cd redis-4.0.8

5.在redis目录里,执行make

若出现“gcc:命令未找到”,说明linux虚拟机还没有安装gcc这时执行指令:yum install gcc-c++安装成功后,再执行一次make,出现以下信息

执行:make distclean

再执行一遍:make,执行完成没报错话,查看一下gcc的版本:

能查看到gcc版本后,执行命令:make install

进入bin目录:cd /usr/local/bin,发现已经安装完成redis

在主系统下,创建一个文件夹,MyRedis

进入到先前解压redis压缩包的文件夹redis-4.0.8里:cd /usr/local/localsoftware/redis/redis-4.0.8复制目录下的redis.conf文件到MyRedis文件夹里:cp redis.conf /MyRedis/进入到/MyRedis/目录下,编辑redis.conf文本,设置daemonize yes,代表开启了守护进程模式,即redis会在后台运行,若要设置成开机启动redis状态,这里必须设置为yes,之后按Esc后输入“:wq”进行保存退出。执行命令:ps -ef|grep redis,查看redis服务是否已经启动。回到主系统,执行redis-server /MyRedis/redis.conf再开一个页面,执行:redis-cli -p 6379,进入到redis客户端,测试一下,可以正常运行,即启动成功。设置linux虚拟机开机就启动redis。redis启动脚本在压缩包解压文件夹utils目录下,名字为redis_init_script的文件

vim打开执行文件:vim redis_init_script

redis_init_script文件修改以下内容:

1.在脚本的第二行增加:# chkconfig 2345 90 10

该行代码的意思是:redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。

2.设置redis服务端口:REDISPORT=6379

3.修改Redis执行路径,如果默认安装在/usr/local/bin/目录下则不需要修改,我是默认安装在/usr/local/bin/目录下的,因此,就直接复制以下即可:

EXEC=/usr/local/bin/redis-server

CLIEXEC=/usr/local/bin/redis-cli

4.Redis配置端口与文件:

PIDFILE=/var/run/redis_${REDISPORT}.pid

CONF="/etc/redis/${REDISPORT}.conf"

修改完后的文件内容如下:

#!/bin/sh

#chkconfig: 2345 90 10

# Simple Redis init.d script conceived to work on Linux systems

# as it does use of the /proc filesystem.


REDISPORT=6379

EXEC=/usr/local/bin/redis-server

CLIEXEC=/usr/local/bin/redis-cli


PIDFILE=/var/run/redis_${REDISPORT}.pid

CONF="/etc/redis/${REDISPORT}.conf"


进入到Redis 解压目录下,创建目录etc/redis

复制redis.conf到目录etc/redis的6379.conf里

可以看到该目录下已经有一个6379.conf文件:

修改6379.conf的配置信息:vim /etc/redis/6379.conf

需要修改的内容:

保护模式: protected-mode yes # 需要修改为 no ,修改之后, Redis 服务将会在后台运行

绑定 ip: bind 127.0.0.1 # 默认监听本机 Redis, 修改为 bind 0.0.0.0 之后即可远程连接 Redis

线程保护: daemonsize: no # 默认关闭,需要将其修改为 yes

日志文件: logfile “” #默认在控制台打印,不会记录到文件,可以指定日志文件路径(日志文件的目录必须提前创建) :(log是log.log文件)

logfile "/usr/local/redis/logs/log"

数据持久化目录 dir ./ # 默认数据保存在当前目录,可以指定数据保存目录(目录也需要提前创建好),dir /usr/local/redis/datas/

完成以上的配置后,Esc+:wq进行保存退出,再进入到解压redis的目录里:

复制脚本至启动目录(命令在 Redis 解压目录下执行):

cp ./utils/redis_init_script /etc/init.d/redisd

向防火墙添加 Redis 端口、刷新防火墙规则、查询防火墙开放端口

$ firewall-cmd --zone=public --add-port=6379/tcp --permanent

$ firewall-cmd --reload

$ firewall-cmd --zone=public --list-port

置开机自动启动:chkconfig redisd on

开启 Redis 服务:service redisd start

如果到这一步没有报错就可以reboot重启来验证了:

ps -ef |grep redis

netstat -lntp | grep 6379

安装到这里,就已经大功告成,若安装过程中小伙伴有问题,可跟我咨询。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
17天前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
16天前
|
NoSQL Linux Redis
Linux Redis 服务设置开机自启动
【9月更文挑战第2天】在 Linux 系统中,可使用两种方法设置 Redis 开机自启动:一是通过创建 `redis.service` 文件并利用 systemd 进行管理,包括定义服务参数和启动脚本;二是编辑 `/etc/rc.local` 文件,在其中添加启动命令。推荐使用 systemd 方法,因为它更符合现代 Linux 系统的设计理念。设置完成后,可通过 `sudo systemctl status redis.service` 检查服务状态。
|
23天前
|
前端开发 Linux
深度探索Linux操作系统 —— 构建桌面环境3
深度探索Linux操作系统 —— 构建桌面环境
29 12
|
16天前
|
Shell Linux API
C语言在linux环境下执行终端命令
本文介绍了在Linux环境下使用C语言执行终端命令的方法。首先,文章描述了`system()`函数,其可以直接执行shell命令并返回结果。接着介绍了更强大的`popen()`函数,它允许程序与命令行命令交互,并详细说明了如何使用此函数及其配套的`pclose()`函数。此外,还讲解了`fork()`和`exec`系列函数,前者创建新进程,后者替换当前进程执行文件。最后,对比了`system()`与`exec`系列函数的区别,并针对不同场景推荐了合适的函数选择。
|
23天前
|
存储 搜索推荐 Linux
深度探索Linux操作系统 —— 构建桌面环境1
深度探索Linux操作系统 —— 构建桌面环境
33 8
|
23天前
|
Linux 编译器 C语言
深度探索Linux操作系统 —— 构建桌面环境2
深度探索Linux操作系统 —— 构建桌面环境
26 6
|
NoSQL Redis 数据安全/隐私保护
|
5天前
|
canal 缓存 NoSQL
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
根据对一致性的要求程度,提出多种解决方案:同步删除、同步删除+可靠消息、延时双删、异步监听+可靠消息、多重保障方案
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
|
25天前
|
缓存 NoSQL Redis
【Azure Redis 缓存】Redission客户端连接Azure:客户端出现 Unable to send PING command over channel
【Azure Redis 缓存】Redission客户端连接Azure:客户端出现 Unable to send PING command over channel
|
22天前
|
缓存 NoSQL Java
Redis深度解析:解锁高性能缓存的终极武器,让你的应用飞起来
【8月更文挑战第29天】本文从基本概念入手,通过实战示例、原理解析和高级使用技巧,全面讲解Redis这一高性能键值对数据库。Redis基于内存存储,支持多种数据结构,如字符串、列表和哈希表等,常用于数据库、缓存及消息队列。文中详细介绍了如何在Spring Boot项目中集成Redis,并展示了其工作原理、缓存实现方法及高级特性,如事务、发布/订阅、Lua脚本和集群等,帮助读者从入门到精通Redis,大幅提升应用性能与可扩展性。
47 0

热门文章

最新文章