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. 每天一个Linux命令(11):cat命令

    cat命令连接文件并打印到标准输出设备上. 注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容.因此,一般用more等命令分屏显示.为了控制滚屏,可以按Ctrl+S键,停止滚 ...

  2. Python代码书写规范

    Python 编码规范 一 代码编排1 缩进.4个空格的缩进(编辑器都可以完成此功能),不要使用Tap,更不能混合使用Tap和空格.2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号.换行点要在 ...

  3. 哲学家就餐-同步问题解析-python

    五个哲学家吃五盘通心粉,由于通心粉很滑,所以必须要拿起左右两边的叉子才能吃到. 叉子的摆放如图所示. 那么问题来了:能为每一个哲学家写一段描述其行为的程序,保证不会出现死锁. 解法1:让他等待能够使用 ...

  4. 2 28TOP100

    import json import requests from requests.exceptions import RequestException import re import time d ...

  5. Android详细目录结构

    Android 2.1 |-- Makefile |-- bionic (bionic C库) |-- bootable (启动引导相关代码) |-- build (存放系统编译规则及generic等 ...

  6. 当发送ICMP包的时候不一定能收得到(arp已经应答了)【复现不了了】

    arp已经应答了,然后再返回ICMP应答的时候竟然不被回复. 其实这里想想也很容易想清楚: 虽然arp给了回复,但是真正到ICMP报文到的时候,我理解报文到的时候,我理解还是要进行与本地网络兑换的,本 ...

  7. hdu 2510 符号三角形 (DFS+打表)

    符号三角形 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  8. [洛谷P1903][国家集训队]数颜色

    题目大意:有$n$支画笔,有两个操作 $Q\;l\;r:$询问$[l,r]$中有几种颜色 $R\;p\;Col:$把第$p$支画笔的颜色改成$Col$ 题解:带修莫队,分为$n^{\frac{1}{3 ...

  9. Lettcode Kth Largest Element in an Array

    Lettcode Kth Largest Element in an Array 题意:在无序数组中,寻找第k大的数字,注意这里考虑是重复的. 一直只会简单的O(nlogn)的做法,听说这题有O(n) ...

  10. 快速配置vim+ctags+taglist

    实验平台:centos 7 1.安装vim编辑器 点击(此处)折叠或打开 $sudo yum install vim 并编辑配置文件.vimrc文件,放在主目录下/home/developer 参考配 ...