centos7.2安装redis与配置(史上最全)
学习了php已经快三年了,一直是在盲目的忙,也没整理下笔记,今天整理一下
分享下安装redis的方法
#首先去redis官网去下载 http://www.redis.cn/download.html
我选择的5.0
下载原码进行编译
wget http://download.redis.io/releases/redis-5.0.0.tar.gz
tar xzf redis-5.0.0.tar.gz
cd redis-5.0.0/
进行编译
yum -y install gcc gcc-c++ kernel-devel
make
安装
make PREFIX=/usr/local/redis install
mkdir /usr/local/redis/etc/
cp redis.conf /usr/local/redis/etc/
cd /usr/local/redis/bin/
cp redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server /usr/bin/
#修改配置
vim /usr/local/redis/etc/redis.conf
网络配置
1) bind 127.0.0.1
#<==绑定服务器的IP地址,强烈建议修改为服务器的对外IP,如192.168.1.10
2)protected-model yes
#<==启用保护模式,在没有配置bind地址和密码的时候,只允许127.0.0.1和::1,或者是unix的socket来连接
3)port 6379
#<==redis接收连接的端口,默认为6379
4)tcp-backlog 511
#<==tcp监听的积压,在高频率环境中需要高积压来避免客户端的慢访问问题。
5)timeout 0
#<==客户端空闲N秒后关闭连接(0表示禁用)
6)tcp-keepalive 300
#<==tcp检测存活的时间间隔
一般配置
7) daemonize no
#<==是否是启动后台运行模式,默认为no,强烈建议设置为yes
8)supervised no
#<==通过upstart和systemd启动redis时的监督策略,0表示禁止
9)pidfile /var/run/redis_6379.pid
#<==deamon模式运行时的PID存放文件
10)loglevel notice
#<==打印日志级别,分别为debug、verbose、notice、warning
11)logfile /var/log/redis/redis.log
#<==指定日志文件名称
12)databases 16
#<==设置数据库数量,默认数据库为DB0,0-15,共16个,可以使用select dbid选择数据库
快照配置
13) save 900 1
14) save 300 10
15) save 60 10000
#<==设置数据保存到硬盘RDB文件的保存点,例如save 900 1表示如果在900秒以内有个一key有变动,则触发一次刷新数据到硬盘的RDB文件中。如果不想保留数据到硬盘,则可以将以上三个参数替换为save ""
16)stop-writes-on-bgsave-error yes
#<==设置如果后台保存失败,那么redis将停止数据的写入。
17)rdbcompression yes
#<==转储.rdb数据库时使用LZF压缩字符串对象。
18)rdbchecksum yes
#<==在RDB文件末尾的校验,会降低10%的性能,如果想获取最佳性能,则可以关闭此选项
19)dbfilename dump.rdb
#<==DB文件的备份名名
20)dir /var/lib/redis
#<==指定工作目录,rdb存放的目录。如果没有指定,则默认在运行命令的路径下。
主从配置
21)slave-serve-stale-data yes
#<==与master失联的应对方式,yes时会回复客户端旧的数据;no会提示报错“SYNC with master in progress”
22) slave-read-only yes
#<==设置slave服务器只读
23) repl-diskless-sync no
#<==是否启动无盘同步方式,即使用socket做同步策略而不会使用到disk。(磁盘IO慢,且带宽足够大时可选择采用。但该功能目前还不处实验状态,建议选择关闭)
24)repl-diskless-sync-delay 5
#<==当repl-diskless-sync设置为yes时,设置传输前的等待时间。要禁用该功能可配置为0。
25)repl-disable-tcp-nodelay no
#<==tcp延时的优化,默认为no。在非常高的网络trafiic条件或者主备距离远时,可开启为yes。
26)slave-priority 100
#<==从节点的优先级。数字越低级别越高,0表示不会被提升带master。
追加模式配置
27) appendonly no
#<==是否开启AOF追加功能,yes表示开启,建议
28) appendfilename "appendonly.aof"
#<==AOF文件名,默认为appendonly.aof
29) appendfsync everysec
#<==写入AOF文件的频率。有no(操作系统需要时刷新,速度快)、always(每追加一条就会刷新,安全)、everysec(每秒刷新一次)三种选择,默认为everysec
30) no-appendfsync-on-rewrite no
#<==缓解AOF写入阻塞,默认为no。如果有延迟问题,可以选择yes
31) auto-aof-rewrite-percentage 100
#<==触发自动重写所占的百分比,0表示禁用自动重写功能
32) auto-aof-rewrite-min-size 64mb
#<==指定自动重写AOF文件的最小大小
33) aof-load-truncated yes
#<==是否加载被截断(reids出问题时AOF文件可能被截断)的AOF日志。设置yes表示加载被截断的AOF文件,并通过日志告知用户;如果设置为no,则redis拒绝启动,需要运行redis-check-aof才能启动服务。
LUA脚本配置
34) lua-time-limit 5000
#<==以毫秒为单位的LUA脚本最长执行时间,0或者负数表示不限制
慢日志配置
35) slowlog-log-slower-than 10000
#<==记录执行命令的超时时间,单位为微秒。负数表示禁用该功能,0表示强制记录每条命令。
36) slowlog-max-len 128
#<==慢日志的长度,注意会消耗内存,可以使用SLOWLOG RESET回收慢日志所使用的内存
延时监视配置
37) latency-monitor-threshold 0
#<==设置监视的执行命令时间,超过该值的才会被记录。0表示关闭该功能。
事件通知配置
38) notify-keyspace-events ""
#<==一般不会用到此功能,而且会带来额外的开销
高级配置
39) hash-max-ziplist-entries 512
#<==hash阈值最大的条目数
40) hash-max-ziplist-value 64
41) list-max-ziplist-size -2
#<==每个内部列表节点允许的条目数,-2表示8KB。(-5表示64KB;-4表示32KB;-3表示-16KB;-1表示4KB)
42) list-compress-depth 0
#<==列表的压缩深度,0表示不压缩
43) set-max-intset-entries 512
#<==集合大小的限制
44) zset-max-ziplist-entries 128
#<==有序集合特殊编码格式最大元素限制
45) zset-max-ziplist-value 64
#<==有序集合特殊编码格式最大长度限制
46) hll-sparse-max-bytes 3000
#<==HyperLogLog最大字节数的限制
47) activerehashing yes
#<==开启主动hash功能,可以尽可能快释放内存。如果有严格的延迟要求,可以设置为no。
48) client-output-buffer-limit normal 0 0 0
49) client-output-buffer-limit slave 256mb 64mb 60
50) client-output-buffer-limit pubsub 32mb 8mb 60
#<==格式为client-output-buffer-limit <class> <hard limit> <soft limit> <soft seconds>,表示如果达到硬限制,立即断连;达到软限制并持续之后的秒数,断连。默认普通客户端不受限制,因为不会在没有询问的情况下接收数据。
51) hz 10
#<==设置Redis检查任务的频率,范围为1-500,最好不要超过100。
52) aof-rewrite-incremental-fsync yes
#<==没生成32MB数据,AOF文件将被fsync-ed,避免延迟尖峰。
#配置环境变量
vim /etc/profile
export PATH="$PATH:/usr/local/redis/bin"
让环境变量立即生
source /etc/profile
#开启自启动设置
redis提供了一个管理启动,关闭,重启的脚本,位置是在
/usr/local/redis-5.0.0/utils/redis_init_script
#复制脚本文件到init.d目录下()
cp /usr/local/redis-5.0.0/utils/redis_init_script /etc/init.d/redis
#编辑/etc/init.d/redis

# 给脚本增加运行权限
chmod +x /etc/init.d/redis
查看服务列表 chkconfig --list
添加服务 chkconfig --add redis
配置启动级别 chkconfig --level 2345 redis on
启动测试
systemctl start redis 或者 /etc/init.d/redis start
systemctl stop redis 或者 /etc/init.d/redis stop
查看redis进程
ps -aux|grep redis
查看端口
netstat -an|grep 6379
centos7.2安装redis与配置(史上最全)的更多相关文章
- Springcloud 配置 | 史上最全,一文全懂
Springcloud 高并发 配置 (一文全懂) 疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列之15 [博客园总入口 ] 前言 疯狂创客圈(笔者尼恩创建的高并发研习社群)Spring ...
- centos7.4安装redis以及配置外网访问
一.安装redis 第一步:下载redis安装包 wget http://download.redis.io/releases/redis-4.0.6.tar.gz [root@VM_34_108_c ...
- 50道Redis面试题史上最全,以后面试再也不怕问Redis了
1.什么是Redis? Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存. ...
- 史上最全Windows版本搭建安装React Native环境配置
史上最全Windows版本搭建安装React Native环境配置 配置过React Native 环境的都知道,在Windows React Native环境配置有很多坑要跳,为了帮助新手快速无误的 ...
- ubuntu上安装redis和配置远程访问
ubuntu上安装redis和配置远程访问 安装redis: 下载安装包: wget http://download.redis.io/releases/redis-4.0.1.tar.gz 解压: ...
- Linux CentOs7 下安装 redis
Linux CentOs7 下安装 redis 请将以下命令放入linux命令行中运行 如果安装过程前没有安装GCC请先安装 命令如下 $ yum install gcc-c++ $ wget ht ...
- Redis分布式锁 (图解-秒懂-史上最全)
文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...
- Redis与DB的数据一致性解决方案(史上最全)
文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...
- Ubuntu16.04安装Redis并配置
Ubuntu16.04安装Redis并配置 2018年05月22日 10:40:35 Hello_刘 阅读数:29146 Ubuntu16.04安装Redis并配置 1):安装: 1:终端命令下载 ...
随机推荐
- Codeforces 1132G(关系转化树+dfn+线段树)
要点 显然要滑动修改维护. 像通常的数列next关系一样建边(单调栈预处理),因为贪心所以是树,然后发现增删只会影响区间内的子(or父,看你连边方向行事)节点,于是使用dfs序建线段树. 为了正确地修 ...
- Codeforces Round #497 (Div. 2) C. Reorder the Array
Bryce1010模板 http://codeforces.com/contest/1008/problems #include <bits/stdc++.h> using namespa ...
- Codeforces Round #497 (Div. 2)B. Turn the Rectangles
Bryce1010模板 http://codeforces.com/contest/1008/problems #include <bits/stdc++.h> using namespa ...
- 098 Validate Binary Search Tree 验证二叉搜索树
给定一个二叉树,判断其是否是一个有效的二叉搜索树.一个二叉搜索树有如下定义: 左子树只包含小于当前节点的数. 右子树只包含大于当前节点的数. 所有子树自身必须也是二叉搜索树.示例 1 ...
- JavaScript Allongé 第一呷 :基础函数 (2)
啊!我想要有一个参数 到现在为止,我们已经了解了没有参数的函数.只说我们的函数没有任何参数,甚至还没说参数是什么.大多数程序员非常熟悉参数,中学数学就讨论这个了.所以你知道他们是什么,而我也知道你知道 ...
- python学习day11
目录 SqlAlchemy 外键 SqlAlechemy SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作,简言之便是:将对象 ...
- ubuntu 下 docker安装
1移除以前安装docker sudo apt-get remove docker docker-engine docker-ce docker.io 2 安装包以允许apt通过HTTPS使用存储库 s ...
- STL使用迭代器逆向删除
网上有很多这种例子: void erase(vector<int> &v) { for(vector<int>::reverse_iterator ri=v.rbegi ...
- 谈谈我理解的Http缓存机制
前几天看到老铁们分享的面经,谈到 http 缓存机制的问题,痛下决心,一口气研究个明白,分享给大家. 前端的发展越来越迅速,能做的事情越来越多,承担的责任越来越重,通过了解 http 缓存机制,可以帮 ...
- JS判断两个对象相同属性的属性值是否相等
function isObjectValueEqual(a, b) { var aProps = Object.getOwnPropertyNames(a); var bProps = Object. ...