Linux中redis安装配置及使用详解

一、 Redis基本知识

1.Redis 的数据类型

字符串 , 列表 (lists) , 集合 (sets) , 有序集合 (sorts sets) , 哈希表 (hashs)

2.Redis的特性

()使用ANSI C编写
()遵守BSD协议
()支持网络
()可基于内存亦可持久化
()日志型、Key-Value数据库
通常被称为数据结构服务器,因为其value可以是String,Map,list,set,sorted set

3.特点

支持数据持久化,可以将内存中的数据保存在磁盘,重启时可再次加载使用;
不仅支持简单的KV数据,还提供list、set、zset、hash等数据结构的存储;
支持数据备份,master-slave模式。

4.优势

性能极高。读110000次/s,写81000次/s;
数据类型丰富;
所有操作都是原子性,支持对几个操作全并后的原子性执行;
丰富的特性。还迟滞publish/subscribe,通知,key过期等。

5.与其他KV存储的区别

数据结构复杂,支持原子性操作。基于基本数据结构,无需额外抽象;
可以持久化到磁盘。

6.Redis 和 memcache 的区别

()Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等;
()Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储;
()虚拟内存--Redis当物理内存用完时,可以将一些很久没用到的value 交换到磁盘;
()过期策略--memcache在set时就指定,例如set key1 ,即永不过期。Redis可以通过例如expire 设定,例如expire name ;
()分布式--设定memcache集群,利用magent做一主多从;redis可以做一主多从。都可以一主一从;
()存储数据安全--memcache挂掉后,数据没了;redis可以定期保存到磁盘(持久化);
()灾难恢复--memcache挂掉后,数据不可恢复; redis数据丢失后可以通过aof恢复;
()Redis支持数据的备份,即master-slave模式的数据备份;
()应用场景不一样:Redis出来作为NoSQL数据库使用外,还能用做消息队列、数据堆栈和数据缓存等;Memcached适合于缓存SQL语句、数据集、用户临时性数据、延迟查询数据和session等。

二、安装配置

1.关闭防火墙

临时关闭防火墙
systemctl stop firewalld 永久防火墙开机自关闭
systemctl disable firewalld 临时打开防火墙
systemctl start firewalld 防火墙开机启动
systemctl enable firewalld 查看防火墙状态
systemctl status firewalld

2.关闭SELinux

临时关闭SELinux
setenforce 临时打开SELinux
setenforce 查看SELinux状态
getenforce 开机关闭SELinux
编辑/etc/selinux/config文件,如下图,将SELINUX的值设置为disabled。下次开机SELinux就不会启动了。

3.下载redis

Redis官网:http://redis.io/download
Redis中文网:http://www.redis.cn/download.html

4.将下载好的压缩包放到/usr/local目录下或者直接下载

# wget http://download.redis.io/releases/redis-4.0.9.tar.gz
# tar xzf redis-4.0..tar.gz
# ln -s redis-4.0. /home/redis
# cd redis
# make

5.编译完成后,进入Src目录

# cd src
# mkdir /usr/redis
# cp redis-server /usr/redis
# cp redis-benchmark /usr/redis
# cp redis-cli /usr/redis
# cp ../redis.conf /usr/redis
# cd /usr/redis

6.启动服务

# /usr/redis/redis-server /usr/redis/redis.conf
建立软连接
# ln -s /usr/redis/redis-server /usr/bin/redis-server
# ln -s /usr/redis/redis-cli /usr/bin/redis-cli
重新启动
# redis-server /usr/redis/redis.conf
启动成功

7.设置守护进程

将redis.conf中daemonize设置为yes,确保守护进程开启。
sed -i 's#daemonize no#daemonize yes#g' /usr/redis/redis.conf

8.设置开机自启动

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

三、 文件及配置概述

1./usr/local/redis/bin 目录下的几个文件用途

redis-benchmark : Redis 性能测试工具
redis-check-aof : 检查 aof 日志的工具
redis-check-dump : 检查 rdb 日志的工具
redis-cli : 连接用的客户端
redis-server : Redis 服务进程

2.Redis 的配置项解析

daemonize : 如需要在后台运行 , 把该项的值改为 yes
pdifile : 把 pid 文件放在 /var/run/redis.pid , 可以配置到其他地址
bind : 指定 Redis 只接收来自该 IP 的请求 , 如果不设置 , 那么将处理所有请求 , 在生产环节中最好设置该项
port : 监听端口 , 默认为
timeout : 设置客户端连接时的超时时间 , 单位为秒
loglevel : 等级分为 级 , debug , revbose , notice 和 warning , 生产环境下一般开启 notice
logfile : 配置 log 文件地址 , 默认使用标准输出 , 即打印在命令行终端的端口上
database : 设置数据库的个数 , 默认使用的数据库是
save : 设置 redis 进行数据库镜像的频率
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 将使用的最大物理内存的大小 , 默认为
vm_page_size : 设置虚拟内存页的大小
vm_pages : 设置交换文件的总的page数量
vm_max_thrrads : 设置 vm IO 同时使用的线程数量

四、错误解决办法

1.客户端连接时 , 提示 DENIED Redis is running in protected mode because protected mode is enabled...

将配置文件里的 protected mode改为了 no , 原本是 yes

2.客户端连接时 , 提示 Connection refused...

可能是配置文件里面的 bind 字段设置了入口 IP , 将其注释

Linux中redis安装配置及使用详解的更多相关文章

  1. linux中pip安装步骤与使用详解

    pip类似RedHat里面的yum,安装软件非常方便.本节详细介绍pip的安装.以及使用方法,希望文章对各位了解pip的安装与使用带来帮助. 1.pip下载安装1.1 pip下载  代码如下 复制代码 ...

  2. (转载)linux中设备文件配置程序udev详解

    如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略.在Linux早期,设备文件仅仅是是一些带有适当的属性集的普通文件,它由mknod命令创建,文件存放在/dev ...

  3. Redis安装配置及使用详解

    1. 简介-两个程序通信,除了socket就是文件了,但是通过磁盘效率太低了,之前的RabbitMQ只是实现了消息的传递,现在要是实现数据的共享(一份数据,可供多人查阅),可以通过缓存实现,一个中间商 ...

  4. webpack安装配置使用教程详解

    webpack安装配置使用教程详解 www.111cn.net 更新:2015-09-01 编辑:swteen 来源:转载 本文章来为各位详细的介绍一下关于webpack安装配置使用教程吧,这篇文章对 ...

  5. linux上redis安装配置及其防漏洞配置及其攻击方法

    Linux上redis安装: 需先在服务器上安装yum(虚拟机可使用挂载的方式安装) 安装配置所需要的环境运行指令:  yum -y install gcc 进入解压文件执行make 指令进行编译 执 ...

  6. Linux学习—redis安装配置及远程连接

    1.下载安装包并解压 进入文件夹/usr/local cd /usr/local 下载redis安装包: wget http://download.redis.io/releases/redis-.t ...

  7. centos7中redis安装配置

    1.官网下载对应版本,本例以5.0.5为例 2.tar -zxvf xxxxx 并mv到安装目录 3.进入redis-5.0.5目录下,执行编译命令 make 4.编译完成后,经redis安装到指定目 ...

  8. Linux中redis主从配置

    假设要在6380开启redis 1.添加配置文件:复制redis.conf为redis_6380.conf 2.修改配置文件:修改redis_6380.conf中port.pidfile 3.防火墙: ...

  9. Linux中JDK安装配置

    安装jdk 1)下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html 我选择jdk1.8版本 2)上传至服务 ...

随机推荐

  1. Otto.de:我为什么选择分布式垂直架构

    Otto.de:我为什么选择分布式垂直架构 http://cloud.51cto.com/art/201510/493867.htm

  2. 2019清明期间qbxt培训qwq

    4.4上午:数学基础 (qwq整成word和cpp了,它居然不能直接把文档附上来) part 1:高精度运算 高精加和高精减就不说了,之前写过博客了qwq,讲一讲高精乘和高精除吧. 1.高精度乘法(不 ...

  3. SWUST OJ(957)

    逆置单链表 #include <stdio.h> #include <stdlib.h> typedef struct LNode { char data; struct LN ...

  4. activiti 快速入门--组任务(candidate users)分配(6)

    http://blog.csdn.net/u011320740/article/details/53018040

  5. 原生sql实现restful接口调用

    index.php <?php include './Request.php';include './Response.php';//获取数据$data=Request::getRequest( ...

  6. JS调用webservice服务

    webservice服务 webservice服务代码 using System; using System.Collections.Generic; using System.Linq; using ...

  7. 用图片作为label,for属性IE下不起作用

    IE浏览器存在一个BUG,当你使用label的for属性达到点击label使对应的表单元素聚焦,label中的内容为图片时,IE浏览器下不起作用. 例如: <input type="c ...

  8. cocos2d-x学习笔记(贪吃蛇代码)

    方向键控制蛇运动:上↑:右→:下↓:左←. 百度网盘链接:https://pan.baidu.com/s/1c1FSXaw 提取密码:u1kr

  9. virsh命令和虚拟机克隆

    virsh 命令 virsh list  //列出正在运行虚拟机 virsh list --all     //列出所有虚拟机 virsh  console sunhao-1  //进入名字为sunh ...

  10. 团队-爬虫豆瓣top250项目-模块开发过程

    项目托管平台地址:https://github.com/gengwenhao/GetTop250.git 开发模块功能: "get_info()单个页面的爬取"功能,开发时间:15 ...