热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

01String(键命令)

RedisRedis是一个高性能的Key-Value数据库。学习目标能够描述出什么是nosql能够说出Redis的特点能够根据参考资料修改常用Redis配置能够写出Redis中st

Redis

Redis是一个高性能的Key-Value数据库。

学习目标



  • 能够描述出什么是 nosql

  • 能够说出 Redis 的特点

  • 能够根据参考资料修改常用Redis配置

  • 能够写出Redis中string类型数据的增删改查操作命令

  • 能够写出Redis中hash类型数据的增删改查相关命令

  • 能够说出Redis中 list 保存的数据类型

  • 能够使用StrictRedis对象对string类型数据进行增删改查

  • 能够参考课件步骤搭建 Redis 集群


1、Redis安装

  1、下载:(linux)

wget http://download.redis.io/releases/redis-4.0.9.tar.gz

  2、解压:

tar xzf redis-4.0.9.tar.gz

  3、移动,放到user/local目录下

sudo mv ./redis-4.0.9 /usr/local/redis/

  4、进入Redis目录

cd /usr/local/redis/

  5、生成

sudo make

  6、测试

sudo make test

  7、安装,将redis的命令安装到/user/local/bin/目录

sudo make install

  8、查看安装是否成功

cd /usr/local/bin
ls
-all



  • redis-server redis服务器

  • redis-cli redis命令行客户端

  • redis-benchmark redis性能测试工具

  • redis-check-aof AOF文件修复工具

  • redis-check-rdb RDB文件检索工具

  9、配置文件,移动到/etc/目录下

配置文件目录为/user/local/redis/redis.conf

sudo cp /usr/local/redis/redis.conf /etc/redis/


配置

Redis的配置信息在/etc/redis/redis.conf下。

查看:

sudo vi /etc/redis/redis.conf


核心配置选项

绑定ip:如果需要远程访问,可将此行注释,或者绑定一个真实的ip

bind 127.0.0.1

端口:默认端口6379

port 6379

是否以守护进程运?


  • 如果以守护进程运?,则不会在命令?阻塞,类似于服务

  • 如果以?守护进程运?,则当前终端被阻塞

  • 设置为yes表示守护进程,设置为no表示?守护进程

  • 推荐设置为yes


daemonize yes

数据文件

dbfilename dump.rdb

数据文件存储路径

dir /var/lib/redis

日志文件

logfile "/var/log/redis/redis-server.log"

数据库,默认有16个

database 16

主从复制,类似于双机备份。

slaveof


服务端(了解客户端与服务端的命令)

服务端的命令为redis-server

可以使用help查看帮助文档

redis-server --help

个人习惯:

ps aux | grep redis 查看redis服务器进程
sudo kill
-9 pid 杀死redis服务器
sudo redis
-server /etc/redis/redis.conf 指定加载的配置文件


客户端

客户端的命令为redis-cli

帮助文档:

redis-cli --help

链接redis

redis-cli

运行测试命令

ping

切换数据库

数据库没有名称,默认有16个,通过0-15来标识,连接redis默认选择第一个数据库

select 10


数据结构:

  1、能够写出Redis中string类型数据的增删改查操作命令

  2、能够写出Redis中hash类型数据的增删改查命令

Redis是key-value的数据结构,每条数据都是一个键值对

键的类型是字符串(不能重复)

技术分享图片

 

 值的类型分为五种:

字符串(string),哈希(hash)、列表(list)、集合(set)、有序集合(zset)

数据操作行为:

保存,修改,获取,删除。

String类型

  字符串类型是 Redis 中最为基础的数据存储类型,它在 Redis 中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。

保存

如果设置的键不存在则为添加,如果设置的键已经存在则修改

1、设置键值

set key value
#设置键为name,值为itcast的数据
#set name itcast

2、设置键值及过期时间,以秒为单位

setex key seconds value
#设置键为aa值为cc过期时间为3秒的数据
#
setex aa 3 cc

3、设置多个键值

mset key1 value1 key2 value2
#设置键为“a1”值为“python”,键为a2,值为java,键为a3,值为c
#mset a1 python a2 java a3 c

4、追加值

append key value
#向键为a1中追加值“abc”
#
append a1 haha

技术分享图片

 

 获取

1、根据键获取值,如果不存在此键则返回nil

get key
#获取键name的值
get name

2、根据多个键获取多个值

mget key1 key2
#获取a1,a2,a3的值
mget a1 a2 a3


删除(删除键时会将值删除)

键命令:

1、查找键,参数支持正则表达式

keys pattern
#查看所有键
keys *
#查看名称中包含a的键
keys a*

2、判断键是否存在,如果存在返回1,不存在返回0

exists key1
#判断键a1是否存在
exists a1

3、查看键对应的value的类型

type key
#查看键a1的值类型,为redis支持的五种类型中的一种
type a1

4、删除键及对应的值

del key1 key2
#删除键a2,a3
del a2 a3

5、设置过期时间,以秒为单位,如果没有指定过期时间则一直存在,直到使用DEL移除

expire key seconds
#设置键a1的过期时间为20秒
expire a1 3

6、查看有效时间

ttl key
#查看键a1的有效时间
ttl a1

 


推荐阅读
  • 阿里云 Aliplayer高级功能介绍(八):安全播放
    如何保障视频内容的安全,不被盗链、非法下载和传播,阿里云视频点播已经有一套完善的机 ... [详细]
  • 本文章提供了适用于 Cacti 的多核 CPU 监控模板,支持 2、4、8、12、16、24 和 32 核配置。请注意,0.87g 版本的 Cacti 需要手动修改哈希值为 0021 才能使用,而 0.88 及以上版本则可直接导入。 ... [详细]
  • 从零开始编译Linux系统:第16章 全新起点
    本章将详细介绍如何从零开始编译一套完整的Linux系统,涵盖关键组件如glibc库的介绍及其重要性。通过本文,读者将了解从源代码构建Linux系统的全过程。 ... [详细]
  • JavaSE For循环入门示例
    本文将介绍Java中For循环的基本概念和使用方法,通过几个简单的示例帮助初学者更好地理解和掌握For循环。 ... [详细]
  • 本文介绍了一种使用CSS3和jQuery实现的35款SVG图标加载动画。这些动画不仅视觉效果出色,还能提升用户体验。通过本文,您可以了解如何在项目中应用这些动画。 ... [详细]
  • 本文介绍了如何使用Postman构建和发送HTTP请求,包括四个主要部分:方法(Method)、URL、头部(Headers)和主体(Body)。特别强调了Body部分的重要性,并详细说明了不同类型的请求体。 ... [详细]
  • iOS snow animation
    CTSnowAnimationView.hCTMyCtripCreatedbyalexon1614.Copyright©2016年ctrip.Allrightsreserved.# ... [详细]
  • 第七卷《英才》强调,即使有良药,若不对症,效果也不如低等药物;即使有贤才,若不适用,效果也不如普通人。文中通过多个比喻,阐述了人才使用的重要性,指出合适的人才在适当的时间和场合才能发挥最大效用。 ... [详细]
  • Java EE 平台集成了多种服务、API 和协议,旨在支持基于 Web 的多层应用程序开发。本文将详细介绍 Java EE 中的 13 种关键技术规范,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • 2017年5月9日学习总结
    本文记录了2017年5月9日的学习内容,包括技术分享和相关知识点的深入探讨。 ... [详细]
  • Gty的二逼妹子序列 - 分块与莫队算法的应用
    Autumn 和 Bakser 正在研究 Gty 的妹子序列,但遇到了一个难题。他们希望计算某个区间内美丽度属于 [a, b] 的妹子的美丽度种类数。本文将详细介绍如何利用分块和莫队算法解决这一问题。 ... [详细]
  • 年前,我发表了一篇文章,分享了自己通过在线教育平台学习IT技能的经历。文中详细探讨了在线教育与传统线下教育在技能培训方面的优缺点。许多网友在讨论在线教育时,常常提到“在线教育是否缺乏学习氛围”的问题。本文将对此进行深入分析。 ... [详细]
  • SvpplyTable: 实现可扩展和可折叠的菜单动画
    SvpplyTable 是一个示例项目,旨在实现类似 Svpply 应用程序中的可扩展和可折叠的菜单动画效果。该项目托管在 GitHub 上,地址为 https://github.com/liuminqian/SvpplyTable。 ... [详细]
  • 本文介绍了一种支付平台异步风控系统的架构模型,旨在为开发类似系统的工程师提供参考。 ... [详细]
  • Manacher算法详解:寻找最长回文子串
    本文将详细介绍Manacher算法,该算法用于高效地找到字符串中的最长回文子串。通过在字符间插入特殊符号,Manacher算法能够同时处理奇数和偶数长度的回文子串问题。 ... [详细]
author-avatar
mobiledu2502928483
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有