Centos7下Redis主从搭建配置的实现方法

74次阅读
没有评论

共计 6579 个字符,预计需要花费 17 分钟才能阅读完成。

自动写代码机器人,免费开通

这篇文章将为大家详细讲解有关 Centos7 下 Redis 主从搭建配置的实现方法,丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一、环境介绍

Redis—master  172.18.8.19
Redis—slave  172.18.8.20

二、redis 主的配置

# 创建 redis 数据目录
mkdir -p /data0/redis_trade
#redis 主配置文件
root # cat redis_6379.conf |grep -Ev  ^$|^# 
bind 172.18.8.19
protected-mode yes
port 6379
tcp-backlog 511
timeout 0
tcp-keepalive 300
daemonize yes
supervised no
pidfile /var/run/redis_6379.pid
loglevel notice
logfile  /var/log/redis_6379.log 
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump_6379.rdb
dir /data0/redis_trade
slave-serve-stale-data yes
slave-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
slave-priority 100
requirepass Allwelltokok
appendonly yes
appendfilename  appendonly_6379.aof 
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events  
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
activerehashing yes
rename-command FLUSHALL ZYzv6FOBdwflW2nX
rename-command EVAL S9UHPKEpSvUJMM
rename-command FLUSHDB D60FPVDJuip7gy6l
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes

三、redis 从配置

root # cat redis_6379.conf |grep -Ev  ^$|^# 
bind 172.18.8.20
protected-mode yes
port 6379
tcp-backlog 511
timeout 0
tcp-keepalive 300
daemonize yes
supervised no
pidfile /var/run/redis_6379.pid
loglevel notice
logfile  /var/log/redis_6379.log 
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump_6379.rdb
dir /data0/redis_trade
slaveof 172.18.8.19 6379 ----- 从库比主库多这 2 行配置参数
masterauth Allwelltokok ----- 从库比主库多这 2 行配置参数
slave-serve-stale-data yes
slave-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
slave-priority 100
requirepass Allwelltokok
appendonly yes
appendfilename  appendonly_6379.aof 
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events  
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
activerehashing yes
rename-command FLUSHALL ZYzv6FOBdwflW2nX
rename-command EVAL S9UHPKEpSvUJMM
rename-command FLUSHDB D60FPVDJuip7gy6l
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes

四、redis 启动脚本

root # cat /etc/init.d/redis_6379 
#!/bin/sh
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
# chkconfig: 2345 90 10
source /etc/init.d/functions
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
 
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF= /usr/local/redis/etc/redis_${REDISPORT}.conf 
AUTH= Allwelltokok 
BIND_IP= 172.18.8.19 
 
start(){
 
 if [ -f $PIDFILE ]
 then
 echo  $PIDFILE exists, process is already running or crashed 
 else
 echo  Starting Redis server... 
 $EXEC $CONF
 fi
 if [  $? = 0  ] 
 then 
 echo  Redis is running...  
 fi 
 
 
 
stop(){
 
 if [ ! -f $PIDFILE ]
 then
 echo  $PIDFILE does not exist, process is not running 
 else
 PID=$(cat $PIDFILE)
 echo  Stopping ... 
 $CLIEXEC -h $BIND_IP -a $AUTH -p $REDISPORT SHUTDOWN 
 sleep 1
 while [ -x /proc/${PID} ]
 do
 echo  Waiting for Redis to shutdown ... 
 sleep 1
 done
 echo  Redis stopped 
 fi
 
restart(){
 stop
 start
 
status(){
 
 ps -ef|grep redis-server|grep -v grep  /dev/null 2 1
 
 if [ $? -eq 0 ];then
 
 echo  redis server is running 
 
 else
 echo  redis server is stopped 
 
 fi
 
 
 
 
case  $1  in
 start)
 start
 ;;
 stop)
 stop
 ;;
 
 restart)
 restart
 ;;
 
 status)
 status
 ;; 
 *)
 
 echo  Usage: /etc/init.d/redis {start|stop|status|start}   2 
 exit 1 
esac

五、启动服务

root # /etc/init.d/redis_6379 start

查看日志

root # tail -100f /var/log/redis_6379.log
5563:S 29 Jun 22:14:23.236 * Increased maximum number of open files to 10032 (it was originally set to 1024).
 _._ 
 _.-``__  -._ 
 _.-`` `. `_.  -._ Redis 3.2.12 (00000000/0) 64 bit
 .-`` .-```. ```\/ _.,_  -._ 
 (   , .-` | `, ) Running in standalone mode
 |`-._`-...-` __...-.``-._| ` _.- | Port: 6379
 | `-._ `._ / _.-  | PID: 5563
 `-._ `-._ `-./ _.-  _.-  
 |`-._`-._ `-.__.-  _.- _.- | 
 | `-._`-._ _.- _.-  | http://redis.io 
 `-._ `-._`-.__.- _.-  _.-  
 |`-._`-._ `-.__.-  _.- _.- | 
 | `-._`-._ _.- _.-  | 
 `-._ `-._`-.__.- _.-  _.-  
 `-._ `-.__.-  _.-  
 `-._ _.-  
 `-.__.-  
5563:S 29 Jun 22:14:23.237 # Server started, Redis version 3.2.12
5563:S 29 Jun 22:14:23.237 * The server is now ready to accept connections on port 6379
5563:S 29 Jun 22:14:23.237 * Connecting to MASTER 172.18.8.19:6379
5563:S 29 Jun 22:14:23.237 * MASTER  -  SLAVE sync started
5563:S 29 Jun 22:14:23.237 * Non blocking connect for SYNC fired the event.
5563:S 29 Jun 22:14:23.238 * Master replied to PING, replication can continue...
5563:S 29 Jun 22:14:23.238 * Partial resynchronization not possible (no cached master)
5563:S 29 Jun 22:14:23.239 * Full resync from master: c9f303069f87253011bf39369366732a2e88b389:1
5563:S 29 Jun 22:14:23.304 * MASTER  -  SLAVE sync: receiving 77 bytes from master
5563:S 29 Jun 22:14:23.305 * MASTER  -  SLAVE sync: Flushing old data
5563:S 29 Jun 22:14:23.305 * MASTER  -  SLAVE sync: Loading DB in memory
5563:S 29 Jun 22:14:23.305 * MASTER  -  SLAVE sync: Finished with success
5563:S 29 Jun 22:14:23.305 * Background append only file rewriting started by pid 5567
5563:S 29 Jun 22:14:23.329 * AOF rewrite child asks to stop sending diffs.
5567:C 29 Jun 22:14:23.329 * Parent agreed to stop sending diffs. Finalizing AOF...
5567:C 29 Jun 22:14:23.329 * Concatenating 0.00 MB of AOF diff received from parent.
5567:C 29 Jun 22:14:23.329 * SYNC append only file rewrite performed
5567:C 29 Jun 22:14:23.330 * AOF rewrite: 0 MB of memory used by copy-on-write
5563:S 29 Jun 22:14:23.337 * Background AOF rewrite terminated with success
5563:S 29 Jun 22:14:23.337 * Residual parent diff successfully flushed to the rewritten AOF (0.00 MB)
5563:S 29 Jun 22:14:23.337 * Background AOF rewrite finished successfully

关于“Centos7 下 Redis 主从搭建配置的实现方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计6579字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)