一.Redis配置文件详解

1.通用配置

daemonize no  # 默认情况下,redis并不是以daemon形式来运行的。通过daemonize配置项可以控制redis的运行形式

pidfile /path/to/redis.pid  #当以daemon形式运行时,redis会生成一个pid文件,默认会生成在/var/run/redis.pid

bind 192.168.1.2 10.8.4.2  # 指定绑定的ip,可以有多个

port 6379  #指定监听端口

unixsocket /tmp/redis.sock  #也可以监听socket

unixsocketperm 755  #当监听socket时可以指定权限为755

timeout 0  #当一个redis-client一直没有请求发向server端,那么server端有权主动关闭这个连接,可以通过timeout来设置“空闲超时时限”,0表示永不关闭。

tcp-keepalive 0  #TCP连接保活策略,可以通过tcp-keepalive配置项来进行设置,单位为秒,假如设置为60秒,则server端会每60秒向连接空闲的客户端发起一次ACK请求,以检查客户端是否已经挂掉,对于无响应的客户端则会关闭其连接。如果设置为0,则不会进行保活检测。

loglevel notice  # 日志级别,有四种debug, verbose, notice, warning

logfile “”  #定义日志路径,

syslog-ident redis  #如果希望日志打印到syslog中,通过syslog-enabled来控制。另外,syslog-ident还可以让你指定syslog里的日志标志。

syslog-facility local0  # 指定syslog的设备,可以是USER或者local0-local7

databases 16  #设置数据库的总数量

2.Redis快照配置(rdb持久化)

save 900 1 #表示每15分钟且至少有1个key改变,就触发一次持久化

save 300 10 #表示每5分钟且至少有10个key改变,就触发一次持久化

save 60 10000 #表示每60秒至少有10000个key改变,就触发一次持久

save “” #这样可以禁用rdb持久化

stop-writes-on-bgsave-error yes #rdb持久化写入磁盘避免不了会出现失败的情况,默认一旦出现失败,redis会马上停止写操作。如果你觉得无所谓,那就可以使用该选项关闭这个功能。

rdbcompression yes #是否要压缩

rdbchecksum yes #是否进行数据校验

dbfilename dump.rdb #定义快照文件的名字

dir ./ #定义快照文件储存路劲

3.Redis安全相关配置

requirepass aminglinux #设置redis-server的密码

rename-command CONFIG aminglinux.config #将CONFIG命令更名为aminglinux.config,这样可以避免误操作,但如果使用了AOF持久化,建议不要启用该功能

rename-command CONFIG “” #也可以后面定义为空,这样就禁掉了该CONFIG命令

4.Redis限制相关配置

maxclients 10000 #限制最大客户端连接数

maxmemory <bytes> #设定最大内存使用数,单位是byte

maxmemory-policy volatile-lru #指定内存移除规则

maxmemory-samples 3 #LRU算法和最小TTL算法都并非是精确的算法,而是估算值。所以你可以设置样本的大小。假如redis默认会检查三个key并选择其中LRU的那个,那么你可以改变这个key样本的数量。

5.Redis AOF持久化相关配置

appendonly no #如果是no,则开启aof持久化

appendfilename “appendonly.aof” # 指定aof文件名字

appendfsync everysec #指定fsync()调用模式,有三种no(不调用fsync),always(每次写都会调用fsync),everysec(每秒钟调用一次fsync)。第一种最快,第二种数据最安全,但性能会差一些,第三种为这种方案,默认为第三种。

no-appendfsync-on-rewrite no # 设置yes,可避免当写入量非常大时的磁盘io阻塞

auto-aof-rewrite-percentage 10 #规定什么情况下会触发aof重写。该值为一个比例,10表示当aof文件增幅达到10%时则会触发重写机制。

uto-aof-rewrite-min-size 64mb #重写会有一个条件,就是不能低于64Mb

6.Redis 慢日志相关配置

针对慢日志,你可以设置两个参数,一个是执行时长,单位是微秒,另一个是慢日志的长度。当一个新的命令被写入日志时,最老的一条会从命令日志队列中被移除。

slowlog-log-slower-than 10000 #慢于10000ms则记录日志

slowlog-max-len 128 #日志长度

二、Redis 主从配置

配置:

两台服务器: master (192.168.31.105) 和 slave (192.168.31.112) 分别按照之前介绍的步骤安装好redis并启动

master 配置文件不用动

slave 配置文件上加一行

slaveof  192.168.31.105 6379

masterauth passwd //如果主上设置了密码,要加这行

分别启动master和slave

测试:

master上: redis-cli>set k1 v1>get k1"v1"

slave上: redis-cli>get k1"v1"

Redis主从其他相关配置:

slave-read-only yes //让从只读

repl-ping-slave-period 10 //设置slave向master发起ping的频率,每10s发起一次

repl-timeout 60 //设置slave ping不通master多少s后就超时

repl-disable-tcp-nodelay no //是否开启tcp_nodelay,开启后将会使用更少的带宽,但会有延迟,所以建议关闭

repl-backlog-size 1mb //同步队列的长度,backuplog是master的一个缓冲区,主从断开后,master会先把数据写到缓冲区,slave再次连接会从缓冲区中同步数据

repl-backlog-ttl 3600 //主从断开后,缓冲区的有效期,默认1小时

slave-priority 100 //多个slave是可以设置优先级的,数值越小优先级越高,应用于集群中,支持slave切换为master,优先级最高的才会切换

min-slaves-to-write 3 //和下面的一起使用,它的意思是master发现有超过3个slave的延迟高于10s,那么master就会暂时停止写操作。这两个数值任何一个为0,则关闭该功能,默认第一数值是0。

min-slaves-max-lag 10

Linux-NoSQL之Redis(二)的更多相关文章

  1. NoSQL之Redis高级实用命令详解--安全和主从复制

    Android IOS JavaScript HTML5 CSS jQuery Python PHP NodeJS Java Spring MySQL MongoDB Redis NOSQL Vim ...

  2. 【NoSql】Redis

    [NoSql]Redis 一. 文档 1. 官网 2. Windows 安装包 3. C# Driver a. ServiceStack.Redis 最新版本是收费的 b. StackExchange ...

  3. linux 下安装redis以及php Redis扩展

    [php] view plaincopy在CODE上查看代码片派生到我的代码片 linux 下安装redis以及php Redis扩展 环境配置: centos6. nginx/ php/ mysql ...

  4. Linux Redis 重启数据丢失解决方案,Linux重启后Redis数据丢失解决方

    Linux Redis 重启数据丢失解决方案,Linux重启后Redis数据丢失解决方案 >>>>>>>>>>>>>> ...

  5. NoSQL:redis缓存数据库

    一 Redis介绍 Redis和Memcached类似,也属于key-value nosql 数据库 Redis官网redis.io, 当前最新稳定版4.0.1 和Memcached类似,它支持存储的 ...

  6. Linux 下的 Redis 安装 && 启动 && 关闭 && 卸载

    转自https://blog.csdn.net/zgf19930504/article/details/51850594 Redis 在Linux 和 在Windows 下的安装是有很大的不同的,和通 ...

  7. Linux Redis安装,Linux如何安装Redis,Linux Redis自动启动,Redis开机启动

    Linux Redis安装,Linux如何安装Redis,Linux Redis自动启动,Redis开机启动 >>>>>>>>>>>& ...

  8. Linux 下安装 Redis server

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/defonds/article/details/30047611         本文简介了 Linu ...

  9. Windows环境和Linux环境下Redis主从复制配置

    Windows环境下和Linux环境下配置Redis主从复制基本上一样,都是更改配置文件.Windows环境下修改的配置文件是:redis.windows.conf.redis.windows-ser ...

  10. linux中的redis缓存服务器

    Linux中的Redis缓存服务器 一.Redis基础部分: 1.redis介绍与安装比mysql快10倍以上 *****************redis适用场合**************** 1 ...

随机推荐

  1. android EditText控制最大输入行数

    网络摘抄,仅作记录学习 EditText在android开发中是一个经常用到的基础控件,功能也很强大,限制输入字符类型,字数什么的.但是最近在工作中遇到了需要控制editText最大可输入行数的要求. ...

  2. iOS将Unity导出的Xcode工程导入到另一个Xcode项目, 及常见报错的解决方法

    demo下载地址 http://pan.baidu.com/s/1pLcpKpl 1.Unity导出工程时设置bundle id要与项目一致 2.修改bit code为NO 3.删除Main.stor ...

  3. 如何更好的利用Node.js的性能极限

    通过使用非阻塞.事件驱动的I/O操作,Node.js为构建和运行大规模网络应用及服务提供了很好的平台,也受到了广泛的欢迎.其主要特性表现为能够处理庞大的并且高吞吐量的并发连接,从而构建高性能.高扩展性 ...

  4. EasyDSS视频点播服务器实现的多码率点播功能的说明

    EasyDSS流媒体音视频直播与点播服务器软件,是一套提供一站式的转码.点播.直播.检索.回放.录像下载服务的高性能RTMP/HLS/HTTP-FLV流媒体服务,极大地简化了流媒体相关业务的开发和集成 ...

  5. 如何使用EasyNVR+CDN突破萤石云在直播客户端数量上的限制,做到低成本高性价比的直播

    恰逢五一假期,有以为来自内蒙的用户向我电话咨询,大概的场景是这样的: 目前用户使用的是全套的海康IPC和NVR设备: 海康NVR设备通过设置萤石云平台,由萤石云对外提供直播服务: 萤石云对单个摄像机同 ...

  6. UIApplicationDelegate 各方法回调时机

    本篇文章主要介绍一些UIApplicationDelegate中几个常用的回调方法的调用时机.以帮助你判断哪些方法倒底放到哪个回调中去实现. 1. – (void)applicationDidFini ...

  7. 【python】-- SQLAlchemy操作MySQL

    ORM.SQLAchemy orm英文全称object relational mapping,就是对象映射关系程序,简单来说就是类似python这种面向对象的程序来说一切皆对象,但是使用的数据库却都是 ...

  8. git本地仓库管理远程仓库

    git remote add origin https://xxxxxgit push -u origin master

  9. 学习Filter

    http://www.cnblogs.com/jbelial/archive/2012/07/09/2582638.html Filter 介绍: 它主要用于对用户请求进行预处理,也可以对HttpSe ...

  10. python 发送邮件的两种方式【终极篇】

    一,利用python自带的库 smtplib简单高效 from email.mime.multipart import MIMEMultipart from email.mime.text impor ...