Redis入门很简单之三【常见参数配置】

博客分类:

Redis的一下常见设置都是通过对redis.conf文件进行修改来完成的。
 本文主要介绍了设置访问密码、主从配置、设置数据和日志目录、以及参数调优等方面。
 
 一. 权限设置:
  1. 修改redis.conf文件:

  1. requirepass nick123

2. 客户端登录,需要先进行授权操作,提供密码即可。

  1. auth nick123

二. 主从配置:
        通过设置Redis的配置文件redis.conf可以进行主从(Master-Slave)设置,可以设置一个Redis节点为Master,同时设置一个或多个Slave节点。
  1. 在从节点配置redis.conf即可:设置为主节点的IP和端口

  1. slaveof 192.168.142.12 6379

2. 如果Master节点设置了密码,Slave节点需要同时设置:

  1. masterauth nickxu

3. 说明:
   @ 通过主从设置,可以进行读写分离:通常使用Master节点负责写数据,Slave节点负责读数据、注意Slave节点不能进行写操作。
   @ 数据备份:在Slave节点执行如下命令,然后拷贝dump.rdb即可

  1. bgsave #该命令在后台执行,进行持久化操作,不会影响客户端的链接
  2. save  #如果上述bgsave执行失败,可以使用save进行操作,但是会影响客户端的链接

三. 日志/数据目录:
  1. 创建如下所示的目录:

  1. mkdir -p /opt/redis/logs
  2. mkdir -p /opt/redis/data

2. 对日志进行设置:

  1. loglevel debug                      #日志级别:默认为notice
  2. logfile /opt/redis/logs/redis.log  #日志输出:默认为stdout

3. 设置数据目录:

  1. dbfilename redis.rdb        #默认为dump.rdb
  2. dir /opt/redis/data         #默认为./

四. 设置最大内存:     

  1. maxmemory 256mb

[说明] 
    @ 设置Redis能够占用的最大内存,防止影响性能甚至造成系统崩溃。
    @ 一定要小于物理内存(512MB),留有充足的内存供系统及其他应用程序使用。

五. 备份策略:
   1. 使用快照:snapshot

  1. save 60 1000

[说明] 
    @ 如上的设置,会在60s内、如果有1000个key发生改变就进行持久化。
    @ 可设置多个save选项,默认持久化到dump.rdb。
  2. 文件追加(aof):append-only-file模式。
   @ Redis会将每个接收到的“写命令”通过write函数追加到appendonly.aof文件,重启Redis时通过该文件重建整个数据库。
   @ 由于os内核会缓存write函数所做的“修改”,可以使用fsync函数指定写入到磁盘的方式。

  1. appendonly yes          #启动aof持久化方式
  2. appendfsync always      #对每条“写命令”立即写至磁盘
  3. appendfsync everysec    #默认:每秒写入一次,在性能和可靠性之间的平衡
  4. appendfsync no          #依赖于os,不指定写入时机

3. 两种方式的比较:
    @ 快照方式:性能较好,但是快照间隔期间,如果宕机将造成数据丢失。
    @ AOF模式:影响性能,不容易造成数据丢失。
    @ 如果Redis宕机:重启Redis即可,会自动使用redis.rdb、appendonly.aof恢复数据库。
   4. 主从备份:从数据安全性角度考虑。
    @ 关闭快照功能。
    @ 同时设置主从服务器都为AOF模式。
    @ 说明:如果仅对Slave进行持久化设置,重启时,Slave自动和Master进行同步,全部数据丢失

Redis入门很简单之三【常见参数配置】的更多相关文章

  1. Redis入门很简单之二【常见操作命令】

    Redis入门很简单之二[常见操作命令] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存  Redis提供了丰富的命令,允许我们连接客户端对其进行直接操作.这里简单介绍一 ...

  2. Redis入门很简单之六【Jedis常见操作】

    Redis入门很简单之六[Jedis常见操作] http://www.tuicool.com/articles/vaqABb http://www.cnblogs.com/stephen-liu74/ ...

  3. Redis入门很简单之五【Jedis和Spring的整合】

    Redis入门很简单之五[Jedis和Spring的整合] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存jedisspring  在上一篇文章中,简单介绍了Jedis的 ...

  4. Redis入门很简单之七【使用Jedis实现客户端Sharding】

    Redis入门很简单之七[使用Jedis实现客户端Sharding] 博客分类: NoSQL/Redis/MongoDB redisjedisspringsharding分片 <一>. 背 ...

  5. Redis入门很简单之一【简介与环境搭建】

    Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件  [Redis简介] <一>. NoSQL ...

  6. Redis入门很简单之四【初识Jedis】

    Redis入门很简单之四[初识Jedis] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存jedis  使用Jedis提供的Java API对Redis进行操作,是Red ...

  7. 踢爆IT劣书出版黑幕——由清华大学出版社之《C语言入门很简单》想到的(1)

    1.前言与作者 首先声明,我是由于非常偶然的机会获得<C语言入门很简单>这本书的,绝对不是买的.买这种书实在丢不起那人. 去年这书刚出版时,在CU论坛举行试读推广,我当时随口说了几句(没说 ...

  8. [电子书] 《Android编程入门很简单》

    <Android编程入门很简单>是一本与众不同的Android学习读物,是一本化繁为简,把抽象问题具体化,把复杂问题简单化的书.本书避免出现云山雾罩.晦涩难懂的讲解,代之以轻松活泼.由浅入 ...

  9. 《Mysql 入门很简单》(读后感①)

    下载完整版<Mysql 入门很简单>,点击这里~: http://files.cnblogs.com/files/zhengyeye/MySQL%E5%85%A5%E9%97%A8%E5% ...

随机推荐

  1. kvm动态修改内存和cpu

    https://www.cnblogs.com/nmap/p/6369180.html

  2. Intel processor brand names-Xeon,Core,Pentium,Celeron----Xeon

    http://en.wikipedia.org/wiki/Comparison_of_Intel_processors Processor Series Nomenclature Code Name ...

  3. DB:目录

    ylbtech-DB:目录 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   作者:ylbtech出处:http://ylbtech.cn ...

  4. TypeError: write() argument must be str, not bytes报错

    TypeError: write() argument must be str, not bytes 之前文件打开的语句是: with open('C:/result.pk','w') as fp: ...

  5. Scapy——Scrapy shell的使用

    在开发爬虫的使用,scrapy shell可以帮助我们定位需要爬取的资源 启动Scrapy Shell 在终端中输入以下内容即可启动scrapy shell,其中url是要爬取的页面,可以不设置 sc ...

  6. 关于array_merge()的注意

    array_merge() 函数把两个或多个数组合并为一个数组. 1 如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的). 2 如果数组是数字索引的,则键名会以连续方式重新索引. 2 ...

  7. 日志=>flume=>kafka=>spark streaming=>hbase

    日志=>flume=>kafka=>spark streaming=>hbase 日志部分 #coding=UTF-8 import random import time ur ...

  8. python面试如何以相反顺序展示一个文件的内容?

    >>> for line in reversed(list(open('Today.txt'))): print(line.rstrip())containeritertools D ...

  9. [fw]LINUX中断描述符初始化

    LINUX中断描述符初始化 @CopyLeft by ICANTH,I Can do ANy THing that I CAN THink!~ Author: WenHui, WuHan Univer ...

  10. Java关于线程池的使用

    一.四种线程池创建的方式 Java通过Executors提供四种线程池,分别为: newCachedThreadPool 创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回 ...