redis相关笔记(一.安装及单机及哨兵使用)
1.安装
cd /usr/src #进入下载目录(这个目录自己定)
yum install -y wget gcc make tcl #安装依赖
wget http://download.redis.io/releases/redis-3.2..tar.gz #下载源码包
tar -zxvf redis-3.2..tar.gz #解压
cd redis-3.2. #进入redis目录
make && make test #编译与测试
make install PREFIX=/usr/local/redis #PREFIX安装指定目录
2.启动
1.单机启动
./bin/redis-server #启动redis服务
2.哨兵模式
1.在/usr/local/ 下新建一个目录redis-sentinel,然后创建三个文件夹
mkdir /usr/local/redis-sentinel
mkdir /usr/local/redis-sentinel/{,,,}
2.将redis安装目录下配置文件reids.conf拷贝8333,8334文件夹下,将其中一些配置自定义如下(其他配置不变):
#Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程
daemonize yes
#当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定
pidfile /var/run/redis_8333.pid
#指定Redis监听端口,默认端口为6379,作者在自己的一篇博文中解释了为什么选用6379作为默认端口,因为6379在手机按键上MERZ对应的号码,而MERZ取自意大利歌女Alessia Merz的名字
port 8333
#绑定的主机地址(如虚拟机上设置了两个网卡两个Ip:134,133.若bind了134的ip,则通过133不能访问到该redis服务)
bind 192.168.37.134
#日志记录方式,默认为标准输出,日志输出至指定日志文件
logfile "./redis-8333.log"
#指定本地数据库存放目录
dir "/usr/local/redis-sentinel/8333"
#当master服务设置了密码保护时,slave服务连接master的密码
masterauth admin.123
#设置Redis连接密码,如果配置了连接密码,客户端在连接Redis时需要通过AUTH <password>命令提供密码,默认关闭
requirepass admin.123
#指定是否在每次更新操作后进行日志记录,Redis在默认情况下是异步的把数据写入磁盘,如果不开启,可能会在断电时导致一段时间内的数据丢失。
#因为 redis本身同步数据文件是按上面save条件来同步的,所以有的数据会在一段时间内只存在于内存中。默认为no
appendonly yes
#设置当本机为slave服务时,设置master服务的IP地址及端口,在Redis启动时,它会自动从master进行数据同步(本例以8333端口的为主,8334为从,故以下只需在8334配置中即可)
slaveof 192.168.37.134 8333
3.将redis安装目录下的sentinel.conf拷贝8335,8336文件夹下,其自定义配置如下:
#============================================自定义配置开始========================================
#Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程
daemonize yes
#指定Redis监听端口,默认端口为6379,作者在自己的一篇博文中解释了为什么选用6379作为默认端口,因为6379在手机按键上MERZ对应的号码,而MERZ取自意大利歌女Alessia Merz的名字
port 8336
#指定本地数据库存放目录
dir "/usr/local/redis-sentinel/8336"
#日志记录方式,默认为标准输出,日志输出至指定日志文件
logfile "./sentinel.log"
#指定别名 主节点地址 端口 哨兵个数(有几个哨兵监控到主节点宕机执行转移)
sentinel monitor mymaster 193.168.37.134 8333 1
#如果哨兵3s内没有收到主节点的心跳,哨兵就认为主节点宕机了,默认是30秒
sentinel down-after-milliseconds mymaster 3000
#选举出新的主节点之后,可以同时连接从节点的个数
sentinel parallel-syncs mymaster 1
#如果10秒后,master仍没活过来,则启动failover,默认180s
sentinel failover-timeout mymaster 10000
#配置连接redis主节点密码
sentinel auth-pass mymaster admin.1231
#============================================自定义配置结束========================================
4.启动redis服务(在make安装目录中bin文件夹下)
4.1.先启动主从
[root@localhost bin]# redis-server /usr/local/redis-sentinel/8333/redis-8333.conf
[root@localhost bin]# redis-server /usr/local/redis-sentinel/8334/redis-8334.conf
查看服务信息
[root@localhost bin]# redis-cli -h 192.168.37.134 -p 8333 -a admin.1231
192.168.37.134:8333> info replication
# Replication
role:master
connected_slaves:1
slave0:ip=192.168.37.134,port=8334,state=online,offset=57,lag=0
master_repl_offset:57
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:56
4.2.启动哨兵
[root@localhost bin]# redis-sentinel /usr/local/redis-sentinel/8335/redis-8335.conf
[root@localhost bin]# redis-sentinel /usr/local/redis-sentinel/8336/redis-8336.conf
4.3.查看进程
[root@localhost bin]# ps -ef | grep redis
root 26149 1 0 14:58 ? 00:00:01 redis-server 192.168.37.134:8333
root 26153 1 0 14:58 ? 00:00:01 redis-server 192.168.37.134:8334
root 26188 1 0 15:04 ? 00:00:02 redis-sentinel *:8335 [sentinel]
root 26230 1 0 15:06 ? 00:00:02 redis-sentinel *:8336 [sentinel]
root 26281 1382 0 15:26 pts/0 00:00:00 grep --color=auto redis
启动后若外网访问不了
1.查看防火墙是否放开端口
那怎么开启一个端口呢
添加
firewall-cmd --zone=public --add-port=8333/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone=public --query-port=8333/tcp
删除
firewall-cmd --zone=public --remove-port=8333/tcp --permanent
2.配置中bind是否错误
3.密码是否错误
redis相关笔记(一.安装及单机及哨兵使用)的更多相关文章
- redis 学习笔记1(安装以及控制台命令)
为什么要学习这个? 分布式技术必会,得益于redis的设计理念,内存数据库,epoll(多路复用)模型,单线程模型除去了锁和上下文切换,提高了性能.单线程保证执行顺序(轮询),在分布式环境下对于数据的 ...
- redis相关笔记(二.集群配置及使用)
redis笔记一 redis笔记二 redis笔记三 1.配置:在原redis-sentinel文件夹中添加{8337,8338,8339,8340}文件夹,且复制原8333中的配置 在上述8333配 ...
- redis相关笔记(三.redis设计与实现(笔记))
redis笔记一 redis笔记二 redis笔记三 1.数据结构 1.1.简单动态字符串: 其属性有int len:长度,int free:空闲长度,char[] bur:字符数组(内容) 获取字符 ...
- Redis学习笔记(十五)Sentinel(哨兵)(中)
上一篇 我们模拟了单机器下哨兵模式的搭建,那么接下来我们看下哨兵模式的实现与工作. 为什么又分成两篇呢?因为篇幅太长(偷懒),再一个这篇主要说的是Sentinel的初始化以及信息交换,下一篇着重说下状 ...
- Redis学习笔记(十四)Sentinel(哨兵)(上)
最近谈到Redis就会听到哨兵模式,工作期间同事也分享过关于哨兵模式的知识,但由于工作忙(给自己找个借口)没有没认真看,现在恶补下,老样子还是分上篇应用,下篇看实现过程,下面我们来看下哨兵到底是啥? ...
- Redis学习笔记(十六) Sentinel(哨兵)(下)
消失了一段时间,我又回来啦.不多说,继续把哨兵看完. 检测主观下线状态 默认情况下,Sentinel会以每秒一次的频率向所有与他创建了命令连接的实例(主从服务器以及其他Sentinel)发送PING命 ...
- Redis安装(单机及各类集群,阿里云)
Redis安装(单机及各类集群,阿里云) 前言 上周,我朋友突然悄悄咪咪地指着手机上的一篇博客说,这是你的博客吧.我看了一眼,是之前发布的<Rabbit安装(单机及集群,阿里云>.我朋友很 ...
- Redis学习笔记之Redis单机,伪集群,Sentinel主从复制的安装和配置
0x00 Redis简介 Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure server). Redis的键值 ...
- Redis学习笔记(二)-key相关命令【转载】
转自 Redis学习笔记(二)-key相关命令 - 点解 - 博客园http://www.cnblogs.com/leny/p/5638764.html Redis支持的各种数据类型包括string, ...
随机推荐
- PHP如何使用AES加密和解密
AES加密在php5的版本中使用的mcrypt_decrypt 函数,该函数已经在php7.1后弃用了,取而代之的是openssl的openssl_encrypt和openssl_decrypt,并且 ...
- postgresql中rank() over, dense_rank(), row_number() 的用法和区别
- 转载:有好多是Elastic官方博客上的内容,具体看文档
Elastic官方博客地址:https://blog.csdn.net/UbuntuTouch 这个地址是在CSDN上面的,看不惯CSDN网站的广告,同时官方博客讲述的也都十分详细,自己保留一份作为参 ...
- 基于c语言数据结构+严蔚敏——线性表章节源码,利用Codeblocks编译通过
白天没屌事,那我们就来玩玩线性表的实现吧,快要失业了,没饭吃了咋整哦 题目描述假设利用两个线性表LA和LB分别表示两个集合A和B(即:线性表中的数据元素即为集合中的成员),现要求一个新的集合A=A∪B ...
- Python文件操作生成csv及其他存储类型
通常Pandas用习惯后,比较喜欢用.to_csv的操作直接来转成csv文件,但如果是对于列表,则可以使用文件操作生成写入csv文件: #打开文件fid0=open('baseline.csv','w ...
- HTML-参考手册: 元素和有效 DOCTYPES
ylbtech-HTML-参考手册: 元素和有效 DOCTYPES 1.返回顶部 1. HTML 元素和有效 DOCTYPES HTML 元素 - 有效 DOCTYPES 下面的表格列出了所有的 HT ...
- Linux命令 shutdown
1. 简介 shutdown是用来让计算机处于暂停,关机,重启的指令 2.语法 shutdown [krhHPc] [时间] [警告信息] 时间的格式: hh:mm 表示多长时间以后执行 ...
- git rollback
http://stackoverflow.com/questions/1616957/how-do-you-roll-back-reset-a-git-repository-to-a-particul ...
- crypto 密码加密
转自 'use strict'; var crypto = require('crypto'); /** * generates random string of characters i.e sal ...
- PAT甲级——A1148 WerewolfSimpleVersion【20】
Werewolf(狼人杀) is a game in which the players are partitioned into two parties: the werewolves and th ...