当前位置: 首页 > news >正文

Redis入门开发

  1. 知识准备
    https://blog.csdn.net/tongxin_tongmeng/article/details/126342599
  2. Redis安装
    1.安装gcc
    yum install gcc-c++
    
    2.下载、解压redis
    目录:cd /home/redis
    下载:wget http://download.redis.io/releases/redis-7.0.4.tar.gz
    解压:tar -zxvf redis-7.0.4.tar.gz
    
    3.编译、安装redis
    目录:cd /home/redis/redis-7.0.4
    编译:make
    安装:make PREFIX=/home/redis/install install(安装目录:/home/redis/install)
    
    4.将/home/redis/redis-7.0.4/redis.conf拖入/home/redis/install
    
    5.编辑/home/redis/install/redis.conf
    解除本机绑定:# bind 127.0.0.1 -::1
    守护方式启动:daemonize yes
    AOF方式持久化:appendonly yes
    AOF持久化策略:appendfsync always
    
    6.启动、关闭redis服务
    目录:cd /home/redis/install
    启动:./bin/redis-server ./redis.conf
    关闭:./bin/redis-cli shutdown
    
    7.查看redis服务
    ps -ef | grep -i redis
    
    8.防火墙打开6379端口权限
    firewall-cmd --zone=public --add-port=6379/tcp --permanent
    firewall-cmd --reload
    
    9.登录、退出客户端
    目录:cd /home/redis/install
    登录:./bin/redis-cli
    退出:quit
    
    10.设置redis密码
    目录:cd /home/redis/install
    登录:./bin/redis-cli
    设置:config set requirepass 123456
    注意:redis服务重启后密码会丢失,需要重新设置密码
    
    11.客户端授权
    目录:cd /home/redis/install
    登录:./bin/redis-cli
    授权:auth 123456
    
    12.redis基本操作
    添加:set key value
    获取:get key
    删除:del key
    获取key:keys *
    
    13.Hash基本操作
    添加:hset hash_name key value
    获取:hget hash_name key
    添加多个:hmset hash_name key1 value1 key2 value2
    获取多个:hmget hash_name key1 key2
    获取全部:hgetall hash_name
    删除:hdel hash_name key1 key2
    获取key:hkeys hash_name
    
    14.List基本操作
    左侧添加多个:lpush list_name value1 value2 value3 value4
    右侧添加多个:rpush list_name value1 value2 value3 value4
    获取index1-index2的数据:lrange list_name index1 index2
    获取全部:lrange list_name 0 -1
    左侧插入元素:lpush list_name value1 value2
    左侧弹出元素:lpop list_name
    右侧插入元素:rpush list_name value1 value2
    右侧弹出元素:rpop list_name
    从左边删除n个6:lrem list_name n 6
    从右边删除n个6:lrem list_name -n 6
    删除所有6: lrem list_name 0 6
    修改index的数据:lset list_name index value
    AAA元素之前插入BBB:linsert list_name before AAA BBB
    AAA元素之后插入BBB:linsert list_name after AAA BBB
    将list_name_1右侧元素移到list_name_2左侧:rpoplpush list_name_1 list_name_2
    
    15.Set基本操作
    添加多个:sadd set_name value1 value2 value3 value4
    获取全部:smembers set_name
    删除多个:srem set_name value1 value2
    差集:sdiff set_name_1 set_name_2
    差集存入set_name_3:sdiffstore set_name_3 set_name_1 set_name_2
    交集:sinter set_name_1 set_name_2
    交集存入set_name_3:sinterstore set_name_3 set_name_1 set_name_2
    并集:sunion set_name_1 set_name_2
    并集存入set_name_3:sunionstore set_name_3 set_name_1 set_name_2
    
    16.ZSet基本操作(根据score从小到大排序)
    添加多个:zadd zset_name score1 value1 score2 value2 score3 value3
    获取全部:zrange zset_name 0 -1
    获取全部(含score从小到大):zrange zset_name 0 -1 withscores
    获取全部(含score从大到小)zrevrange zset_name 0 -1 withscores
    获取score1-score2的数据:zrangebyscore zset_name score1 score2 withscores
    获取score1-score2的数据(只查n个):zrangebyscore zset_name score1 score2 withscores limit 0 n
    AAA的score改为n:zadd zset_name n AAA
    AAA的score加n:zincrby zset_name n AAA
    获取AAA的score:zscore zset_name AAA
    删除AAA:zrem zset_name AAA
    删除index1-index2的数据:zremrangebyrank zset_name index1 index2
    删除score1-score2的数据:zremrangebyscore zset_name score1 score2
    

未完待续 

相关文章:

  • H5页面内嵌到微信小程序和APP,做分享操作
  • 怎么实现文字转语音朗读?这几个小技巧快来码住
  • 人工智能+工业互联网,如何破圈?
  • Vue学习笔记
  • 小红的漂亮串(C++ DP 取模运算)
  • MYSQL高可用集群MHA架构
  • Python进阶(三)-图形界面编程Tkinter(3)
  • Rethinking Image Aesthetics Assessment:Models,Datasets and Benchmarks
  • 人工智能时代的离散数学教学研究
  • frp内网穿透教程2022最新(含内网ssh配置与msf联动配置)
  • TS装饰器
  • PAT 1007 Maximum Subsequence Sum
  • go中的slice
  • 什么是完全的静态分析?
  • 如何在ios手机上使用动态代理?
  • python3.6+scrapy+mysql 爬虫实战
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • Akka系列(七):Actor持久化之Akka persistence
  • Fabric架构演变之路
  • java中的hashCode
  • JS基础篇--通过JS生成由字母与数字组合的随机字符串
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • passportjs 源码分析
  • quasar-framework cnodejs社区
  • Spring Cloud中负载均衡器概览
  • vue 配置sass、scss全局变量
  • 回顾 Swift 多平台移植进度 #2
  • 排序算法之--选择排序
  • 如何解决微信端直接跳WAP端
  • 算法-图和图算法
  • 探索 JS 中的模块化
  • 赢得Docker挑战最佳实践
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • "无招胜有招"nbsp;史上最全的互…
  • #ubuntu# #git# repository git config --global --add safe.directory
  • #使用清华镜像源 安装/更新 指定版本tensorflow
  • (003)SlickEdit Unity的补全
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (bean配置类的注解开发)学习Spring的第十三天
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (四)linux文件内容查看
  • (转)AS3正则:元子符,元序列,标志,数量表达符
  • (状压dp)uva 10817 Headmaster's Headache
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .Net Remoting(分离服务程序实现) - Part.3
  • .NET 发展历程