Linux下安装redis

mkdir /usr/local/redis  && cd /usr/local/redis
下载:wget http://download.redis.io/releases/redis-3.0.5.tar.gz
解压:tar xzf redis-3.0.5.tar.gz
安装到指定目录:
cd redis-3.0.5
make PREFIX=/usr/local/redis install  

将redis做成一个服务

  1. 复制并重命名脚本
    cp /usr/local/redis/redis-3.0.5/utils/redis_init_script /etc/rc.d/init.d/redis

  2. 因为默认redis服务不支持chkconfig,所以需要修改redis脚本,增加:
    #chkconfig: 2345 80 90
    注意脚本中EXEC、CLIEXEC的路径是否正确(对应redis-server、redis-cli的安装目录)

  3. 复制conf文件到相应位置,与脚本中CONF配置一致
    cp /usr/local/redis/redis-3.0.5/redis.conf /etc/redis/6379.conf

  4. 添加并启动服务
    chkconofig --add redis
    service redis start

将redis的命令所在目录添加到系统参数PATH中

vi /etc/profile
export PATH="$PATH:/usr/local/redis/bin"
这样我们可以直接使用redis-cli来连接redis服务器了,不用每次都跑到bin目录下执行命令。

查看redis版本

redis-server --version  // 查看服务端版本
redis-cli --version  // 查看客户端版本
或者连接redis server后使用info命令也可以查看

基本数据类型和常用命令

数据类型

redis的键总是一个字符串对象,而值则可以是任意一种Redis对象类型,包括字
符串对象、哈希表对象、列表对象、集合对象和有序集合对象,分别对应字符串键
哈希表键、列表键、集合键和有序集合键。

redis会根据不同的使用场景来为一个对象设置不同的编码,从而来优化对象在某一场景下的效率。

常用命令列表



redis持久化

因为redis是内存数据库,它将自己的数据库状态储存在内存里面,所以如果不想办法将储存在内存中的数据库状态保存到磁盘里面,那么一旦服务器进程退出,服务器中的数据库状态也会消失不见。
为了解决这个问题,redis提供了两种持久化机制:RDB & AOF。可以将redis在内存中的数据库状态保存到磁盘特定文件里,在redis服务器启动之初会读取该文件来重新构建数据库,以保证启动后数据库中的数据是完整的。

RDB

在指定的时间间隔内将内存中的数据集快照写入磁盘。

通过命令执行

save  // 阻塞服务器其它操作
bgsave  // 通过子进程执行,非阻塞

redis自动间隔性保存

根据conf配置文件中save选项来设置:

如图,默认900秒1次修改、300秒10次修改、60秒10000次修改redis会自动执行RDB持久化。

AOF

以日志的形式记录服务器所处理的每一个写操作,如果服务器开启了AOF持久化(appendonly yes)功能,那么服务器会优先使用AOF文件来还原数据库状态。

持久化实现

追加至aof_buf缓存区 -> 文件写入 -> 文件同步(保存),服务器配置的appendfsync选项的值直接决定AOF持久化功能的效率和安全性。

AOF文件重写

因为AOF持久化是通过保存被执行的写命令来记录数据库状态的,所以随着服务器运行时间的流逝,AOF文件中的内容会越来越多,文件的体积也会越来越大,如果不加以控制的话,体积过大的AOF文件很可能对redis服务器、甚至整个宿主计算机造成影响,并且AOF文件的体积越大,使用AOF文件来进行数据还原所需的时间就越多。
为了解决AOF文件体积膨胀的问题,redis提供了AOF文件重写(rewrite)功能。通过该功能,redis服务器可以创建一个新的AOF文件来替代现有的AOF文件,新旧两个AOF文件所保存的数据库状态相同,但新AOF文件不会包含任何浪费空间的冗余命令,所以新AOF文件的体积通常会比旧AOF文件的体积要小得多。

  • 手动执行:

    bgrewriteaof
    
  • 设置自动触发条件:

redis学习笔记-安装与入门相关推荐

  1. Redis学习笔记①基础篇_Redis快速入门

    若文章内容或图片失效,请留言反馈.部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 资料链接:https://pan.baidu.com/s/1189u6u4icQYHg_9_7ovWmA( ...

  2. Redis学习笔记~Redis在windows环境下的安装

    Redis是一个key-value的存储系统,它最大的特点就是可以将数据序列化到文件中. redis存储在服务器的内存或者文件中,它不是session,不是cookies,它只是个更安全,更稳定,更可 ...

  3. Redis学习笔记(B站狂神说)(自己总结方便复习)

    Redis学习笔记B站狂神说 redis: 非关系型数据库 一.NoSQL概述 1.为什么要用Nosql 1.单机Mysql的年代 思考一下,这种情况下:整个网站的瓶颈是什么? 1.数据量如果太大,一 ...

  4. Redis学习笔记(一) 数据类型事务异常Jredis

    Redis学习笔记(一) NoSql概述 Nosql四大分类 Redis入门 简介 Windows安装 基础使用 问题 Redis4.0之前为什么是单线程 单线程为什么这么快 Redis4.0后的多线 ...

  5. Hadoop学习笔记(1) ——菜鸟入门

     Hadoop学习笔记(1) --菜鸟入门 Hadoop是什么?先问一下百度吧: [百度百科]一个分布式系统基础架构,由Apache基金会所开发.用户能够在不了解分布式底层细节的情况下.开发分布式 ...

  6. Redis(学习笔记)

    Redis学习笔记 1.NoSQL数据库 1.1解决的问题 1.1.1解决CPU及内存压力 1.1.2解决IO压力 1.2NoSQL数据库概述 1.2.1什么是NoSQL数据库 1.2.2适用与不适用 ...

  7. 【学习笔记】Mininet 入门

    [学习笔记]Mininet入门实战 课程介绍 Mininet是由一些虚拟的终端节点.交换机.路由器连接而成的一个网络仿真器,它采用轻量级的虚拟化技术使得系统可以和真实网络相媲美. Mininet可以很 ...

  8. Redis 学习笔记八:集群模式

    Redis 学习笔记八:集群模式 作者:Grey 原文地址: 博客园:Redis 学习笔记八:集群模式 CSDN:Redis 学习笔记八:集群模式 前面提到的Redis 学习笔记七:主从复制和哨兵只能 ...

  9. Redis学习笔记(八)redis之lua脚本学习

    redis系列文章目录 使用spring-data-redis实现incr自增 Redis 利用Hash存储节约内存 Redis学习笔记(九)redis实现时时直播列表缓存,支持分页[热点数据存储] ...

最新文章

  1. Windows核心编程的官方网站
  2. Live Writer 在oschina上的代码高亮插件推荐
  3. hyperledger-simple-app
  4. PO RELEASE 采购订单审核(支持多级审核)
  5. 【docker redis】Could not connect to Redis No route to host
  6. 轻松理解之SpringBoot实现原理
  7. 【Error】Provider com.sun.xml.stream.ZephyrParserFactory not found
  8. 短线王的盯盘宝怎么样_2022考研英语韦林全程班怎么样?资源分享
  9. TP的URL设计和SEO支持
  10. 【剑指offer】面试题54:二叉搜索树的第k大节点(java)
  11. 如何通过图片识别用的什么字体?
  12. linux rac节点主机不定时重启,双节点RAC各个节点主机频繁自动重启故障解决
  13. html特殊字符p如何屏蔽 asp,利用asp去除html标记的四种方法
  14. 【前端后端运维】Web开发人员学习路线,汇总整理
  15. 怒爬某 Hub 资源就为撸了一个鉴黄平台
  16. 本地方法栈与Native方法
  17. VS2013/SQL SERVER 产品密钥
  18. 阿里数据服务产品开发及大数据体系(实录/PPT干货)
  19. 赞美CSDN 我去年买了个登山包超耐磨。
  20. 7070mt安装ubuntu dell_戴尔(dell)7070MT台式机装win7系统及分区教程(支持usb驱动)

热门文章

  1. 关系数据库——mysql数据类型大总结
  2. Redis:15---键迁移(move、dump、restore、migrate)
  3. (二十二)深入浅出TCPIP之实战篇—用c++开发一个http服务器
  4. 《Python Cookbook 3rd》笔记(3.11):随机选择
  5. 纠偏的意思_承压能力和纠偏能力,决定成长的高度
  6. 分区和分片的区别_PHP: 分区和分片 - Manual
  7. python输入程序_python程序的输入输出(acm的几个小程序)
  8. 2000年考研英语阅读理解文章三
  9. Weekly Contest 141
  10. JS内置方法(Array)