Redis数据库概述


Redis是什么

  redis是一个高性能的key-value存储系统。支持的value类型相对更多,包括string,list,set,zset(sorted set --有序集合)和hash(哈希)。

Redis 安装

  Linux: sudo apt-get install redis-server(服务端),还需一个连接端;

  Windows:去github直接下载,地址:Redis for windows

       下载后直接通过cmd运行redis-server.exe文件

Redis数据类型

    字符串,散列/哈希,列表,集合,可排序集合

    

    字符串命令

      set id  "ruoniao"        设置变量名id为字符串"ruoniao"
      get id                         获取变量id的值

      getrange id 2 5    获取变量的截取范围

      strlen id          获取字符串长度

      incr/decr      对字符串进行+1 /-1操作(数字字符串)

      append id ‘.com’      在字符串后面添加新的字符串

    

    哈希命令

      hset  age zhang '20'    设置哈希值,age中的键zhang的值为'20'

      hget age zhang           获取age变量zhang的值

      hgetall  age     获取age变量所有的值

      hexists age zhang  age变量中zhang是否存在

      hdel age zhang    删除age中的zhang键值对

      hkeys  age       获取age中的所有键

      hvals age       获取所有的age中的值

    

    列表命令

      lpush/rpush mylist 'test'    从列表左面/右面添加元素

      lrange mylist 0 10        按元素的索引范围输出(跟python的range函数类似)

      blpop/brpop key1 [key2]  timeout   从左边/右边删除一个元素,若报错则等待timeout秒

      lpop/rpop key                        从左边/右边直接删除列表的元素

      llen key          获取列表的长度

      lindex key index          按索引获取列表元素        

    集合命令

      sadd myset 'test1' 'test2'    添加元素到nyset集合变量(重复则不会添加)

      scard myset          获取集合元素个数

      sdiff key1 [key2]           将两个集合做减法(在key1中不在key2中)

      sinter key1 [key2]                        求两个集合的交集

      spop key            随机删除一个元素并返回删除的值

      srandmember key        随机获取一个元素

      smembers key        获取集合的所有元素

    可排序集合

      zadd  myset  0 'value1'  [1 'value2']   添加元素到可排序集合,数字+值得形式

      zrangebyscore myset 0 100    获取数值为0-100的值

      zcount  myset  0 100          获取数值为0-100的值得个数

    基本命令就这些,详细内容可参老Redis文档和命令手册

      


      

Redis数据库概述的更多相关文章

  1. python 全栈开发,Day60(MySQL的前戏,数据库概述,MySQL安装和基本管理,初识MySQL语句)

    一.MySQL的前戏 在学习Mysql之前,我们先来想一下一开始做的登录注册案例,当时我们把用户的信息保存到一个文件中: #用户名 |密码 root|123321 alex|123123 上面文件内容 ...

  2. {MySQL数据库初识}一 数据库概述 二 MySQL介绍 三 MySQL的下载安装、简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 初识sql语句

    MySQL数据库初识 MySQL数据库 本节目录 一 数据库概述 二 MySQL介绍 三 MySQL的下载安装.简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 ...

  3. devilbox(三):在docker中启动带密码的redis数据库

    背景概述: 之前是使用docker搭建了一套集成的开发环境devilbox,也说了这个环境可以自定义.其实搭建这个环境一是为了练习docker使用,二是搭建我们测试环境,主要用到各种数据库,然而安装教 ...

  4. MySQL数据库(1)- 数据库概述、MySQL的安装与配置、初始SQL语句、MySQL创建用户和授权

    一.数据库概述 1.什么是数据(Data) 描述事物的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字.图片,图像.声音.语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机. 在计 ...

  5. MySQL、MongoDB、Redis 数据库之间的区别与使用(本章迭代更新)

    MySQL.MongoDB.Redis 数据库之间的区别与使用 MySQL.MongoDB.Redis 数据库之间的区别与使用(本章迭代更新) update:2019年2月20日 15:21:19(本 ...

  6. Python与数据库[0] -> 数据库概述

    数据库概述 / Database Overview 1 关于SQL / About SQL 构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一 ...

  7. Redis的概述、优势和安装部署

    Redis概述 Redis是一个开源,先进的key-value存储,并用于构建高性能,可扩展的应用程序的完美解决方案. Redis从它的许多竞争继承来的三个主要特点: Redis数据库完全在内存中,使 ...

  8. java 框架-缓冲-Redis 1概述

    https://www.jianshu.com/p/56999f2b8e3b Redis 概述 在我们日常的Java Web开发中,无不都是使用数据库来进行数据的存储,由于一般的系统任务中通常不会存在 ...

  9. MySQL、MongoDB、Redis数据库Docker镜像制作

    MySQL.MongoDB.Redis数据库Docker镜像制作 在多台主机上进行数据库部署时,如果使用传统的MySQL的交互式的安装方式将会重复很多遍.如果做成镜像,那么我们只需要make once ...

随机推荐

  1. Linux 定时运行设置

    脚本设置位置: /etc/cron.d SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # 每个小时的01分钟执行这个脚本 ...

  2. 环境判断:区别h5打开还是weixin打开?

    var source_platform = '' , pf_source = 2; //系统平台 //区别是否是 微信浏览器 , source_platform 系统平台 2018.12.6新增 va ...

  3. opencv基础教程 之 图像基础和绘图

    1,教程:感谢小强 2,用argparse传参数来显示一张图片 #!/usr/bin/python #linux系统 #coding=utf-8 import cv2 import argparse ...

  4. SpringBoot文件的上传与下载

    ⒈文件实体类 package cn.coreqi.security.entities; public class FileInfo { private String path; public File ...

  5. day11 函数的参数列表

    """ 今日内容: 1.函数参数的分类 2.形参是对实参的值拷贝 3.实参的分类 4.形参的分类 5.打散机制 附1:字符串的比较 """ ...

  6. LightOJ 1348 (树链剖分 + 线段树(树状数组))

    题目 Link 分析 典型的树链剖分题, 树链剖分学习资料 Code #include <bits/stdc++.h> using namespace std; const int max ...

  7. NodeJS Addon 多线程通信

    某个产品的Mac客户端计划基于electron实现,因为现有SDK有C API,原理上用NodeJS Addon来封装成JS API就可使用了.但涉及到与Addon多线程交互,翻找资料没能找到到底该怎 ...

  8. iOS 仿抖音 视频裁剪

    1.最近做短视频拍摄.其中的裁剪界面要做得和抖音的视频裁剪效果一样 需求:  裁剪有一个最大裁剪时间.最小裁剪时间.左右拖动可以实时查看对应的视频画面.拖动进度条也能查看对应的画面 .拖动底部视图也能 ...

  9. JS中定义对象和集合

    在js中定义对象: 方式一: var obj = {}; obj['a']=1; obj['b']=2; 方式二: var obj=new Object(); obj.a=1; obj.b=2; 在j ...

  10. PCB载流你必须知道的那些事儿

    也许大家都知道铜箔走线宽度与电流大小有关,往往都是硬件工程师让你走多少就走多少,但作为Layout工程师你还是要知道你的铜皮走线取值都由什么因素决定?取值多大才能让你安心? PCB的载流能力取决与以下 ...