1.配置阿里云yum源

  下载配置文件
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  生成缓存
    yum makecache

2.安装redis

2.1 安装依赖

yum install -y gcc-c++ gcc tcl

2.2 上传压缩包并解压

  tar -xvf redis-3.0.0.tar.gz

2.3 编译

  cd redis-3.0.0

  make

  # make test

创建安装目录

  mkdir -p /usr/local/soft/redis

安装

  make PREFIX=/usr/local/soft/redis install

2.4 复制配置文件

  cp /usr/local/soft/redis-3.0.0/redis.conf /usr/local/soft/redis/bin/

配置环境变量

  vim /etc/profile

增加

  export REDIS_HOME=/usr/local/soft/redis/

在PATH后面增加 $REDIS_HOME/bin

使环境变量生效
source /etc/profile

5、启动redis

后台启动

  cd /usr/local/soft/redis/bin

  nohup redis-server redis.conf &

关闭redis
  ps -aux | grep redis

  kill -9

6、连接redis

  redis-cli

插入一条数据

  set key1 value1

查询数据

  get key1

3.Redis的使用

设置字符串

    SET key value [EX seconds] [PX milliseconds] [NX|XX]

    EX 设置过期时间,秒,等同于SETEX key seconds value

    PX 设置过期时间,毫秒,等同于PSETEX key milliseconds value

    NX 键不存在,才能设置,等同于SETNX key value

    XX 键存在时,才能设置

设置多个键的字符串值

  MSET key value [key value ...]

键不存在时,设置字符串值

    MSETNX key value [key value ...]

注意:这是原子操作 设置时有一个错误就全部错误

过期

Redis中可以给Key设置一个生存时间(秒或毫秒),当达到这个时长后,这些键值将会被自动删除

设置多少秒或者毫秒后过期

EXPIRE key seconds PEXPIRE key milliseconds

设置在指定Unix时间戳过期

EXPIREAT key timestamp PEXPIREAT key milliseconds-timestamp

删除过期

PERSIST key

查看剩余生存时间

TTL key(返回时秒数)

PTTL key(返回毫秒数)

key存在但没有设置TTL,返回-1 key存在,

但还在生存期内,返回剩余的秒或者毫秒 key曾经存在,

但已经消亡,返回-2(2.8版本之前返回-1)

查找键

KEYS pattern

pattern取值

*

任意长度字符 ?

任意一个字符 [] 字符集合,表示可以是集合中的任意一个

键类型

TYPE key

键是否存在

EXISTS key

键重命名

RENAME key newkey

RENAMENX key newkey

键删除

DEL key [key ...]

FLUSHALL(删除所有键值对)

获取值

GET key

获取多个给定的键的值

MGET key [key ...]

返回旧值并设置新值

GETSET key value 如果键不存在,就创建并赋值

字符串长度

STRLEN key

追加字符串

APPEND key value 如果键存在就追加;如果不存在就等同于SET key value

获取子字符串

GETRANGE key start end 索引值从0开始,负数表示从字符串右边向左数起,-1表示最有一个字符

覆盖字符串

SETRANGE key offset value

步长1的增减

INCR key

DECR key

字符串值会被解释成64位有符号的十进制整数来操作,结果依然转成字符串

步长增减

INCRBY key decrement

DECR key decrement

字符串值会被解释成64位有符号的十进制整数来操作,结果依然转成字符串

4.Redis位图的使用

位图不是真正的数据类型,它是定义在字符串类型中

一个字符串类型的值最多能存储512M字节的内容

位上限:2^(9+10+10+3)=2^32b

a --> 01100001
b --> 01100010

and
BITOP and dest1 a b
a and b ---> 0110 0000

or
BITOP or dest2 a b
a or b --> 01100011

xor
BITOP xor dest2 a b
a or b --> 00000011

not
BITOP not dest4 a
a ---> 10011110

redis的数据再内存中,位运算效率极高

可以通过getbit命令来获取dest*的每一个值

设置某一位上的值

  SETBIT key offset value

  offset偏移量,从0开始 value不写,默认是0

获取某一位上的值

  GETBIT key offset

返回指定值0或者1在指定区间上第一次出现的位置

  BITPOS key bit [start] [end]

注意:

  除了 NOT 操作之外,其他操作都可以接受一个或多个 key 作为输入

  当 BITOP 处理不同长度的字符串时,较短的那个字符串所缺少的部分会被看作 0

  空的 key 也被看作是包含 0 的字符串序列

统计指定位区间上值为1的个数

BITCOUNT key [start] [end]

从左向右从0开始,从右向左从-1开始,注意官方start、end是位,测试后是字节

BITCOUNT testkey 0

0表示从索引为0个字节到索引为0个字节,就是第一个字节的统计

BITCOUNT testkey 0

-1等同于BITCOUNT testkey 最常用的就是 BITCOUNT testkey

Redis单节点安装与使用的更多相关文章

  1. Redis02——Redis单节点安装

    Redis单节点安装 一.Redis的数据类型 string hash list set zset 二.安装 2.1.下载 wget http://download.redis.io/releases ...

  2. redis单节点安装及cluster的安装

    单点安装 wget http://download.redis.io/releases/redis-4.0.2.tar.gz tar zxvf redis-4.0.1.tar.gz -C /usr/l ...

  3. redis 单节点安装

    wget http://download.redis.io/releases/redis-5.0.3.tar.gz 1.下载解压 2.make编译 3.提示没有安装安装gcc,安装gcc yum in ...

  4. 【Redis学习之三】Redis单节点安装

    本文介绍两个版本:redis-2.8.18.tar.gz 和 redis-3.0.0-rc2.tar.gz,均采用源码安装方式 一.redis3.0 部署环境 redis-3.0.0-rc2.tar. ...

  5. Redis单节点数据同步到Redis集群

    一:Redis集群环境准备 1:需要先安装好Redis集群环境并配置好集群 192.168.0.113 7001-7003 192.168.0.162 7004-7006 2:检查redis集群 [r ...

  6. Hadoop介绍及最新稳定版Hadoop 2.4.1下载地址及单节点安装

     Hadoop介绍 Hadoop是一个能对大量数据进行分布式处理的软件框架.其基本的组成包括hdfs分布式文件系统和可以运行在hdfs文件系统上的MapReduce编程模型,以及基于hdfs和MapR ...

  7. hbase伪分布式安装(单节点安装)

    hbase伪分布式安装(单节点安装) http://hbase.apache.org/book.html#quickstart   1.    前提配置好java,环境java变量     上传jdk ...

  8. vertica单节点安装教程

    [准备] 1.CentOS 7.6的镜像盘(下载地址:官网) 2.vertica-9.1.0-0.x86_64.RHEL6(下载地址:https://pan.baidu.com/s/1IjWBUTku ...

  9. 二、hdfs单节点安装

    一.准备环境 在配置hdfs之前,我们需要先安装好hadoop的配置,本文主要讲述hdfs单节点的安装配置. hadoop的单节点安装配置请参考:https://www.cnblogs.com/lay ...

随机推荐

  1. CF427B

    没人用ST表么?他比线段树快. 考虑先把ST表跑下来,然后循环一遍区间的起点,看一下这个区间的最大值,和 \(t\) 比较一下即可. 然后这题就做完了.ST表裸题. int f[2000010][21 ...

  2. Object.defineProperty 中 get set 用法

    就是两个函数,只要搞清楚get.set的执行时机就可以了.执行时机如下代码: <!DOCTYPE html> <html lang="en"> <he ...

  3. Nginx 配置错误导致漏洞

    目录 1.CRLF注入漏洞 2.目录穿越漏洞 参考链接 1.CRLF注入漏洞 CRLF是"回车+换行"(\r\n)的简称,其十六进制编码分别为0x0d和0x0a.先看payload ...

  4. 用 getchar putchar 来输入和接收 但是要清空缓冲区

    1 //用 getchar putchar 来输入和接收 但是要清空缓冲区 2 3 #include <stdio.h> 4 int main() 5 { 6 char ch1,ch2; ...

  5. 干了5年Android开发,突然感觉自己啥也不会,啥也不想干,还要继续吗?

    这是在某论坛看到的一名同行的吐槽: 我干了差不多5年,不过给人感觉跟只有两三年的人一样. 我觉得我不适合干程序员,主要是新东西的接受能力比其他人慢,Android技术又更新得很快,感觉总是跟不上.年纪 ...

  6. KMP算法的详细解释

    什么是kmp算法呢?这是一个处理字符串的算法,用来判断给出的模式串p是否存在于文本串t中(p的长度小于t). 在本文中,字符串储存在字符数组中,并且第一个字符放在下标为1的元素中. 那么如何理解kmp ...

  7. SpringBoot-静态资源加载-源码

    目录 静态资源映射规则 什么是webjars 呢? 第二种静态资源映射规则 参考链接 静态资源映射规则 SpringBoot中,SpringMVC的web配置都在 WebMvcAutoConfigur ...

  8. MySQL-16-主从复制进阶

    延时从库 介绍 延时从库: 是我们人为配置的一种特殊从库,人为配置从库和主库延时N小时 为什么要有延时从库 数据库故障 物理损坏,普通的主从复制非常擅长解决物理损坏 逻辑损坏,普通主从复制没办法解决逻 ...

  9. MySQL-10-索引应用规范

    建立索引的原则 SQL文件 sql文件下载链接: https://alnk-blog-pictures.oss-cn-shenzhen.aliyuncs.com/blog-pictures/world ...

  10. MySQL-02-体系结构

    MySQL体系结构 c/s模型介绍 连接MySQL # TCP/IP方式(远程.本地) mysql -uroot -pAlnk123 -h 10.0.0.51 -P3306 # Socket方式(仅本 ...