Redis 一个内存数据库,通过 Key-Value 键值对的的方式存储数据。由于 Redis 的数据都存储在内存中,所以访问速度非常快,因此 Redis 大量用于缓存系统,存储热点数据,可以极大的提高网站的响应速度。

Redis通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

String 子串类型 常用基本操作

1.set  键  值     # ------------------------------------设置一个键和对应的值

127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> set name 'www'
OK
127.0.0.1:6379[1]> set name1 'eee'
OK
127.0.0.1:6379[1]> set name2 'rrr'
OK
127.0.0.1:6379[1]> keys *
1) "name2"
2) "name1"
3) "name"

  

2.get  键          #-------------------------------------获取一个键对应的值

127.0.0.1:6379[1]> get name
"www"
127.0.0.1:6379[1]> get name1
"eee"
127.0.0.1:6379[1]> get name2
"rrr"

  

3.setnx  键  值       #---------------------------------设置一个不存在的键,若存在则返回0,设置失败

127.0.0.1:6379[1]> setnx name sss
(integer) 0
127.0.0.1:6379[1]> setnx name3 sss
(integer) 1
127.0.0.1:6379[1]> get name3
"sss"

  

4.setex  键  时间  值      #---------------------------设置一个键值得有效时间

127.0.0.1:6379[1]> setex name6 15 wwwwwwww
OK
127.0.0.1:6379[1]> ttl name6
(integer) 10
127.0.0.1:6379[1]> ttl name6
(integer) 8
127.0.0.1:6379[1]> ttl name6
(integer) 5
127.0.0.1:6379[1]> ttl name6
(integer) -2

  

5.setrange   键   位置   值    #----------------------在键的指定位置插入值

127.0.0.1:6379[1]> setrange name6 0 zzzzzzzz
(integer) 10
127.0.0.1:6379[1]> get name6
"zzzzzzzzww"

  

6.msetnx  键1  值1   键2   值2....   #--------------批量设置不存在的键值

127.0.0.1:6379[2]> msetnx we 'we' er 'er' rt 'rt'
(integer) 1
127.0.0.1:6379[2]> get we
"we"
127.0.0.1:6379[2]> get er
"er"
127.0.0.1:6379[2]> get rt
"rt"

  

7.getset   键   新值                #---------------------获取键值,并设置为新值

127.0.0.1:6379[2]> getset we ew
"we"
127.0.0.1:6379[2]> get we
"ew"

  

8.getrange   键   0   4           #---------------------获取指定范围位置上的值

127.0.0.1:6379[2]> set name '12345678'
OK
127.0.0.1:6379[2]> getrange name 1 3
"234"

  

9.mget   键1   键2  ....          #---------------------批量获取键对应的值

127.0.0.1:6379[2]> mget we er rt
1) "ew"
2) "er"
3) "rt"

10.incr    键                            #---------------------为指定的键值做自加1操作

127.0.0.1:6379[2]> set id 12
OK
127.0.0.1:6379[2]> incr id
(integer) 13
127.0.0.1:6379[2]> incr id
(integer) 14
127.0.0.1:6379[2]> get id
"14"

  

11.incrby 键    值                    #----------------------设置指定键加上指定的值

127.0.0.1:6379[2]> incrby id 14
(integer) 28
127.0.0.1:6379[2]> get id
"28"

  

12.decr   键                            #----------------------指定键的值做自减1操作

127.0.0.1:6379[2]> decr id
(integer) 27
127.0.0.1:6379[2]> decr id
(integer) 26
127.0.0.1:6379[2]> get id
"26"

  

13.decrby  键    值                 #-----------------------设置指定的键值减去指定的值

127.0.0.1:6379[2]> decrby id 12
(integer) 14
127.0.0.1:6379[2]> get id
"14"

  

14.append 键    值                #-----------------------给指定的键值追加

127.0.0.1:6379[2]> set name 'yuliang'
OK
127.0.0.1:6379[2]> append name good
(integer) 11
127.0.0.1:6379[2]> get name
"yulianggood"

15.strlen   键                        #-----------------------求键值的长度

127.0.0.1:6379[2]> strlen name
(integer) 11

  

Redis (非关系型数据库) 数据类型 之 String类型的更多相关文章

  1. Redis (非关系型数据库) 数据类型 之 list列表类型

    Redis列表是简单的字符串列表,按照插入顺序排序.你可以添加一个元素到列表的头部(左边)或者尾部(右边) list即可以作为“栈”也可以作为"队列". 操作: >lpush ...

  2. Redis非关系型数据库

    1.简介 Redis是一个基于内存的Key-Value非关系型数据库,由C语言进行编写. Redis一般作为分布式缓存框架.分布式下的SESSION分离.分布式锁的实现等等. Redis速度快的原因: ...

  3. redis非关系型数据库的基本语法

    导入并连接数据库: import redis # 导入redis模块,通过python操作redis 也可以直接在redis主机的服务端操作缓存数据库 import time # host是redis ...

  4. Redis 非关系型数据库 ( Nosql )

    简介: Redis 是一个开源的,高性能的 key-value 系统,可以用来缓存或存储数据. Redis 数据可以持久化,并且支持多种数据类型:字符串(string),列表(list),哈希(has ...

  5. redis 非关系型数据库

    redis 类型,数据存在磁盘里面,所以存储速度比较快,其他数据类型还是存储在数据库所以比较慢些 链接redis数据库: r=redis.Redis(host="%%%%%%%", ...

  6. python 之操作redis数据库(非关系型数据库,k-v)

    数据库: 1. 关系型数据库 表结构 2. 非关系型数据库 nosql (k - v 速度快),常用的时以下三种: memcache 存在内存里 redis 存在内存里 mangodb 数据还是存在磁 ...

  7. 数据库基础 非关系型数据库 MongoDB 和 redis

    数据库基础 非关系型数据库 MongoDB 和 redis 1 NoSQL简介 访问量增加,频繁的读写 直接访问(硬盘)物理级别的数据,会很慢 ,关系型数据库的压力会很大 所以,需要内存级的读写操作, ...

  8. JavaWeb笔记(十)非关系型数据库Redis

    Redis Redis是一款高性能的NOSQL系列的非关系型数据库 主流的NOSQL产品 键值(Key-Value)存储数据库 相关产品: Tokyo Cabinet/Tyrant.Redis.Vol ...

  9. Redis非关系型缓存数据库集群部署、参数、命令工具

    <关系型数据库与非关系型数据库> 关系数据库:mysql.oracle.DB2.SQL Server非关系数据库:Redis(缓存数据库).MongodDB(处理海量数据).Memcach ...

随机推荐

  1. uwsgi+nginx+django生产环境部署

    1.升级python到2.7版本 2.安装uwsgi 出现uwsgi未找到 yum groupinstall "Development tools"yum install zlib ...

  2. Django2.1在根据models生成数据库表时报 __init__() missing 1 required positional argument: 'on_delete'

    解决办法: a=models.ForeignKey('BookInfo',on_delete=models.CASCADE,) 即在外键值的后面加上 on_delete=models.CASCADE ...

  3. TabError的解决方法

    问题:Python文件运行时报TabError: inconsistent use of tabs and spaces in indentation 原因:说明Python文件中混有Tab和Spac ...

  4. nth-child & nth-of-type区别

    Do l have to 非做不可吗? He is my age. 他和我同岁. Here you are. 给你. No one knows . 没有人知道. 关于nth-child &&a ...

  5. stark组件之搜索【模仿Django的admin】

    一.先看下django的admin是如何做搜索功能的 配置一个search_fields的列表就可以实现搜索的功能 class testbook(admin.ModelAdmin): # 第一步,定义 ...

  6. Linux日志文件分割

    经常有这样的情况,日志文件或者数据文件会变得很庞大,那么每次对这些目标文件的访问或者修改就会变得极其耗时.因而引发一些性能问题,但是如果对这些目标文件进行分割,限定其大小,那么每次的访问或者修改就会变 ...

  7. Windows到Linux的文件上传、下载

    1.使用我们常用的Xshell登录工具,新建立一个远程会话,填写ip地址及用户名密码后,选择最下面的ZMODEM,填写下载的路径.加载的路径:2个路径可以一样也可以不一样: 2.在Linux主机上,安 ...

  8. linux查看目录下所有文件内容中是否包含某个字符串

    转发自:http://blog.csdn.net/yimingsilence/article/details/76071949 查找目录下的所有文件中是否含有某个字符串 find .|xargs gr ...

  9. js验证前后密码是否一致,为什么当我输入不一致密码时,不会弹出警告啊

    <form name="form" action="#"><input type="password" id=" ...

  10. Jmeter常用脚本开发之SOAP/XML-RPC Request

    SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换信息的简单的协议,是一个基于XML的协议: SOAP/XML-RPC Request ...