1.下载redishttps://redis.io/download

2.解压,编译:

$ tar xzf redis-3.2.9.tar.gz

$ cd redis-3.2.9

$ make

3.src下面现在回出来三个可执行文件,redis-server  redis-cli  redis-benchmark,把他们拷贝出来放在一个指定文件夹下,后续在这个文件下去启动和停止,进去redis,src同路径下有redis.config,同样和上述三个放在一起。

打开redis.config:

bind 127.0.0.1                    #指定Redis只接收来自于该IP 地址的请求,如果不进行设置,那么将处理所有请求,在生产环境中为了安全最好设置该项。3.2版本默认开启

protected-mode yes

port 6379                         #监听端口,默认为6379

tcp-backlog 511

timeout 0                         #设置客户端连接时的超时时间,单位为秒。当客户端在这段时间内没有发出任何指令,那么关闭该连接

tcp-keepalive 300                 #指定TCP连接是否为长连接,"侦探"信号有server端维护。默认为0.表示禁用

################################# GENERAL #####################################

daemonize yes                     #是否已守护的形式启动

supervised no

pidfile /var/run/redis_6379.pid   #pid文件所在位置

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

logfile ""

databases 16                      #设置数据库的个数,可以使用SELECT 命令来切换数据库。默认使用的数据库是0号库。默认16个库

#保存数据快照的频率,即将数据持久化到dump.rdb文件中的频度。用来描述"在多少秒期间至少多少个变更操作"触发snapshot数据保存动作

save 900 1

save 300 10

save 60 10000

默认设置,意思是:

if(在60 秒之内有10000 个keys 发生变化时){

进行镜像备份

}else if(在300 秒之内有10 个keys 发生了变化){

进行镜像备份

}else if(在900 秒之内有1 个keys 发生了变化){

进行镜像备份

}

#当持久化出现错误时,是否依然继续进行工作,是否终止所有的客户端write请求。默认设置"yes"表示终止,一旦snapshot数据保存故障,

那么此server为只读服务。如果为"no",此次snapshot将失败,但下一次snapshot不会受到影响,不过如果出现故障,数据只能恢复到"最近一个成功点"

stop-writes-on-bgsave-error yes

#在进行数据镜像备份时,是否启用rdb文件压缩手段,默认为yes。压缩可能需要额外的cpu开支,不过这能够有效的减小rdb文件的大,有利于存储/备份/传输/数据恢复

rdbcompression yes

rdbchecksum yes

#镜像备份文件的文件名,默认为 dump.rdb

dbfilename dump.rdb

数据库镜像备份的文件rdb/AOF文件放置的路径。这里的路径跟文件名要分开配置是因为Redis 在进行备份时,先会将当前数据库的状态写入到一个临时文件中,

等备份完成时,再把该临时文件替换为上面所指定的文件,而这里的临时文件和上面所配置的备份文件都会放在这个指定的路径当中

dir ./

#当主master服务器挂机或主从复制在进行时,是否依然可以允许客户访问可能过期的数据。在"yes"情况下,slave继续向客户端提供只读服务,

有可能此时的数据已经过期;在"no"情况下,任何向此server发送的数据请求服务(包括客户端和此server的slave)都将被告知"error"

slave-serve-stale-data yes

#slave是否为"只读",强烈建议为"yes"

slave-read-only yes

设置该数据库为其他数据库的从数据库,并为其指定master信息。

slaveof

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

masterauth

slave向指定的master发送ping消息的时间间隔(秒),默认为10

repl-ping-slave-period 10

slave与master通讯中,最大空闲时间,默认60秒.超时将导致连接关闭

# repl-timeout 60

repl-diskless-sync no

repl-diskless-sync-delay 5

slave与master的连接,是否禁用TCP nodelay选项。"yes"表示禁用,那么socket通讯中数据将会以packet方式发送(packet大小受到socket buffer限制)。

可以提高socket通讯的效率(tcp交互次数),但是小数据将会被buffer,不会被立即发送,对于接受者可能存在延迟。"no"表示开启tcp nodelay选项,任何

数据都会被立即发送,及时性较好,但是效率较低,建议设为no

repl-disable-tcp-nodelay no

适用Sentinel模块(unstable,M-S集群管理和监控),需要额外的配置文件支持。slave的权重值,默认100.当master失效后,Sentinel将会从slave列表

中找到权重值最低(>0)的slave,并提升为master。如果权重值为0,表示此slave为"观察者",不参与master选举

slave-priority 100

内存不足"时,数据清除策略,默认为"volatile-lru"。

volatile-lru  ->对"过期集合"中的数据采取LRU(近期最少使用)算法.如果对key使用"expire"指令指定了过期时间,那么此key将会被添加到"过期集合"中。将已经过期/LRU的数据优先移除.如果"过期集合"中全部移除仍不能满足内存需求,将OOM.

allkeys-lru ->对所有的数据,采用LRU算法

volatile-random ->对"过期集合"中的数据采取"随即选取"算法,并移除选中的K-V,直到"内存足够"为止. 如果如果"过期集合"中全部移除全部移除仍不能满足,将OOM

allkeys-random ->对所有的数据,采取"随机选取"算法,并移除选中的K-V,直到"内存足够"为止

volatile-ttl ->对"过期集合"中的数据采取TTL算法(最小存活时间),移除即将过期的数据.

noeviction ->不做任何干扰操作,直接返回OOM异常

另外,如果数据的过期不会对"应用系统"带来异常,且系统中write操作比较密集,建议采取"allkeys-lru"

# maxmemory-policy volatile-lru

默认情况下,redis 会在后台异步的把数据库镜像备份到磁盘,但是该备份是非常耗时的,而且备份也不能很频繁。所以redis 提供了另外一种更加

高效的数据库备份及灾难恢复方式。开启append only 模式之后,redis 会把所接收到的每一次写操作请求都追加到appendonly.aof 文件中,当redis

重新启动时,会从该文件恢复出之前的状态。但是这样会造成appendonly.aof 文件过大,所以redis 还支持了BGREWRITEAOF 指令,对appendonly.aof

进行重新整理。如果不经常进行数据迁移操作,推荐生产环境下的做法为关闭镜像,开启appendonly.aof,同时可以选择在访问较少的时间每天对

appendonly.aof 进行重写一次。另外,对master机器,主要负责写,建议使用AOF,对于slave,主要负责读,挑选出1-2台开启AOF,其余的建议关闭

appendonly no

appendfilename "appendonly.aof"

appendfsync everysec

no-appendfsync-on-rewrite no

auto-aof-rewrite-percentage 100

auto-aof-rewrite-min-size 64mb

aof-load-truncated yes

lua脚本运行的最大时间

lua-time-limit 5000

slowlog-log-slower-than 10000

slowlog-max-len 128

latency-monitor-threshold 0

notify-keyspace-events ""

############################### ADVANCED CONFIG ###############################

#数据量小于等于hash-max-ziplist-entries的用ziplist,大于hash-max-ziplist-entries用hash

hash-max-ziplist-entries 512

#value大小小于等于hash-max-ziplist-value的用ziplist,大于hash-max-ziplist-value用hash。

hash-max-ziplist-value 64

#数据量小于等于list-max-ziplist-entries用ziplist,大于list-max-ziplist-entries用list。

list-max-ziplist-entries 512

#value大小小于等于list-max-ziplist-value的用ziplist,大于list-max-ziplist-value用list。

list-max-ziplist-value 64

#数据量小于等于set-max-intset-entries用iniset,大于set-max-intset-entries用set。

set-max-intset-entries 512

#数据量小于等于zset-max-ziplist-entries用ziplist,大于zset-max-ziplist-entries用zset。

zset-max-ziplist-entries 128

#value大小小于等于zset-max-ziplist-value用ziplist,大于zset-max-ziplist-value用zset。

zset-max-ziplist-value 64

#value大小小于等于hll-sparse-max-bytes使用稀疏数据结构(sparse),大于hll-sparse-max-bytes使用稠密的数据结构(dense)。

一个比16000大的value是几乎没用的,建议的value大概为3000。如果对CPU要求不高,对空间要求较高的,建议设置到10000左右。

hll-sparse-max-bytes 3000

#Redis将在每100毫秒时使用1毫秒的CPU时间来对redis的hash表进行重新hash,可以降低内存的使用。当你的使用场景中,有非常严格的实时性需要,

不能够接受Redis时不时的对请求有2毫秒的延迟的话,把这项配置为no。如果没有这么严格的实时性要求,可以设置为yes,以便能够尽可能快的释放内存。

activerehashing yes

client-output-buffer-limit normal 0 0 0

#对于slave client和MONITER client,如果client-output-buffer一旦超过256mb,又或者超过64mb持续60秒,那么服务器就会立即断开客户端连接。

client-output-buffer-limit slave 256mb 64mb 60

#对于pubsub client,如果client-output-buffer一旦超过32mb,又或者超过8mb持续60秒,那么服务器就会立即断开客户端连接。

client-output-buffer-limit pubsub 32mb 8mb 60

#redis执行任务的频率为1s除以hz。

hz 10

#在aof重写的时候,如果打开了aof-rewrite-incremental-fsync开关,系统会每32MB执行一次fsync。这对于把文件写入磁盘是有帮助的,可以避免过大的延迟峰值

aof-rewrite-incremental-fsync yes

启动:。./redis-cli redis.conf

用配置文件启动客户端

需要启动多个Redis实例:一台Redis服务器,分成多个节点,每个节点分配一个端口(6380,6381…),默认端口是6379。每个节点对应一个Redis配置文件,如:redis6380.conf、redis6381.conf

#cp redis.confredis6380.conf

#vi redis6380.conf

pidfile : pidfile/var/run/redis/redis_6380.pid

port 6380

logfile : logfile/var/log/redis/redis_6380.log

rdbfile : dbfilenamedump_6380.rdb

(其他配置文件类似修改)

启动多个redis实例:

#redis-server/usr/local/redis/redis6380.conf

#redis-server/usr/local/redis/redis6381.conf

linux redis端口修改端口,linux下安装redis 指定自定义端口相关推荐

  1. Redis第一集:Windows下安装Redis和测试

    Redis第一集:Windows下安装Redis和测试 一.资源 Windows下的Redis的下载地址 点击这里即可下载,如果进不去GitHub的话,可以上网搜一下怎么进GitHub,搭个梯子(●ˇ ...

  2. redis linux 运行依赖,在Ubuntu系统下安装Redis Desktop Manager的方法

    以下为你介绍在Ubuntu16.04系统下安装Redis可视化工具Redis Desktop Manager.不管是哪个Redis Desktop Manager版本,都可以采用下面的安装方式进行. ...

  3. Redis基础2(Centos7 下 安装redis)

    Centos7 下 安装redis redis是一个软件,帮助开发者对一台机器的内存进行操作. 1.安装redis 第一步:下载redis安装包 命令 :wget http://download.re ...

  4. 【Linux】【服务器】 CentOS7下安装Redis详细过程步骤

    Linux 源码安装 一.下载地址:http://redis.io/download,下载最新稳定版本. # wget http://download.redis.io/releases/redis- ...

  5. centos / Linux 服务环境下安装 Redis 5.0.3

    centos / Linux 服务环境下安装 Redis 5.0.3 原文:centos / Linux 服务环境下安装 Redis 5.0.3 1.首先进入你要安装的目录 cd /usr/local ...

  6. Linux下安装Redis及使用

    本文不过多讲解Redis的相关技术,而是面向初学者讲解Redis的安装和配置,以及一些常见的坑,减少初学者入门的难度! 一.Linux下安装Redis linux下安装Redis其实非常地简单,主要有 ...

  7. linux下安装Redis

    文章目录 1 linux下安装Redis 1.安装依赖 2.安装 3.测试 设置redis开机启动 yum安装redis遇到的问题(不推荐使用yum安装redis) 1 linux下安装Redis 1 ...

  8. CentOS(Linux)下安装redis (端口号:6379)

    一.CentOS(Linux)下安装redis(端口号:6379) 文章目录 一.CentOS(Linux)下安装redis(端口号:6379) 1.下载redis4 2.安装gcc (目的是编译软件 ...

  9. Redis第二集:Linux下安装Redis和测试,包含命令代码和问题处理办法,超详细版

    Redis第二集:Linux下安装Redis和测试,包含命令代码和问题处理办法,超详细版 一.资源 Linux下的Redis的下载地址 二.安装与测试 上传至自己的Linux平台 解压安装包 tar ...

  10. linux make命令_第一章 1.3Linux下安装Redis

    1.3.2 Linux下安装Redis 第一步: 去官网下载安装包 ,传送门 第二步: 上传到Linux服务器,解压redis的安装包 tar -zxvf redis-6.0.8.tar.gz 这里我 ...

最新文章

  1. table和div在页面布局上应该注意的问题
  2. ES使用org.elasticsearch.client.transport.NoNodeAvailableException: No node available 错误解决方法
  3. java中获取特定时间段_获取某一时间段特定星期几的所有日期(Java实现)
  4. [论文阅读] (04) 人工智能真的安全吗?浙大团队外滩大会分享AI对抗样本技术
  5. bert 无标记文本 调优_使用BERT准确标记主观问答内容
  6. git介绍和常用操作
  7. 爱因斯坦耗费近十年的最伟大研究,推导出什么神预言?
  8. 多线程的创建方式 你会优先选择哪一种_Python多线程入门到放弃
  9. MySQL05:DCL语言、视图
  10. java基础总结08-集合
  11. 使用ConcurrentDictionary实现轻量缓存
  12. 《暮色4:破晓(上)》暮光之城 高清蓝光BD 1080P 720P下载,附中英双字字幕!...
  13. UE4特效系列笔记①
  14. Google的Java常用类库 Guava资料
  15. 汉语拼音—韦氏拼音对照表
  16. win10提高开机速度只需要5步
  17. 字写的不好没关系,还好我会python,轻轻一点就生成了艺术签名
  18. origin和matlab的异同,origin和matlab
  19. ERROR 1366(HY000)报错解决方法
  20. 瑞晟微电子 笔试后记

热门文章

  1. window驱动下载
  2. 实时系统静态调度和动态调度
  3. 关于AOP的实现原理
  4. xshell中文免费下载及安装(内附百度网盘下载链接,仅供于个人学习使用)
  5. 基于RFID定位技术的智能仓储管理--新导智能
  6. SOAP XML报文解析
  7. 28、网络互联(网络层)
  8. 为什么是base64编码,而不是base32、base16、base63?
  9. Android 自动化测试(5)robotium
  10. 默克尔树(Merkle Tree)总结