1、设定服务端密码
1.1、编辑 redis的配置文件
[root@centos7 ~]# vim /usr/local/redis/etc/redis.conf
requirepass 123 # 大约500行左右,取消注释,写上自己想设定的密码
1.2、重启redis
[root@centos7 ~]# pkill redis ; /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
3140:C 19 Jan 2020 17:14:36.274 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
3140:C 19 Jan 2020 17:14:36.274 # Redis version=5.0.7, bits=64, commit=00000000, modified=0, pid=3140, just started
3140:C 19 Jan 2020 17:14:36.274 # Configuration loaded
1.3、连接

输入密码有两种方式

#1、交互模式直接输入,使用 -a 参数,会提示不安全
[root@centos7 ~]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379 -a 123
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe. #2、连接后使用 auth 命令
[root@centos7 ~]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> auth 123
OK
2、redis主从
2.1、redis主从复制过程
  • Slave 与 master 建立连接,发送 sync 同步命令
  • Master 会启动一个后台进程,将数据库快照保存到文件中,同时 master 主进程会开始收集新的写命令并缓存。
  • 后台完成保存后,就将此文件发送给 slave
  • Slave 将此文件保存到硬盘上
2.2、复制配置文件,生成多个实列。
6380.conf(主)
6381.conf(从1)
6382.conf(从2) [root@centos7 ~]# cd /usr/local/redis/etc/
[root@centos7 etc]# cp -a redis.conf 6380.conf
[root@centos7 etc]# cp -a redis.conf 6381.conf
[root@centos7 etc]# cp -a redis.conf 6382.conf # 需要将对应的pid 文件修改下,和端口。
port 6380
pidfile /var/run/redis_6380.pid port 6381
pidfile /var/run/redis_6381.pid port 6382
pidfile /var/run/redis_6382.pid
2.3、修改配置文件
老版本:
从:
slaveof <masterip> <msterport> #主服务器的 IP 和端口
masterauth <masterpass> #主服务器的密码(主服务器要设置好密码) 新版本 redis 5.* 以上:
主:
找到 bind 127.0.0.1 注释掉,或者修改为本机的 IP 地址(重启)
#这里因为是在一台机器上,运行多个实例,所以 ip 为 127.0.0.1 不需要改。
从:
replicaof <masterip> <msterport> #主服务器的 IP 和端口
masterauth <masterpass> #主服务器的密码(主服务器要设置好密码)
# 将 6381.conf , 6382.conf 修改配置
replicaof 127.0.0.1 6380
masterauth 123
2.4、启动三个实例
[root@centos7 etc]# /usr/local/redis/bin/redis-server /usr/local/redis/etc/6380.conf 

[root@centos7 etc]# /usr/local/redis/bin/redis-server /usr/local/redis/etc/6381.conf 

[root@centos7 etc]# /usr/local/redis/bin/redis-server /usr/local/redis/etc/6382.conf 

2.5、通过命令查看是否成功
[root@centos7 ~]# /usr/local/redis/bin/redis-cli -p 6380 -a 123  info Replication
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
# Replication
role:master
connected_slaves:2
3、数据持久化

Redis 是一个支持持久化的内存数据库,也就是说需要经常将内存中的数据同步到硬盘来保证持久化。

snapshotting(快照)--默认方式

RDB 持久化方式能够在指定的时间间隔能对你的数据进行快照存储。是默认的持久化方式。这种方式是将内存中数据以快照的方式写入到二进制文件中,默认的文件名dump.rdb。这种持久化方式被称为快照。

# 过了 900 秒并且有 1 个 key 发生了改变 就会触发 save 动作
# 过了 300 秒并且有 10 个 key 发生了改变 就会触发 save 动作
# 过了 60 秒并且至少有 10000 个 key 发生了改变 也会触发 save 动作

redis.conf 文件中 dir ./定义了数据库文件的存放位置,默认是当前目录。所以每次重启 redis 服务所在的位置不同,将会生成新的 dump.rdb 文件;建议服务器搭建完成时先修改快照文件保存位置

在进行rdb快照时,如果此时又触发了save动作,这个时候是不会进行rdb备份,因为此时rdb进程已经被占用,为了解决这个为题,redis引入了下面的aof备份。

append-only file(aof日志)

使用 AOF 会让你的 Redis 更加耐久: 你可以使用不同的持久化策略:每次写的时候备份、每秒备份、无备份。使用默认的每秒备份策略,Redis 的性能依然很好(备份是由后台线程进行处理的,主线程会尽力处理客户端请求),一旦出现故障,你最多丢失 1 秒的数据。

打开 redis.conf 配置文件开启 AOF 持久化 appendonly no 默认不使用 AOF 持久化(450 行)将 no 改成 yes。

# appendfsync always  有写操作,就马上写入磁盘。效率最慢,但是最安全
# appendfsync everysec 默认,每秒钟写入磁盘一次。
# appendfsync no 不进行 AOF 备份,将数据交给操作系统处理。最快,最不安全
# no-appendfsync-on-rewrite no 在进行aof重写的时候要不要停止aof备份,默认是否,不过我们应该停止aof写入,因为此时会造成rdb备份与aof备份不一致的情况,此时虽然停止了aof,但是redis会将此时的命令加入任务队列中,待当前备份动作完成后,在进行执行。 #aof重写,aof备份是类似于日志的备份方法,每当有命令执行时,就会记录在aof文件中,久而久之aof文件就会特别大,而aof重写技术,就是当aof备份文件到达一定大小,对数据库中的**数据逆化成命令**,再将命令重新写入aof备份文件中的过程。
#auto-aof-rewrite-percentage 100 aof备份文件比上次重写时大100%时重写。
#auto-aof-rewrite-min-size 64mb 当aof备份文件大于64mb重写。

重启 redis 服务,登录 client 添加一个键值,退出然后 ls 命令查看下是否生成 appendonly.aof。

redis 其他操作的更多相关文章

  1. spring data redis RedisTemplate操作redis相关用法

    http://blog.mkfree.com/posts/515835d1975a30cc561dc35d spring-data-redis API:http://docs.spring.io/sp ...

  2. Spring Framework 中启动 Redis 事务操作

    背景: 项目中遇到有一系列对Redis的操作,并需要保持事务处理. 环境: Spring version 4.1.8.RELEASE Redis Server 2.6.12 (64位) spring- ...

  3. php的redis 操作类,适用于单台或多台、多组redis服务器操作

    redis 操作类,包括单台或多台.多组redis服务器操作,适用于业务复杂.高性能要求的 php web 应用. redis.php: <?php /* redis 操作类,适用于单台或多台. ...

  4. 【springboot】【redis】springboot结合redis,操作List集合实现时间轴功能

    springboot结合redis,操作List集合实现时间轴功能

  5. php redis队列操作

    php redis队列操作 rpush/rpushx 有序列表操作,从队列后插入元素:lpush/lpushx 和 rpush/rpushx 的区别是插入到队列的头部,同上,'x'含义是只对已存在的 ...

  6. redis下操作hash对象

    redis下操作hash对象 hash用于存储对象,对象的格式为键值对 命令 设置 设置单个属性 HSET key field value 设置多个属性 HMSET key field value [ ...

  7. Redis字符串操作

      字符串命令 (基本用法) GET : 获取给定键的值 SET : 设置给定键的值 DEL : 删除给定键的值(这个命令可以用于任何类型) (自增命令和自减命令) INCR : INCR key-n ...

  8. 简单的redis缓存操作(get、put)

    简单的redis缓存操作(get.put) 本文介绍简单的redis缓存操作,包括引入jedisjar包.配置redis.RedisDao需要的一些工具.向redis中放数据(put).从redis中 ...

  9. 封装php redis缓存操作类

    封装php redis缓存操作类,集成了连接redis并判断连接是否成功,redis数据库选择,检测redis键是否存在,获取值,写入值,设置生存时间和删除清空操作. php redis类代码: &l ...

  10. Spring boot配置多个Redis数据源操作实例

    原文:https://www.jianshu.com/p/c79b65b253fa Spring boot配置多个Redis数据源操作实例 在SpringBoot是项目中整合了两个Redis的操作实例 ...

随机推荐

  1. nginx+tomcat实现负载均衡(windows环境)

    一.准备工作 nginx1.14 nginx1.14下载链接 tomcat8 tomcat8下载链接 windows系统 二.实现目标 访问http://localhost地址时, 将请求轮询到tom ...

  2. ASP.NET MVC 实现页落网资源分享网站+充值管理+后台管理(1)之数据库设计

    本文主要讲解本项目网站所应用到的知识点,及数据库的相关设计: 一.知识点 (1)本项目主要采取ASP.NET MVC的编程模式,相信你已经了解到了MVC的具体含义是什么,这里不再赘述,有不了解的朋友, ...

  3. vue-learning:23 - js - leftcycle hooks

    vue 生命周期钩子函数 每一个Vue实例在创建时都需要经过一系列初始化.根据vue实例化过程中执行的逻辑,可以分为5个阶段: 初始化阶段 模板编译阶段 虚拟DOM挂载阶段 响应更新阶段 卸载阶段 这 ...

  4. [板子]快速幂&矩阵快速幂

    不会的来这看:https://www.cnblogs.com/CXCXCXC/p/4641812.html 简单的一说:当转换为二进制的时候有位运算这种黑科技,&相当于%2判断奇偶性. x&a ...

  5. 【k8s】kubeadm快速部署Kubernetes

    1.Kubernetes 架构图 kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具. 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Mast ...

  6. C. 【UNR #3】配对树

    题解: 首先可以贪心 于是问题可以等价成一条边被算当且仅当子树中个数为奇数个 题解的做法比较简单 考虑每条边,加入其子树内的点 然后为了保证区间长度为偶数 分成f0,0 f0,1 f1,0 f1,1即 ...

  7. Visual Studio Team Services使用教程【1】:邀请团队成员

    2017.4.23之后建议朋友看下面的帖子 TFS2017 & VSTS 实战(繁体中文视频) Visual Studio Team Services(VSTS)与敏捷开发ALM实战关键报告( ...

  8. Hyperledger Fabric动态配置Raft节点

    Hyperledger Fabric动态配置Raft节点 最近看官方文档发现新的共识算法etcdRaft允许动态添加或删除排序节点,所以也花了一天时间操作了以下,写篇文章把整个过程记录一下. 初始网络 ...

  9. sqlyong到期后怎么办

    Sqlyog作为一款可视化的数据库管理工具,各种方便我就不说了,但是未经汉化或者绿色过的软件存在30天的生命期,到期后我们就不可以使用了,要摸卸载重装,我们还可以去修改注册表,来延长它的生命期,具体步 ...

  10. Autofac总结

    Autofac 介绍|术语 控制反转:IOC和DI IOC 调用者不再创建(不自己new)被调用者的实例,而是交给容器去创建(AutoFac就充当这里的容器),这就是控制反转 控制反转中引入的第三方对 ...