Redis_3.2.4 主从部署
admin
2023-06-05 05:41:03
0


系统:Centos6.6x64

版本:redis-3.2.4

安装目录:/opt/

主:172.16.15.103

从:172.16.15.104


1,下载安装:

安装依赖:

# yum install gcc tcl ruby -y 

# wget http://download.redis.io/releases/redis-3.2.4.tar.gz

# tar xf redis-3.2.4.tar.gz

# mv redis-3.2.4 /opt/redis

# cd /opt/redis

# make 

# make test 


2,内核修改配置

echo "vm.overcommit_memory=1" >> /etc/sysctl.conf

/sbin/sysctl -p


3, iptables/selinux及内核设置:

# cat /etc/sysconfig/iptables 

-A INPUT -p tcp -m state --state NEW -m tcp --dport 6379 -j ACCEPT


4,创建数据日志目录

#mkdir -p redis/{log,data}


5,redis 主从配置

主服务:172.16.15.103

# cat redis.conf

bind 172.16.15.103

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 /opt/redis/log/redis.log

databases 16

save 900 1

save 300 10

save 60 10000

stop-writes-on-bgsave-error yes

rdbcompression yes

rdbchecksum yes

dbfilename dump.rdb

dir /opt/redis/data

requirepass 1qaz@WSX

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

appendonly no

appendfilename "appendonly.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

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



从服务:172.16.15.104

# cat redis.conf

bind 172.16.15.104

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 /opt/redis/log/redis.log

databases 16

save 900 1

save 300 10

save 60 10000

stop-writes-on-bgsave-error yes

rdbcompression yes

rdbchecksum yes

dbfilename dump.rdb

dir /opt/redis/data

slaveof 172.16.15.103 6379

masterauth 1qaz@WSX

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

appendonly no

appendfilename "appendonly.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

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


6,启动测试:

# /opt/redis# nohup src/redis-server redis.conf &

# ps-ef|grep redis


# /usr/local/redis/bin/redis-cli ping


7,测试:

主服务103上执行创建:

# /usr/local/redis/bin/redis-cli -h 172.16.15.103 -a 1qaz@WSX 

    >set test 123456


从服务104上执行查看:

# /usr/local/redis/bin/redis-cli -h 172.16.15.104

    >get test



性能测试

# /usr/local/redis/bin/redis-benchmark


关闭服务

# /usr/local/redis/bin/redis-cli -p 6379 shutdown


强制刷新数据到磁盘【Redis默认是异步写入磁盘的】

# /usr/local/redis/bin/redis-cli -p 6379 save


redis 资源信息数据统计查看: info

# redis-cli -h 127.0.0.1 -a passwd

    > info 


Redis 模糊搜索

 keys *

 select 2 


删除所有以user开头的key 可以这样实现:

# redis-cli keys "user*"

1) "user1"

2) "user2"

# redis-cli keys "user*" | xargs redis-cli del

(integer) 2

# 删除成功


# 批量删除匹配通配符的key用到了Linux中的管道和xargs参数:

redis-cli keys "s*" | xargs redis-cli del 


# 如果需要制定数据库,需要用到 -n 数据库编号   参数,下面是删除2数据库中s开头的键:

redis-cli -n 2 keys "s*" | xargs redis-cli -n 2 del


redis-cli keys "*" | xargs redis-cli del  

# 如果redis-cli没有设置成系统变量,需要指定redis-cli的完整路径  

# 如:/opt/redis/redis-cli keys "*" | xargs /opt/redis/redis-cli del 


# 删除当前数据库中的所有Key  

flushdb  

# 删除所有数据库中的key  

flushall 

相关内容

热门资讯

OpenAI:因网络安全风险,... IT之家 8 月 8 日消息,OpenAI 表示,内部与专家评估显示,即将发布的模型 Astra 在...
AI赋能“成都礼物”扬帆出海,... 8月7日,2026“天府好物”出川出海市场拓展活动——“成都礼物”专场在成都市民促中心举行。70余家...
广州一学校超招,被罚没891万 澎湃新闻记者 陈绪厚 实习生 王肖丝雨据广州市增城区教育局微信公众号“增城教育之窗”8月7日消息,广...
周末打虎!退休1年后,宋致远被... 8日,据中央纪委国家监委网站消息,中国东方电气集团有限公司原党组副书记、董事宋致远涉嫌严重违纪违法,...
挪威足协主席呼吁因凡蒂诺立即辞... 【环球网报道 记者 姜蔼玲】据路透社当地时间7日报道,在多家欧洲足协相继撤回对国际足联主席因凡蒂诺的...
美前空军部长被撤销涉密信息访问... 【环球网报道 记者 李飒】据美国有线电视新闻网(CNN)、福克斯新闻网等美媒最新报道,五角大楼撤销了...
从试验场走向主战场 券商加码布... 【从试验场走向主战场 券商加码布局AI智能体】财联社8月8日电,今年以来,AI Agent(AI智能...
日本竟想学乌克兰:对华冲突,用... 据南华早报8月7日报道,专家表示,日本最新防卫白皮书强调无人机的适应性和规模化运用,这表明日本正借鉴...
21个科创项目落地南京栖霞涉脑... 8月6日,上海(长三角)国际科技创新中心南京关键支点暨南京紫金山创新带建设栖霞区推进会召开。现场举行...
微信官宣功能更新,消息撤回提示... 8月7日,微信宣布功能更新,长按聊天框里的“你撤回了一条消息”即可选择从自己的页面里删除。微信方面提...