最近一直在学习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
安装到这里,就已经大功告成,若安装过程中小伙伴有问题,可跟我咨询。

在Linux环境安装redis步骤,且设置开机自动启动redis的更多相关文章

  1. centos安装redis,并设置开机自动启动项

    安装Redis 1.下载.解压.编译.安装 下载.解压 https://redis.io/download 官网下载redis的*.tar.gz安装包.版本可根据自己需要下载. tar -zxvf r ...

  2. Linux环境安装Nginx步骤

    centos7平台编译环境使用如下指令安装: 1. 安装make: yum -y install gcc automake autoconf libtool make 2. 安装g++: yum -y ...

  3. Linux环境安装PostgreSQL-10.1

    转载自:https://www.cnblogs.com/LinBug/p/8082790.html Linux环境安装PostgreSQL-10.1   环境及资源 Linux版本:CentOS re ...

  4. Linux下安装jdk8步骤详述(转载)

    Linux下安装jdk8步骤详述 原文地址:http://www.cnblogs.com/shihaiming/p/5809553.html 作为Java开发人员,在Linux下安装一些开发工具是必备 ...

  5. Linux 环境安装 Node、nginx、docker、vsftpd、gitlab

    Linux 环境安装 centos7 # 更新yum yum update -y 0. 防火墙 firewalld 新入的JD云服务器,发现防火墙默认是关闭的. # 查看防火墙状态 systemctl ...

  6. Linux环境安装Nexus

    Linux环境安装Nexus Nexus可以做Maven私服,私服不是Maven的核心概念,它仅仅是一种衍生出来的特殊的Maven仓库.有三种专门的Maven仓库管理软件可以用来帮助大家建立私服: N ...

  7. Linux环境安装.NET运行环境

    Linux环境安装.NET运行环境 Linux环境安装.NET运行环境 1. 构建编译环境: (1) sudo apt-get install build-essential (2) sudo apt ...

  8. Linux环境安装xmapp(PHP-Mysql集成环境)

    xmapp是很多初学者使用的PHP环境集成包,用yum在linux安装的php和mysql版本现在都很低,xmapp可以解决这个问题,下面我们直接进入正题,安装一个php集成环境. 我使用的是vm虚拟 ...

  9. linux新安装后root密码设置

    linux在安装过程中未设置root密码 导致在使用中无法su 解决方法是设置root密码: 输入: sudo passwd root [sudo] password for you: ---> ...

随机推荐

  1. pycharm中无法导入pip安装的包

    https://blog.csdn.net/mdxiaohu/article/details/82430060 2020.1.20 练习通过python操作数据库的时候需要导入一个包,因为看代码写的是 ...

  2. ES6的模块暴露与模块引入

    ES6的模块暴露和引入可以让我们实现模块化编程,以下列出ES6的几种模块暴露与引入的方式与区别. 1.ES6一共有三种模块暴露方法 多行暴露 模块1:module1.js //多行暴露 export ...

  3. js 实现排序算法 -- 插入排序(Insertion Sort)

    原文: 十大经典排序算法(动图演示) 插入排序 插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法.它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描, ...

  4. 插入排序算法&算法分析

  5. MFC中文件对话框类CFileDialog详解及文件过滤器说明

    当前位置 : 首页 » 文章分类 :  开发  »  MFC中文件对话框类CFileDialog详解及文件过滤器说明 上一篇 利用OpenCV从摄像头获得图像的坐标原点是在左下角 下一篇 Word中为 ...

  6. Java中的成员内部类

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.java * 作者:常轩 * 微信公众号:Worldh ...

  7. 最强加密算法?AES加解密算法Matlab和Verilog实现

    目录 背景 AES加密的几种模式 基本运算 AES加密原理 Matlab实现 Verilog实现 Testbench 此本文首发于公众号[两猿社],重点讲述了AES加密算法的加密模式和原理,用MATL ...

  8. Java入门教程十三(多线程)

    线程的概念 单纯种以一个任务完成以后再进行下一个任务的模式进行,这样下一个任务的开始必须等待前一个任务的结束,只有一个任务完成后才能进行下一个任务.Java 语言提供了并发机制,允许开发人员在程序中执 ...

  9. 压力测试(九)-Jmeter压测课程总结和架构浅析

    安装常见问题 1.问题 [root@iZwz95j86y235aroi85ht0Z bin]# ./jmeter-server Created remote object: UnicastServer ...

  10. 【WPF学习】第五十四章 关键帧动画

    到目前为止,看到的所有动画都使用线性插值从起点到终点.但如果需要创建具有多个分段的动画和不规则移动的动画.例如,可能希望创建一个动画,快速地将一个元素滑入到视图中,然后慢慢地将它移到正确位置.可通过创 ...