Redis配置
Redis介绍
Redis是一个开源的使用ANSI C语言编写、基于内存的Key-Value数据库。
它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。
Redis支持主从同步,数据可以从主服务器向任意数量的从服务器上同步,由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。
Redis在CentOS7上的配置
安装redis
- redis在CentOS7可以用yum直接安装(需要确认直接输y即可)
[root@localhost ~]# yum install epel-release
[root@localhost ~]# yum install redis
配置环境
[root@localhost ~]# vi /etc/redis.conf
- 将【stop-writes-on-bgsave-error】的yes设置为no。
- 将【daemonize】的no改成yes
- Esc : wq(保存退出)
- 重启环境
#reboot
启动redis
[root@localhost ~]# redis-server /etc/redis.conf
使用redis
连接到redis(默认连接到本地)
[root@localhost ~]# redis-cli
127.0.0.1:6379>
Ping
127.0.0.1:6379> ping
PONG
设置键值
127.0.0.1:6379> set testkey "hello"
OK
查询键值
127.0.0.1:6379> get testkey
"hello"
删除键
127.0.0.1:6379> del testkey
(integer) 1
Redis的主从模式配置
Master
[root@localhost ~]# vi /etc/redis.conf
- 找到bind 127.0.0.1,将127.0.0.1改为自己的ip地址(192.168.0.118)
- 找到port 6379 ,不改变
- Esc : wq (退出)
- 重启【reboot】
[root@localhost ~]# redis-server /etc/redis.conf
[root@localhost ~]# redis-cli -h 192.168.0.118 -p 6379
192.168.0.118:6379>
Slave
[root@localhost ~]# vi /etc/redis.conf
- 找到bind 127.0.0.1,将127.0.0.1改为自己的ip地址(192.168.0.113)
- 找到port 6379 ,将6379改为6380
- 找到【# slaveof 】,在下面另起一行写【slaveof Master IP Maste Port】
slaveof 192.168.0.118 6379
- 将【slave-read-only】改为 yes
- Esc : wq (退出)
- 重启【reboot】
[root@localhost ~]# redis-server /etc/redis.conf
[root@localhost ~]# redis-cli -h 192.168.0.113 -p 6380
192.168.0.113:6380>
Redis读写分离测试
Master
[root@localhost ~]# redis-cli -h 192.168.0.118 -p 6379
192.168.0.118:6379> info replication
# Replication
role:master
connected_slaves:1
slave0:ip=192.168.0.113,port=6380,state=online,offset=4049,lag=1
master_repl_offset:4049
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:4048
192.168.0.118:6379> set test zjs
OK
192.168.0.118:6379>
Slave
192.168.0.113:6380> info replication
# Replication
role:slave
master_host:192.168.0.118
master_port:6379
master_link_status:up
master_last_io_seconds_ago:4
master_sync_in_progress:0
slave_repl_offset:4263
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
192.168.0.113:6380> get test
"zjs"
192.168.0.113:6380>