redis安装
在linux中安装redis过程如下:
(1)搭建实验环境
准备三台虚拟机+一台物理机
server1(172.25.10.1) | redis主服务器 |
---|---|
server2(172.25.10.2) | redis从服务器 |
server3(172.25.10.3) | redis从服务器 |
物理机 | 172.25.10.250 |
三台服务器为真机上所做的快照,实验环境干净!
实验步骤,从真机给server1发送redis安装包
首先,在server1上进行基本的配置搭建
- 解压安装包,进入到解压后的目录
2、进行编译安装(可以在编译前安装gcc,也可以在编译之后安装,系统会提示出错,需要安装gcc)
先进行make ##这里不用configure
再make install
进行编译与安装(编译成功后会出现新的redis脚本,eg:redis-cli),进入utils/下面,开启redis
./install_server.sh 时全部选择默认。或者回车。从提示的内容中我们可以看到redis的端口、生成的配置文件、以及redis的数据保存在哪个文件等。
安装成功!!
3、修改配置文件
查看端口发现此时仅仅监听本机
修改其配置文件,改为监听所有
4、打开服务 /etc/init.d/redis_6379 restart
注意:第一次使用脚本方式启动redis之后才可以使用systemd的方式来控制redis服务
5、使用redis-cli (redis命令行工具)进行测试
发现可以写入数据,查看数据,删除数据
注意:这里的数据是key-value形式,如果是同一个key的value,会进行覆盖
配置主从复制集群
在redis中使用复制功能非常容易,只需要在从数据库的配置文件里面添加"slaveof 主数据库IP 主数据库端口 "
先在server2(从服务器)上面进行编译安装redis,进行基本的配置
为了方便起见,我们直接server1上解压后产生的目录直接上传到server2主机上。
在server2上我们直接进行make install
2、 修改配置文件的监听ip,并在配置文件添加设置server2是从服务器,它的主服务器是server1
测试主从redis服务器是否做好。
在server2上查看数据,可以看出实现了基本的主从复制,但是不能写,没有权限
redis的数据保存在/var/lib/redis/6379/dump.rdb
如果有问题,redis起不来,可以删除这文件再试
查看这个文件:
redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),
主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,
并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。
从数据库的数据是以自己的主数据库为标准的
复制原理
了解redis复制原理对日后运维的学习很有帮助
当一个从数据库启动后,会向主数据库发送SYNC命令,主数据库接收到SYNC命令后会开始在后台保存快照(即RDB持久化过程),并将保存期间接受到的命令缓存起来。当快照完成后,redis会将快照文件和所有缓存的命令发送给从数据库。从数据库收到后,会载入快照文件并执行收到的缓存命令。当主从数据库断开重连后会重新执行上述操作,不支持断点续传。