Redis部署管理持久化迁移

jopen 8年前

 

Redis主从部署

Master:192.168.30.131 Slave01:192.168.30.132 Slave02:192.168.30.134

1) 下载软件包

这里使用:redis-3.0.3.tar.gz

2) Redis安装

tarzxf redis-3.0.3.tar.gz  mv redis-3.0.3 /data/redis  cd /data/redis  make&& make install mkdir /data/redis_6379

3) Redis配置

找到配置文件/data/redis/redis.conf

修改如下内容:

daemonize  no 改为 yes #启动后台运行  dir ./ 改为 /data/redis_6379  #数据目录  slaveof   192.168.30.131  6379   #同步master,只在从上设置此参数

4) Redis启动

cp /data/redis/util/redis_init_scriptetc/init.d/redis

且修改如下:

CONF=/data/redis/redis.conf

PIDFILE=/var/run/redis.pid

serviceredis start

5) Redis主从测试

redis-cli

127.0.0.1:6379>set name yang

OK

127.0.0.1:6379>get name

“yang”

总结:缺点为单点故障

Redis哨兵部署

架构图:

修改文件/data/redis/sentinel.conf如下:

Sentialmontinelmymastar  192.168.30.131  2

格式如下:

Sentialmontinel监控主机名字(随意定义)  主数据IP  端口号quorum值

quorum值计算法:哨兵节点数量/2+1

总结:解决了单点故障,缺点是每个数据库依然存有集群中的所有数据,导致集群的总数据存储受限于可用存储内存最小的数据库节点,形成木桶效应。

/data/redis/src/redis-sentinel /data/redis/sentinel.conf

Redis持久化

两种持久化:RDB和AOF

RDB:指定的规则“定时”将内存中的数据存储在硬盘上;

AOF:在每次执行命令后将命令本身记录下来。

RDB设置(默认开启):

根据配置规则进行自动快照

用户执行save或bgsave命令

执行flushall命令

执行复制(主从)时

AOF设置:

开启appendonly参数

指定保存文件appendfilename参数

Redis数据迁移

利用持久化迁移数据  ##########查看配置信息及当前存储的key值###########  127.0.0.1:6379> INFO  # Server  redis_version:3.0.3  redis_git_sha1:00000000  redis_git_dirty:0  redis_build_id:b12f89c1e0186f28  …..  # Keyspace  db0:keys=7,expires=0,avg_ttl=0  #########保存最新的key值################  127.0.0.1:6379> BGSAVE  Background saving started  ##########查看是否保存成功##############  127.0.0.1:6379> LASTSAVE  (integer) 1444357287  ##########关闭redis服务器##############  [root@hadoop01 ~]# killall -9 redis-server  ##########压缩redis文件并拷入另一台机器#########  [root@hadoop01 data]# tar zcf redis.gz redis_6379  [root@hadoop01 data]# scp redis.gzroot@192.168.30.134:/data/  #########登陆192.168.30.134机器并做相应配置#######  修改redis.conf文件  dir /data/redis_6379  #########解压缩RDB文件########################  [root@hadoop04 data]# tarzxf redis.gz  #########重启Redis服务器########################  [root@hadoop04 redis_6379]# serviceredis start

Redis管理

以下都是在修改redis.conf配置文件

1)  指定登录服务器

bing 127.0.0.1

注:bing参数只能绑定一个地址

2)  数据库密码认证

requrepass密码

登录客户端认证格式:

AUTH  密码

注:从服务器设置masterauth参数为主的密码

3)       命令重命名设置

rename-command  FLUSHELLdfsad

格式:

rename-command  原命令名新命令名

Redis desktop manager工具