Linux+Windows环境下Redis安装详细教程(主从复制+哨兵机制配置)
1.----------linux环境下安装Redis----------------
Redis的官方下载网址是:http://redis.io/download (这里下载的是Linux版的Redis源码包)
Redis服务器端的默认端口是6379。
在windows系统中下载好Redis的源码包。
1. 通过WinSCP工具,将Redis的源码包由windows上传到Linux系统的这个目录/usr/redis 。
2. 解压缩。 tar -zxf redis-3.0.0.tar.gz
3. 切换到解压后的目录。
cd redis-3.0.0 ( 一般来说,解压目录里的INSTALL文件或README文件里写有安装说明,可参考之)
4. 编译。make
(注意,编译需要C语言编译器gcc的支持,如果没有,需要先安装gcc。可以使用rpm -q gcc查看gcc是否安装)
(利用yum在线安装gcc的命令 yum -y install gcc )
(如果编译出错,请使用make clean清除临时文件。之后,找到出错的原因,解决问题后再来重新安装。 )
5. 进入到src目录。 cd src
6. 执行安装。make install
7.到此就安装完成。
但是,由于安装redis的时候,我们没有选择安装路径,故是默认位置安装。在此,我们可以将可执行文件和配置文件移动到习惯的目录。
cd /usr/local
mkdir -p /usr/local/redis/bin
mkdir -p /usr/local/redis/etc
cd /usr/redis/redis-3.0.0
cp ./redis.conf /usr/local/redis/etc
cd src
cp mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server redis-sentinel /usr/local/redis/bin
8.开放linux 6379 端口
1.编辑 /etc/sysconfig/iptables 文件:vi /etc/sysconfig/iptables
加入内容并保存:-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 6379 -j ACCEPT
2.重启服务:/etc/init.d/iptables restart
3.查看端口是否开放:/sbin/iptables -L -n
或者是直接关闭防火墙:service iptables stop
比较重要的3个可执行文件:
redis-server:Redis服务器程序redis-cli:Redis客户端程序,它是一个命令行操作工具。也可以使用telnet根据其纯文本协议操作。
redis-benchmark:Redis性能测试工具,测试Redis在你的系统及配置下的读写性能。
9.Redis的启动命令:
/usr/local/redis/bin/redis-server
或cd /usr/local/redis/bin
./redis-server /usr/local/redis/etc/redis.conf 为redis-server指定配置文
这样的连接方式都是前台连接,意思就是我关闭命令窗口的时候,就会关闭redis,所以我们要修改成后台启动的方式。
10.修改为后台启动方式,需要修改 redis.conf文件
daemonize yes --- 修改为yes 后台启动
requirepass admin ----注释取消掉设置账号密码
11.修改完配置文件之后我们重新启动redis
cd /usr/local/redis/bin
./redis-server /usr/local/redis/etc/redis.conf
或cd /usr/local/redis/bin
利用redis命令连接方式
./redis-cli -h 127.0.0.1 -p 6379 -a "admin" --- redis 使用账号密码连接
PING 结果表示成功
输入密码,客户端连接成功。
12.停止redis
redis-cli shutdown 或者 kill redis进程的pid
13.查询redis端口
ps aux | grep '6379' --- 查询端口
kill -15 9886 --- 杀死重置
kill -9 9886 --- 强制杀死
service iptables stop 停止防火墙
2.----------windows环境下安装redis----------------
客户端进行连接,首先修改redis.windows.conf的密码为123456,然后通过客户端进行连接
注意:修改密码的时候前面不要加空格
3.----------linux环境下主从复制配置----------------
主从复制配置
过程:
1:当一个从数据库启动时,会向主数据库发送sync命令,
2:主数据库接收到sync命令后会开始在后台保存快照(执行rdb操作),并将保存期间接收到的命令缓存起来
3:当快照完成后,redis会将快照文件和所有缓存的命令发送给从数据库。
4:从数据库收到后,会载入快照文件并执行收到的缓存的命令。
只需要修改从服务器的redis.conf配置
修改slave从redis中的 redis.conf文件
masterauth admin--- 主redis服务器配置了密码,则需要配置
查看配置情况
查看到的信息
4.----------Redis哨兵机制----------------
什么是哨兵机制Redis的哨兵(sentinel) 系统用于管理多个 Redis 服务器,该系统执行以下三个任务:
· 监控(Monitoring): 哨兵(sentinel) 会不断地检查你的Master和Slave是否运作正常。
· 提醒(Notification):当被监控的某个 Redis出现问题时, 哨兵(sentinel) 可以通过 API 向管理员或者其他应用程序发送通知。
· 自动故障迁移(Automatic failover):当一个Master不能正常工作时,哨兵(sentinel) 会开始一次自动故障迁移操作,它会将失效Master的其中一个Slave升级为新的Master, 并让失效Master的其他Slave改为复制新的Master; 当客户端试图连接失效的Master时,集群也会向客户端返回新Master的地址,使得集群可以使用Master代替失效Master。
单个哨兵(sentinel)
哨兵模式修改配置
实现步骤:
1.拷贝到etc目录
cp sentinel.conf /usr/local/redis/etc
sentinel monitor mymast 192.168.110.133 6379 1 #主节点 名称 IP 端口号 选举次数
sentinel auth-pass mymaster 123456
sentinel down-after-milliseconds mymaster 5000
4.sentinel parallel-syncs mymaster 2 --- 做多多少合格节点
./redis-server /usr/local/redis/etc/sentinel.conf --sentinel &
6. 停止哨兵模式
ps -aux | grep '26379'
kill -9 3017