1.Redis简介

redis是使用C语言编写的开源的,支持网络,基于内存,可持久性的键值对存储数据库,2013年5月之前,Redis是最流行的键值对存储数据库,Redis采用内存数据集,支持多种数据类型.

Redis特性:

a.高速读写,数据类型丰富;

b.支持持久化,多种内存分配及回收策略;

c.支持弱事务,消息队列,发布订阅;

d.支持高可用,支持分布式分片集群.

企业缓存数据库解决方案对比:

memcached:

a.优点:高性能读写,单一数据类型,支持客户端式分布式集群,一致性hash多核结构,多线程读写性能高;

b.缺点:无持久化,节点故障可能出现缓存穿透,分布式需要客户端实现,跨房数据同步困难,架构扩容复杂.

Redis:

a.优点:高性能读写,多数据类型支持,数据持久化,高可用架构,支持定义虚拟内存,支持分布式分片集群,单线程读写性能极高;

b.缺点:多线程读写比memcached慢.

Tair:

a.优点:高性能读写,支持三种存储引擎(ddb;rdb;ldb)支持高可用,支持分布式分片集群,支撑了几乎所有淘宝业务的缓存;

b.缺点:单机情况下,读写性能较其他两种产品较慢.

Redis应用场景:

数据高速缓存,web会话缓存;排行榜应用;消息队列,发布订阅.

2.Redis安装部署

# 环境CentOS7,IP:10.0.0.15
wget http://download.redis.io/releases/redis-3.2.10.tar.gz
cd redis-3.2.10/
make
ln -s /root/redis-3.2.10 /usr/local/redis
cd /usr/local/redis grep "^[a-Z]" redis.conf
bind 10.0.0.15
port 6379
daemonize yes
pidfile /var/run/redis_6379.pid
logfile "/usr/local/redis/logs/redis.log" mkdir logs && cd logs
cp src/redis-server /usr/bin/
cp src/redis-cli /usr/bin/
redis-server /usr/local/redis/redis.conf # 启动redis

添加开机自启

cat /usr/lib/systemd/system/redis.service

IP=`ifconfig eth0 | awk -F"[ ]+" 'NR==2{print $3}'`
[Unit]
Description=The redis-server Process Manager
After=network.target [Service]
ExecStart=/usr/local/redis/src/redis-server /usr/local/redis/redis.conf --daemonize no
ExecStop=/usr/local/redis/src/redis-cli -h $IP shutdown [Install]
WantedBy=multi-user.target systemctl daemon-reload
systemctl enable redis
systemctl start redis

3.参数介绍

daemonize yes  # 后台启动
appendonly no # 记录操作日志
logfile "/usr/local/redis/logs/redis.log" # 日志文件位置
dbfilename dump.rdb # 持久化数据文件,配置文件中没开持久化功能
protected-mode yes # 开启保护模式,需要requirepass的配合
requirepass root123
redis-cli -h 10.0.0.15 # 连接redis
# 正确的关闭方法是redis-cli shutdown 10.0.0.15:6379> CONFIG GET * # 获取当前所有配置
10.0.0.15:6379> CONFIG SET loglevel "notice" # 变更运行配置

Redis数据持久化:

RDB持久化:基于快照的持久化功能,保存一个时刻的数据状态,企业中常用的持久化功能,一般还可以用作备份;

AOF持久化:只追加日志模式,会将redis一段时间内的所有修改命令记录下来,属于比较安全的一种持久化方式.

使用哪种持久化方式?

a.一般来说,如果想要达到很高的数据安全性,应该同时使用两种持久化功能;

b.如果你非常关心数据的安全,并且可以承受数分钟内的数据丢失,建议使用RDB;

c.有很多用户只使用AOF,但是这种方式并不推荐,因为定时生成的RDB快照非常便于数据库进行备份,并且RDB恢复数据的速度要比AOF快很多,而且还有AOF的bug问题.

无持久化策略时,在redis内部使用save命令,dump.rdb生成在redis当前目录中,恢复时只需将dump.rdb放入redis当前目录即可.

官方网站:https://redis.io

官方各版本下载地址:http://download.redis.io/releases/

Redis 中文命令参考:http://redisdoc.com

中文网站1:http://redis.cn

中文网站2:http://www.redis.net.cn

Redis4安装与配置:https://cloud.tencent.com/developer/article/1333876

Redis单机部署、添加开机自启、配置参数的更多相关文章

  1. Centos 7 redis、tomcat、Spring Boot添加开机自启服务

    一.redis添加开机自启 1.添加服务配置文件 [root@test system]# vim /etc/systemd/system/redis-server.service 2.服务配置文件内容 ...

  2. kali添加开机自启[亲测有效]

    kali添加开机自启 采用systemd的方法,kali默认是没有rc.local的,需要自己创建.本方法也适用于ubuntu 18.04 64bit 改写rc-local.service 文件 先从 ...

  3. Linux(Centos7)下redis5安装、部署、开机自启

    1.什么是redis redis是用C语言开发的一个开源的高性能键值对(key-value)数据库.它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止redis支持的键值数据类型如下字符串 ...

  4. Redis 单机部署

    参考文章: https://www.cnblogs.com/zy-303/p/10273167.html#_label0 https://blog.csdn.net/linyifan_/article ...

  5. ubuntu添加开机自启和sysv-rc-conf

    此文ubuntu使用sysvinit,而非upstart UBUNTU添加开机自动启动程序方法 1. 开机启动时自动运行程序    Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程i ...

  6. centOS学习part7:Oracle开机自启配置

    0 上一章(http://www.cnblogs.com/souvenir/p/3884904.html)我们用了很多时间以及很长的篇幅来介绍oracle的整个安装过程,希望对大家用所帮助.oracl ...

  7. redis怎么动态添加内存,动态配置,无需重启。

    在redis的使用过程中,有时候需要急需修改redis的配置,比如在业务运行的情况下,内存不够怎么办,这时要么赶紧删除无用的内存,要么扩展内存.如果有无用的内容可删除那么所有问题都已经解决.如果内容都 ...

  8. Centos8 Tomcat 开机自启配置

    第一步:修改catalina.sh文件 # vim 编辑 Tomcat bin/catalina.sh 文件.增加如下内容 CATALINA_PID="$CATALINA_BASE/bin/ ...

  9. zabbix添加开机自启

    原文链接:https://www.cnblogs.com/zydev/p/6888805.html 1. zabbix客户端的系统服务脚本 1.1 拷贝启动脚本 zabbix的源码提供了系统服务脚本, ...

随机推荐

  1. selenium初识(二)——之webdriver API

    配置完的环境之后,我们先来写一个小脚本: # __Author__:"Jim_xie" from selenium import webdriver from time impor ...

  2. postman导出excel出现response

    https://jingyan.baidu.com/article/915fc414559b4351394b2084.html

  3. Spring Cloud Config 搭建Config 服务

    配置中心: open API 配置生效监控 一致性的K-V存储 统一配置的实时推送 配置全局恢复.备份.历史版本 高可用集群 通过config 获取配置,流程: 下面介绍,基于spring cloud ...

  4. [LOJ #2162]「POI2011」Garbage

    题目大意:给一张$n$个点$m$条边的无向图,每条边是黑色的或白色的,要求变成一个目标颜色.可以从任意一个点开始,走一个简单环,回到开始的点,所经过的边颜色翻转.可以走无数次.问是否有一个方案完成目标 ...

  5. 类复制 MemberwiseClone与Clone(深 浅 Clone)

    MemberwiseClone 方法创建一个浅表副本,具体来说就是创建一个新对象,然后将当前对象的非静态字段复制到该新对象.如果字段是值类型的,则对该字段执行逐位复制.如果字段是引用类型,则复制引用但 ...

  6. python带header

    headers = { "Accept":"text/html,application/xhtml+xml,application/xml;", "A ...

  7. oracle查询时遇到的坑

    select * from manu_routecard t left join manu_routecardlist mr on t.routecard_id = mr.routecard_id l ...

  8. FastDfs java客户端上传、删除文件

    #配置文件 connect_timeout = 2 network_timeout = 30 charset = UTF-8 http.tracker_http_port = 9090 http.an ...

  9. HDU 1711 Number Sequence---KMP原始

    #include<stdio.h> #include<string.h> #include<math.h> #include<stdlib.h> #in ...

  10. Java并发笔记(一)

    1. lock (todo) 2. 写时复制容器 CopyOnWrite容器即写时复制的容器.通俗的理解是当我们往一个容器添加元素的时候,不直接往当前容器添加,而是先将当前容器进行Copy,复制出一个 ...