redis相关配置
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
如果源码包带有.gz结尾,需要通过gzip指令扩展,也就是-z的参数
tar -zxvf redis-4.0.10.tar.gz #解压缩这个文件,且显示解压缩过程
cd redis-4.0.10
由于redis没有configure脚本,直接就有了makefile,因此可以直接编译且安装
make #编译
make install #安装
#此两条命令可以缩写为一条, make && make install
编译安装完成后,redis默认会将redis命令添加到环境变量中/usr/local/bin底下
启动redis服务端前,自定义一个redis-6379.conf
vim redis-6379.conf ,写入以下内容(不要加上注释) port 6379 daemonize no #后台运行redis pidfile /data/6379/redis.pid #将redis进程的id写入到redis.pid这个文件 loglevel notice #日志级别 logfile "/data/6379/redis.log" dir /data/6379 #配置redis数据存放点 protected-mode yes #redis3.0之后的安全模式 requirepass mima #给redis添加密码
redis的安全模式,可能会阻挡你远程连接,为了解决这个安全模式,给redis设置一个密码
启动第一个redis实例(第二个数据库)
redis-server redis-6379.conf
可以在一个机器上,启动多个redis服务端
1.准备一个新的配置文件,redis默认支持多实例,再准备一个新的配置文件redis-6380.conf,内容如下:
port 6380 bind 0.0.0.0 daemonize yes pidfile /data/6380/redis.pid loglevel notice logfile "/data/6380/redis.log" dir /data/6380 protected-mode yes requirepass mima2
2.启动第二个redis实例(第二个数据库)
redis-server redis-6380.conf
8.通过命令查询redis的密码参数
CONFIG get requirepass
1.一个发布者,多个订阅者
2.支持正则的匹配订阅者
-a 参数意思是指定redis的密码登录
redis-cli -a mima #启动1个redis客户端 (订阅者1)
SUBSCRIBE diantai1
PSUBSCRIBE diantai*
redis-cli -a mima #启动2个redis客户端(订阅者2)
SUBSCRIBE diantai1
PSUBSCRIBE diantai*
redis-cli -a mima #启动3个redis客户端(发布者)
PUBLISH diantai1 想发送的消息
PUBLISH diantai1-10 发送的消息
1.在配置文件中写入参数,支持rdb模式
vim redis.conf
port 6379
bind 0.0.0.0
daemonize yes
pidfile /data/6379/redis.pid
loglevel notice
logfile "/data/6379/redis.log"
dir /data/6379
protected-mode yes
requirepass qiangdademima
dbfilename dbmp.rdb
save 900 1
save 300 10
save 60 10000
2.启动redis服务端,此时可以设置redis的key,通过save命令触发rdb持久化
1.vim redis.conf #写入以下
daemonize yes
port 6379
logfile /data/6379/redis.log
dir /data/6379
dbfilename dbmp.rdb
requirepass redhat
save 900 1
save 300 10
save 60 10000
appendonly yes
appendfsync everysec
2.启动redis-server服务端,默认就会生成appendonly.aof持久化文件
此时进入redis-cli的操作,都会被记录,且追加到appendonly.aof文件中,以达到持久化的操作
redis 持久化方式有哪些?有什么区别?
rdb:基于快照的持久化,速度更快,一般用作备份,主从复制也是依赖于rdb持久化功能
aof:以追加的方式记录redis操作日志的文件。可以最大程度的保证redis数据安全,类似于mysql的binlog
1.配置redis.conf文件确保是开启了rdb功能
port 6379 daemonize yes pidfile /data/redis.pid loglevel notice logfile "/data/redis.log" dir /data/ # RDB持久化 dbfilename dbmp.rdb save 900 1 save 300 10 save 60 10000
2.启动redis服务端
redis-server redis.conf
3.插入redis数据,通过save命令,强制写入持久化rdb文件(此时还是使用rdb持久化)
set name beijing set age 11 save # 手动触发rfb的持久化
4.通过命令,切换到aof持久化,(注意此步只是临时生效,必须将AOF的配置,写入redis.conf)
set appendonly yes #开启AOF功能 set save "" #关闭RDB功能
5.修改配置文件,添加aof参数,(此步重启后,rdb持久化完全切换aof持久化,且数据保持一致)
port 6379 daemonize yes pidfile /data/redis.pid loglevel notice logfile "/data/redis.log" dir /data/ appendonly yes appendfsync everysec
6.重启redis服务j进行测试
redis-6380.conf redis-6381.conf redis-6382.conf 三个配置文件的区别,仅仅是端口的不同修改即可
文件中代码如下 !修改端口
port 6380
daemonize yes
pidfile /data/6380/redis.pid
loglevel notice
logfile "/data/6380/redis.log"
dbfilename dump.rdb
dir /data/6380
protected-mode no
redis-server 6380.conf redis-server 6381.conf redis-server 6382.conf
通过info参数()此时还未配置主从,因此都是master身份
redis-cli -p 6382 info Replication redis-cli -p 6381 info Replication redis-cli -p 6380 info Replication
6380为主,6381,6382为从,通过命令指明master节点信息即可
SLAVEOF 127.0.0.1 6380 SLAVEOF 127.0.0.1 6380
redis-cli -p 6382 info Replication 从节点 redis-cli -p 6381 info Replication 从节点 redis-cli -p 6380 info Replication 主节点
1.将主节点挂掉 kill -9 主节点 6380 2.将6382去掉slave的身份 redis-cli -p 6382 slaveof no one 3.将6381设置新的主人,设置为6382 redis-cli -p 6381 slaveof 127.0.0.1 6382
1.在配置文件中,添加一条参数即可(主节点不做配置,从节点指明主人的ip端口信息即可) port 6380 daemonize yes pidfile /data/6380/redis.pid loglevel notice logfile "/data/6380/redis.log" dbfilename dump.rdb dir /data/6380 protected-mode no slaveof 127.0.0.1 6381优质内容筛选与推荐>>