公海赌船710Redis协助各样不一样方法的排序,连接主机

1.Redis主从一头原理

redis主服务器会周期性的把创新的数量写入磁盘或许把修改操作写入追加的记录文件,然后将数据文件同步给从服务器,从服务器加载记录文件,在内存库中更新新数据.

公海赌船710 1

2.VMWare配置2台服务器

在已安装好redis服务的虚拟机,重命名为Redis-Master(主机),此外克隆一个虚拟机,重命名Redis-Slave(从机)

公海赌船710 2

查看IP:192.168.74.128;

翻开IP跟主机同一网段192.168.74.129;

开拓PuTTY(session1),连接主机,(session2),连接从机.

session1启动主机的Redis服务,大家得以看至今库里没有此外key;

 

公海赌船710 3

主机不用怎么设置,session2从机打开redis.conf文件设置如下:

# Master-Slave replication. Use slaveof to make a Redis instance a copy of
# another Redis server. A few things to understand ASAP about Redis replication.
#
# 1) Redis replication is asynchronous, but you can configure a master to
#    stop accepting writes if it appears to be not connected with at least
#    a given number of slaves.
# 2) Redis slaves are able to perform a partial resynchronization with the
#    master if the replication link is lost for a relatively small amount of
#    time. You may want to configure the replication backlog size (see the next
#    sections of this file) with a sensible value depending on your needs.
# 3) Replication is automatic and does not need user intervention. After a
#    network partition slaves automatically try to reconnect to masters
#    and resynchronize with them.
#
# slaveof <masterip> <masterport>
slaveof 192.168.74.128 6379

即使主机设置了密码,在此地安装连接主机的密码

# If the master is password protected (using the "requirepass" configuration
# directive below) it is possible to tell the slave to authenticate before
# starting the replication synchronization process, otherwise the master will
# refuse the slave request.
#
# masterauth <master-password>
masterauth 123456

开行session2开行从机Redis服务,并用客户端连接,同样数据库为空.

公海赌船710 4

此时,session1中主机扩充一个key,切换来session2,从机立即能得到主机同步过来的数额,那样落成了着力的多少同步.

公海赌船710 5

 

0、何为Redis

Redis是一个key-value存储系统。和Memcached类似,它帮忙存储的value类型相对更多,包涵string(字符串)、list(链表)、set(集合)和zset(有序聚集)。那几个数据类型都扶助push/pop、add/remove及取交集并集和差集及更增进的操作,而且这么些操作都是原子性的。在此基础上,Redis帮忙种种不相同措施的排序。与memcached一样,为了确保功能,数据都是缓存在内存中。不同的是Redis会周期性的把立异的数量写入磁盘可能把修改操作写入追加的笔录文件,并且在此基础上完毕了master-slave(主从)同步。Redis
是一个高质量的key-value数据库。
Redis的产出,很大程度补偿了memcached那类keyvalue存储的阙如,在局地场地可以对关周详据库起到很好的补给功效。

1、Redis 安装

1.1 安装前环境表达

使用的是CentOS 7 版本的Linux系统,
master ip 为10.211.55.3
slave ip 为10.211.55.4
虚拟机工具使用的是Parallels
Desktop

1.2 下载Redis

Redis可以到官方网站上边进行下载:https://redis.io/download,现在风靡的稳定版已经到4.0了。
此间运用的是redis-4.0.1.tar.gz

1.3 安装步骤

先是种格局安装:

$ wget http://download.redis.io/releases/redis-4.0.1.tar.gz
$ tar xzf redis-4.0.1.tar.gz -C /usr/local/
$ cd /usr/local/redis-4.0.1
$ make & make test

其次种办法安装:

# cd redis-2.4.4
# make
# make PREFIX=/usr/local/redis-4.0.1 install
# make test 
# cp redis.conf /usr/local/redis-4.0.1

安装之后的目录结构

[root@centos-linux-3 redis-4.0.1]# tree
.
├── bin
│   ├── dump.rdb
│   ├── redis-benchmark
│   ├── redis-check-aof
│   ├── redis-check-rdb
│   ├── redis-cli
│   ├── redis-sentinel -> redis-server
│   └── redis-server
├── dump.rdb
└── redis.conf

make 大概出现的相当

make[1]: Leaving directory `/usr/local/redis-4.0.1/src'
make[1]: Entering directory `/usr/local/redis-4.0.1/src'
You need tcl 8.5 or newer in order to run the Redis test
make[1]: *** [test] Error 1
make[1]: Leaving directory `/usr/local/redis-4.0.1/src'
make: *** [test] Error 2

化解方案

yum install -y tcl 

2、Redis 简单安顿

负有配置修改都在此布局文件

/usr/local/redis-4.0.1/redis.conf

2.1 修改为看护进度的办法运行

Redis默许不是以守护进度的法门运行,可以由此该配置项修改,使用yes启用守护进度

    #daemonize no
    #修改为yes
     daemonize yes

2.2 绑定的主机地址

bind前边再添加主机的ip,后边主从复制 从Redis需求通过IP连接。

 bind 127.0.0.1 10.211.55.3

2.3 设置Redis 密码

那边密码设置为javen

# requirepass foobared
requirepass javen

2.4 设置Redis 端口号

默许端口为6379

port 6379

3、测试Redis

  • 启动

#默认配置文件/usr/local/redis-4.0.1/redis.conf
src/redis-server
#或者指定配置文件
src/redis-server redis.conf
  • 客户端连接

src/redis-cli
# 如果有密码则
src/redis-cli -a Javen

公海赌船710 6

测试Redis

  • 停止

#默认配置文件 /usr/local/redis-4.0.1/redis.conf 中的端口
src/redis-cli  shutdown
#指定端口
src/redis-cli -p 6666 shutdown

4、Redis 主从复制配置

Redis的主从复制作用分外有力,一个master可以有所两个slave,而一个slave又足以拥有三个slave,如此下来,形成了强劲的多级服务器集群架构。上边不难的开展一下配置。

4.1 修改slave的redis配置文件

  • master的redis配置文件只要设置好bind即可
  • 修改slave的redis配置文件
    slaveof 10.211.55.3 6379 (映射到主服务器上,6379是端口号)
    也足以动态设置:
    通过redis-cli 连接到从节点服务器,执行上面发号施令即可。
    slaveof 10.211.55.3 6379

  • 设若master设置了认证密码,还需配置masterauth。我那边的master设置了证实密码为javen,所以安插masterauth
    javen。

布局完之后启动slave的Redis服务,OK,主从配置达成(是或不是很粗略)。
上边测试一下:
在master和slave分别施行info命令,查看结果如下:

slave:

[root@centos-linux-2 redis-4.0.1]# src/redis-cli
127.0.0.1:6379> info

公海赌船710 7

只要从Redis连接到了master则master_link_status:up否则为down。如果为down
请坚持master的Redis是否bind了主机的IP以及是或不是设置了密码。因为从Redis是长途连接必须设置bind,如果master的Redis设置了密码slave的Redis必须设置masterauth

master:

公海赌船710 8

然后在master执行set age 18

在slave执行get age,看是或不是能博取18,如若可以得到值则表达配置成功。

下边把slave修改的参数贴出来:

daemonize yes
bind 127.0.0.1 10.211.55.4 
requirepass javen
port 6379
slaveof 10.211.55.3 6379
masterauth javen

5、Redis 远程连接

用法:redis-cli [OPTIONS] [cmd [arg [arg …]]]

-h <主机ip>,默认是127.0.0.1

-p <端口>,默认是6379

-a <密码>,若是redis加锁,须求传递密码

–help,呈现帮助新闻

redis-cli -h 10.211.55.4 -p 6379 -a javen

引进阅读:
基于 CentOS Mysql 5.7.19
装置与基本同步安排详解

基于CentOS搭建 Git 服务
依照 CentOS 搭建 FTP
文件服务

10分钟搭建属于自个儿的ngork服务器,完毕内网穿透
JDK开发环境搭建及环境变量配置
极速开发微信公众号

相关文章