linux安装redis完整步骤

安装:
1.获取redis资源
  wget http://download.redis.io/releases/redis-4.0.8.tar.gz

2.解压
  tar xzvf redis-4.0.8.tar.gz

3.安装
  cd redis-4.0.8
  make
  cd src
  make install PREFIX=/usr/local/redis

4.移动配置文件到安装目录下
  cd ../
  mkdir /usr/local/redis/etc
  mv redis.conf /usr/local/redis/etc

5.配置redis为后台启动
  vi /usr/local/redis/etc/redis.conf //将daemonize no 改成daemonize yes

6.将redis加入到开机启动
  vi /etc/rc.local //在里面添加内容:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf (意思就是开机调用这段开启redis的命令)

7.开启redis
  /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

常用命令  
  redis-server /usr/local/redis/etc/redis.conf //启动redis
  pkill redis //停止redis

  卸载redis:
    rm -rf /usr/local/redis //删除安装目录
    rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本
    rm -rf /root/download/redis-4.0.4 //删除redis解压文件夹

让外网能够访问redis
    a.配置防火墙: firewall-cmd --zone=public --add-port=6379/tcp --permanent(开放6379端口)
          systemctl restart firewalld(重启防火墙以使配置即时生效)
     查看系统所有开放的端口:firewall-cmd --zone=public --list-ports

    
    b.此时 虽然防火墙开放了6379端口,但是外网还是无法访问的,因为redis监听的是127.0.0.1:6379,并不监听外网的请求。
      (一)把文件夹目录里的redis.conf配置文件里的bind 127.0.0.1前面加#注释掉
      (二)命令:redis-cli连接到redis后,通过 config get daemonize和config get protected-mode 是不是都为no,如果不是,就用config set 配置名 属性 改为no。

redis.conf文件
# bind 127.0.0.1
daemonize no
protected-mode no
# redis在最终目标上移动临时数据库文件时出错 将dir ./ 修改为redis配置文件所在目录:/usr/local/redis/etc/ 
# redis的持久化机制RDB先将内存中的数据集写入临时文件(temp-pid.rdb),写成功后再替换之前的文件(dump.rdb),而现在写入临时文件出错,数据保存不了,导致程序崩溃
dir /usr/local/redis/etc/

# RDB和AOF持久化
#redis有两种持久化方式:一种是RDB持久化(原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化)
#            一种是AOF持久化(原理是将Reids的操作日志以追加的方式写入文件)
#RDB是默认开启的,AOF需要修改配置文件来开启
appendonly yes
appendfilename "appendonly.aof"

12493:M 27 Dec 19:42:23.095 * 10 changes in 300 seconds. Saving...
12493:M 27 Dec 19:42:23.095 * Background saving started by pid 7905
7905:C 27 Dec 19:42:23.106 # Error moving temp DB file temp-7905.rdb on the final destination crontab (in server root dir /etc): Operation not permitted
12493:M 27 Dec 19:42:23.196 # Background saving error

Redis持久化失败报错
错误:
WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1'
to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. [7679] 15 Jan 00:27:35.287 *
DB loaded from disk: 19.629 seconds

解决方案:在Linux系统设置一个参数(vm.overcommit_memory)即可解决。
  编辑 sysctl.conf 配置文件:vim /etc/sysctl.conf
    vm.overcommit_memory = 1
  使配置文件生效:sysctl -p
  最后重启redis

配置之后的控制台日志打印如下:
[root@hz-auto-test-test5-02 etc]$/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
18679:C 27 Dec 19:52:06.898 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
18679:C 27 Dec 19:52:06.898 # Redis version=4.0.8, bits=64, commit=00000000, modified=0, pid=18679, just started
18679:C 27 Dec 19:52:06.898 # Configuration loaded
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 4.0.8 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 18679
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'

18679:M 27 Dec 19:52:06.900 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
18679:M 27 Dec 19:52:06.900 # Server initialized
18679:M 27 Dec 19:52:06.900 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
18679:M 27 Dec 19:52:06.900 * Ready to accept connections
18679:M 27 Dec 19:57:07.096 * 10 changes in 300 seconds. Saving...
18679:M 27 Dec 19:57:07.096 * Background saving started by pid 6584
6584:C 27 Dec 19:57:07.111 * DB saved on disk
6584:C 27 Dec 19:57:07.112 * RDB: 0 MB of memory used by copy-on-write
18679:M 27 Dec 19:57:07.196 * Background saving terminated with success
18679:M 27 Dec 20:01:20.187 * 10000 changes in 60 seconds. Saving...
18679:M 27 Dec 20:01:20.187 * Background saving started by pid 24886
24886:C 27 Dec 20:01:20.224 * DB saved on disk
24886:C 27 Dec 20:01:20.225 * RDB: 0 MB of memory used by copy-on-write
18679:M 27 Dec 20:01:20.287 * Background saving terminated with success

linux安装redis完整步骤的更多相关文章

  1. linux 安装redis 完整步骤

    最近在linux服务器上需要安装redis,来存放数据,增加用户访问数据的速度,由于是第一次安装,于是在百度上搜了一篇文章,按照这篇博客,顺利安装好了,因此将博主的文章拷过来记录一下,方便以后使用,也 ...

  2. linux安装redis 完整步骤

    原文连接:https://www.cnblogs.com/lauhp/p/8487029.html 安装: 1.获取redis资源 wget http://download.redis.io/rele ...

  3. linux安装redis详细步骤(系统centos 6.4 )

    1.安装redis 进入安装目录下载: cd  /usr/local/redis wget http://download.redis.io/releases/redis-3.0.7.tar.gz 解 ...

  4. 阿里云Linux服务器安装Redis 完整步骤(包括处理远程连接问题)

    跟随本篇文章步骤,包你成功安装并连接使用. 1.获取redis资源 wget http://download.redis.io/releases/redis-4.0.8.tar.gz 2.解压 tar ...

  5. Linux安装JDK完整步骤

    1.检查一下系统中的jdk版本 [root@localhost software]# java -version 显示: openjdk version "1.8.0_102" O ...

  6. Linux安装Redis步骤和make遇到的坑

    Linux安装Redis服务步骤 1.获取redis资源 ​​​​​​​cd /usr/local wget https://mirrors.huaweicloud.com/redis/redis-6 ...

  7. Linux安装redis服务器和部署

    Linux安装redis和部署 第一步:下载安装包 wget http://download.redis.io/releases/redis-5.0.5.tar.gz 访问https://redis. ...

  8. Linux安装Anaconda3完整教程

    Linux安装Anaconda3完整教程 欢迎关注H寻梦人公众号 相关链接 官方安装Anaconda3教程 [手把手教你]如何在Linux系统搭建jupyter notebook CentOS8.2安 ...

  9. Linux安装redis服务器

    Linux安装redis服务器 初次接触,这里简单的说下我遇到的情况以及安装方法,当然也是参考了诸位大神的. 确定虚拟机的主机IP. 1)首先需要一个linux虚拟机,确定虚拟机的ip ,输入命令:# ...

  10. Linux 安装Redis<准备>(使用Mac远程访问)

    阅读本文需要一定的Linux基础 一 Redis简介 redis是用c语言编写的一款开源的高性能键值对(key-value)数据库 它通过提供多种键值数据类型来适应不同场景下的存储需求 二 Redis ...

随机推荐

  1. [GPT] 用 document.querySelector('.xxx') 选择下级的第二个 div 要怎么写

      要选择类名为 .xxx 的元素下的第二个子<div>元素,可以将 querySelectorAll()方法与CSS选择器一起使用. 以下是一个示例: const secondChild ...

  2. [FAQ] Windows 终端 `git diff` 出现 LF 空格 ^M 符号, 处理方式

      可能是终端内的换行配置和 IDE 当中的不一致. 比如 PHPStorm 的: Git 终端使用 git config core.autocrlf 查看是 true 还是 false. 是 tru ...

  3. Spirng 当中 Bean的作用域

    Spirng 当中 Bean的作用域 @ 目录 Spirng 当中 Bean的作用域 每博一文案 1. Spring6 当中的 Bean的作用域 1.2 singleton 默认 1.3 protot ...

  4. 从原始边列表到邻接矩阵Python实现图数据处理的完整指南

    本文分享自华为云社区<从原始边列表到邻接矩阵Python实现图数据处理的完整指南>,作者: 柠檬味拥抱. 在图论和网络分析中,图是一种非常重要的数据结构,它由节点(或顶点)和连接这些节点的 ...

  5. 【简说Python WEB】用户身份验证--Werkzeug

    目录 [简说Python WEB]用户身份验证--Werkzeug Flask的security扩展 使用Werkzeug生成密码散列值 系统环境:Ubuntu 18.04.1 LTS Python使 ...

  6. ansible系列(31)--ansible实战之部署WEB集群架构(1)

    目录 1. WEB集群环境说明 2. ansible部署WEB集群实现思路 3. ansible基础环境部署 1. WEB集群环境说明 WEB集群环境说明如下: 客户端:模拟外网主机,地址:192.1 ...

  7. ansible(8)--ansible的hostname模块

    1. hostname模块 功能:管理远程主机的主机名. 示例一:更改192.168.20.22的主机名为nginx01: [root@xuzhichao ~]# ansible 192.168.20 ...

  8. PHP常用排序算法01——冒泡、插入

    对于排序算法,相信学计算机的同学都不会陌生.今天我们就来复习下常见的两个排序,适合小规模数据的排序算法:冒泡(bubbleSort)和插入(insertionSort). PS:对排序等算法还不太了解 ...

  9. C# 使用 运算符重载 隐式转换 对Point进行加减计算

    运算符重载方便了我们对自定义类型(自定义的类或者结构体)的计算. 运算符重载关键字 operator. 除了这些运算符不支持:x.y.f(x).new.typeof.default.checked.u ...

  10. Redis内存容量评估

    业务侧申请redis服务器资源时,需要事先对redis容量做一个大致评估,之前的容量评估公式基本只是简单的 (key长度 value长度)* key个数,误差较大,后期经常需要进行缩扩容调整,因此提出 ...