一,先在官网下载源码包:https://redis.io/download

二,解压源码包,并cd到解压后的目录;

三,执行make MALLOC=libc

接着cd src【解压的目录里有这个子目录】,执行:

make install PREFIX=/usr/local/redis-5.0.6【注意,需要当前用户有/usr/local目录的写权限】

成功标志:make install后会出现五行其他颜色的INSTALL install;

注意:make编译如果失败,因为没有安装gcc服务(这里补充,还可能导致出错的地方是没有安装jemalloc或make时用make MALLOC=libc【这里用的是后者可以编译通过】)

四,cd ..到之前的解压目录,然后mkdir /usr/local/redis-5.0.6/etc,然后执行mv redis.conf /usr/local/redis-5.0.6/etc/

五,此时redis已经安装完毕,cd到安装后的redis目录,然后vi /etc/redis.conf,做以下修改:

1.将daemonize no改成daemonize yes

2.将绑定的127.0.0.1的改成:bind 0.0.0.0【当然这个看个人】

3.也可以修改绑定端口不用默认的,一定程度降低被攻击风险:port 6489【默认是port 6379】,如果改了pidfile记得也改下;

4.logfile改成:logfile /var/log/redis/redis.log【注意,目录需要自己手动创建,且启动redis的用户要有/var/log/redis目录的写权限

5.requirepass xxx【默认是注释状态,这个是配置访问redis需要的认证密码】

六,启动redis服务可以用:/usr/local/redis-5.0.6/bin/redis-server /usr/local/redis-5.0.6/etc/redis.conf

让redis开机自启方式:

vim /etc/rc.local
加入
/usr/local/redis-5.0.6/bin/redis-server /usr/local/redis-5.0.6/etc/redis.conf
 

七,客户端链接

/usr/local/redis-5.0.6/bin/redis-cli  

八,停止服务

/usr/local/redis-5.0.6/bin/redis-cli shutdown
或者
pkill redis-server

九,/usr/local/redis-5.0.6/bin目录下的几个关键文件

redis-benchmark:redis性能测试工具

redis-check-aof:检查aof日志的工具

redis-check-dump:检查rdb日志的工具

redis-cli:连接用的客户端

redis-server:redis服务进程

十,conf 配置项介绍

daemonize:如需要在后台运行,把该项的值改为yes

pidfile:把pid文件放在/var/run/redis.pid,可以配置到其他地址(我那是redis_6379.pid)

bind:指定redis只接收来自该IP的请求,如果不设置,那么将处理所有请求,在生产环节中最好设置该项(补充,这个解释不好,其实就是redis启动时会绑定的ip,而且默认是127.0.0.1也就是说只接受本地主机的请求,0.0.0.0才是接受本机所有网卡ip的请求或者注释bind=...那么redis默认绑定0.0.0.0)

port:监听端口,默认为6379

timeout:设置客户端连接时的超时时间,单位为秒

loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下一般开启notice

logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上

database:设置数据库的个数,默认是"16个数据库",默认使用的数据库是下标为0的那个(第一个)【一般而言不同业务的缓存可以放在不同下标的db里】

save:设置redis进行数据库镜像的频率(即将redis的内存数据key-value存储到本地db里,这个跟redis里有多少key-value被修改也有关)

rdbcompression:在进行镜像备份时,是否进行压缩

dbfilename:镜像备份文件的文件名

dir:数据库镜像备份的文件放置的路径

slaveof:设置该数据库为其他数据库的从数据库

masterauth:当主数据库连接需要密码验证时,在这里设定

requirepass:设置客户端连接后进行任何其他指定前需要使用的密码

maxclients:限制同时连接的客户端数量

maxmemory:设置redis能够使用的最大内存

appendonly:开启appendonly模式后,redis会把每一次所接收到的写操作都追加到appendonly.aof文件中,当redis重新启动时,会从该文件恢复出之前的状态

appendfsync:设置appendonly.aof文件进行同步的频率

vm_enabled:是否开启虚拟内存支持

vm_swap_file:设置虚拟内存的交换文件的路径

vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0

vm_page_size:设置虚拟内存页的大小

vm_pages:设置交换文件的总的page数量

vm_max_thrrads:设置vm IO同时使用的线程数量

Debian系Linux源码安装Redis5.0.6的更多相关文章

  1. CentOS7源码安装Redis5.0.4非关系型数据库

    源码安装redis-5.0.4 一. 下载redis 1. 需要连接网络 二. 案例(另一种安装方法) [root@localhost ~]# wget http://download.redis.i ...

  2. linux 源码安装php7.0 yum

    PHP7和HHVM比较PHP7的在真实场景的性能确实已经和HHVM相当, 在一些场景甚至超过了HHVM.HHVM的运维复杂, 是多线程模型, 这就代表着如果一个线程导致crash了, 那么整个服务就挂 ...

  3. mysql-5.5 for linux源码安装

    mysql-5.5 for linux源码安装 1.使用Yum安装依赖软件包 # yum install -y gcc gcc-c++ gcc-g77 autoconf automake bison  ...

  4. Linux源码安装JDK1.8

    Linux源码安装Java 1.到官网下载 jdk-8u131-linux-x64.tar.gz 官网地址:http://www.oracle.com/technetwork/java/javase/ ...

  5. 源码安装 qemu-2.0.0 及其依赖 glib-2.12.12

    源码安装qemu-2.0.0 下载源代码并解压 http://wiki.qemu-project.org/download/qemu-2.0.0.tar.bz2 .tar.gz 编译及安装: cd q ...

  6. Linux 6.8 源码安装MySQL8.0

    搭建环境说明: 系统版本:Red Hat Enterprise Linux Server release 6.8 (Santiago) 内核版本:Linux 2.6.32-642.el6.x86_64 ...

  7. debian系linux墙内安装安全工具集

    虽然有kali linux这样集合了很多安全工具的操作系统,但是kali的软件源相对老旧,没有ubuntu等主流debian系统丰富,kali默认使用su权限进入图形化界面也是违背linux权限机制的 ...

  8. CentOS下源码安装vsftpd-3.0.0,并设置指定用户访问指定目录(附带完整配置文件)

    1.卸载系统已经存在的ftp服务器 因为是源码安装,所以不能通过rpm -qa的方式查看是否已经安装ftp服务器,可以通过find / | grep vsftp*方式查看系统中存在哪些与vsftpd相 ...

  9. Linux 源码安装 FFmpeg

    加班次数频繁,已经快一年没有写博了.由于此次在项目中使用到了 FFmpeg 来处理音视频,顾记录下在 Linux 系统中源码安装 FFmpeg 以便不时之需. 1. 安装 yasm yasm 是一个汇 ...

随机推荐

  1. RabbitMQ简单介绍+Windows环境安装

    文章目录 1.RabbitMQ简介2.RabbitMQ与其他MQ有什么不同3.RabbitMQ环境安装3.1 安装erlang3.2 安装rabbitmq-server4. RabbitMQ管理平台介 ...

  2. 20-2 树莓派搭建服务器 Tornado Web服务器

    Drive.google.com/drive/folders/1ahbeoEHkjxoo4NV1wReOmpoRWbl448z- 1.Tornado简介 Tornado一款使用 Python 编写的, ...

  3. [Algorithm] 387. First Unique Character in a String

    Given a string, find the first non-repeating character in it and return it's index. If it doesn't ex ...

  4. Presto Infrastructure at Lyft

    转载一篇关于 lyft presto 平台建设的实践 Overview Early in 2017 we started exploring Presto for OLAP use cases and ...

  5. Xamarin NuGet 缓存包导致 already added : Landroid/support/annotation/AnimRes 问题解决方案

    在VS中打开您遇到问题的解决方案. 转到工具> NuGet包管理器>包管理器设置 - >常规,然后点击“清除所有NuGet缓存” 这应该返回一个错误,因为你有一个项目打开,但如果没有 ...

  6. SpringBoot 的一些学习资源

    很多Java Web开发者目前常用的技术还是SpringBoot,想要工作效率更,在刚入门不久时有必要全面了解一下它的功能特性,而高效学习的方法,除了在官网学习外,还可以看下网上已有的不错的教程.刚看 ...

  7. 中国大学生计算机系统与程序设计竞赛 CCF-CCSP-2017 串行调度(serial)

    串行调度(serial) 除等价条件, 根据题意设置限制条件,然后求字典序最小拓扑序. 简洁版 #include<bits/stdc++.h> using namespace std; ; ...

  8. lintcode-1038. 珠宝和石头

    题目描述 给定字符串J代表是珠宝的石头类型,而S代表你拥有的石头.S中的每个字符都是你拥有的一个石头. 你想知道你的石头有多少是珠宝. J中的字母一定不同,J和S中的字符都是字母. 字母区分大小写,因 ...

  9. ssh 可以登录但是 sftp 不能登录的解决办法

    将 /etc/ssh/sshd_config 中的 Subsystem      sftp    /usr/libexec/openssh/sftp-server 改为 Subsystem       ...

  10. 终于明白为什么要加 final 关键字了!

    阅读本文大概需要 2.8 分钟. 来源: www.jianshu.com/p/acc8d9a67d0c 在开发过程中,由于习惯的原因,我们可能对某种编程语言的一些特性习以为常,特别是只用一种语言作为日 ...