首页 > 数据库 >redis的安装与使用

redis的安装与使用

时间:2022-08-31 21:12:07浏览次数:80  
标签:127.0 0.1 redis 6379 key 使用 wather 安装

Redis安装与命令使用

安装:

@1:下载地址:

Download | Redis

@2:安装过程

先把下载好的redis的安装包放到linux服务器的相关位置
https://download.redis.io/releases/redis-6.2.7.tar.gz
1:将redis-6.2.7.tar.gz放置到/opt目录下

2:解压下载好的安装包
tar -xvf redis-6.2.7.tar.gz

3:建立redis的软连接,方便后续的升级
ln -s redis-6.2.7.tar.gz redis

4:进入解压后的目录进行安装

cd /opt/redis-6.2.7

make && make install
注意:需要注意的是安装redis之前一定要确保机器已经安装了gcc,否则编译过程将无法实现

5:make install 之后redis就已经成功安装到了默认的目录下 
/usr/local/bin

启动redis以及Redis客户端连接与关闭reids

由于默认已经安装到了/usr/local/bin目录下,所以reids-server和redis-cli命令可在任意目录下执行

启动reids的命令:
 1:默认启动命令:
redis-server &
 2:启动修改默认端口方式
redis-server --port=端口号 
 3:指定配置文件启动
 redis-server /opt/redis-6.2.7/config/redis.conf
------------------------------------------------------------------------------------

redis客户端连接
 reids-cli -h 127.0.0.1 -p 6379

优雅的关闭redis

 redis-cli shutdown nosave|save  (如果关闭之前要保存redis缓存中的数据则使用参数save,反之使用nosave)

redis各种常用命令

redis设置键值对

>set  key  value  

例如:
设置键为wather 值为clod
>set wather cold

set有几个选项
setnx和setxx
@1:setnx命令  如果存在键,则setnx的返回为结果为0,也就是设置失败
语法: setnx  key

例如:
>setnx wather
(integer)0

@2:setxx命令 如果已存在键,使用该命令可以更新键的值。
语法: set key value xx

例如:
>set wather hot xx
ok
------------------------------------------------------------------
redis获取键的值

>get key

例如:
获取wather的值
>get wather
"clod"
-------------------------------------------------------------------
redis查询所有的键

>keys *

例如:
>keys *
1)"wather"

-------------------------------------------------------------------
redis 设置集合

>rpush key 元素1  元素2 ...元素N

例如:
>rpush mylist a b c d e f g h 
(integer)8

---------------------------------------------------------------------
redis 查询键总数

>dbsize

例如
127.0.0.1:6379>dbsize
(integer)2

-----------------------------------------------------------------------
redis删除键以及删除多个键
1:删除键
>del key
例如
127.0.0.1:6379>del wather
(integet)1

2:删除多个键
>del key1 key2 ....keyN

例如:
127.0.0.1:6379>del wather mylist
(integer)2
----------------------------------------------------------------------------
redis返回键的数据结构类型

>type key

例如:
127.0.0.1:6379>type wather
string
127.0.0.1:6379>type mylist
list

------------------------------------------------------------------------------
redis设置键过期,过期后键会自动删除

>expire key seconds

例如:
127.0.0.1:6379>expire wather 10
(integer)1
使用ttl查看剩余时间 大于0的时候是倒计时的数值剩余时间 -1为没设置过期时间,-2代表键不存在
127.0.0.1:6379>ttl wather
(integer)10
......
127.0.0.1:6379>ttl wather
(integer)1
127.0.0.1:6379>ttl wather
(integer)-2
此时说明已经键被删除,可查询下key的值
127.0.0.1:6379>get wather
(nil)
-------------------------------------------------------------------------------------
redis检查键是否存在 如果存在返回1 不存在返回0

>exists key

例如:
>exists wather
(integer)1
删除了wather之后再去查看是否存在
>del wather
(integer)1
>exists wather 
(integer)0

-----------------------------------------------------------------------------------
redis查看键的内部编码

>object encoding  key

例如:
127.0.0.1:6379>object encoding wather
"embstr"
127.0.0.1:6379>obejct encoding mylist
"quicklist"
------------------------------------------------------------------------------------

redis批量设置值和批量获取值
@1批量设置值
语法: mset key1 value1 key2 value2 ...keyn valuen

例如:
127.0.0.1:6379>set a 1 b 2 c 3 d 4
ok

@2:批量获取值
语法: mget key1 key2 ... keyn

例如:
127.0.0.1:6379>mget a b c d
1) "1"
2) "2"
3) "3"
4) "4"

-------------------------------------------------------------------------------------
reids计数功能
语法
incr key
incr命令用于对值做自增操作,返回结果分三种情况
第一种情况值不是整数,返回错误
第二种情况值是整数 返回自增后的结果
第三种情况键不存在,按照为0开始自增,返回结果为1

例如:

127.0.0.1:6379>incr xxxx
(integer)1
127.0.0.1:6379>incr xxxx
(integer)  2

127.0.0.1:6379>set test hello
ok
127.0.0.1:6379>incr test
(error) ERR value is not integer or out of range

备注:redis计数除了增加还有自减,自增指定数字,自减指定数字,自增浮点数
自减: decr key
自增指定数字: incrby key  increment
自减指定数字: decrby key  decrement
自增浮点数:   incrbyfloat key increment

-------------------------------------------------------------------------------
redis追加值
语法:append key value

例如:
127.0.0.1:6379>get wather
"hot"
127.0.0.1:6379>append wather very
(integer) 7
127.0.0.1:6379>get wather
"hotvery"

---------------------------------------------------------------------------------
redis获取字符串长度
语法:strlen key

例如
127.0.0.1:6379>get wather
"hotvery"
127.0.0.1:6379>strlen wather
(integer) 7


-----------------------------------------------------------------------------------
redis设置并且返回原值
语法:getset key value

例如
127.0.0.1:6379>getset xiao  fan
(nil)
127.0.0.1:6379>getset xiao chen
"fan"

-----------------------------------------------------------------------------------
redis设置指定位置的字符
语法:setrange key offeset value

例如
127.0.0.1:6379>set xiao  achen
ok
127.0.0.1:6379>setrange xiao 0 b
(integer)5
127.0.0.1:6379>get xiao
"bchen"

-------------------------------------------------------------------------------------
redis获取部分字符串
语法:getrange key start  end

例如:
127.0.0.1:6379>getrange xiao 0 3
"bche"










标签:127.0,0.1,redis,6379,key,使用,wather,安装
From: https://www.cnblogs.com/cc66/p/16644528.html

相关文章

  • redis+java简单6位数验证码验证
    实现思路定义一个方法实现随机二维码publicstaticStringgetCode(){//发送六位数验证码Randomrandom=newRandom();Stringcode="......
  • Arch 使用备忘
    目录安装解决问题一段时间不更新,则pgp签名失效美化安装待补解决问题一段时间不更新,则pgp签名失效先单独更新archlinux-keyring包美化......
  • 在visual studio中使用cmake生成dll中的坑
    最近改用visualstudio写c++,把我之前基于MinGW的代码库clon下来在vs中跑,结果不能运行,因为链接器总是莫名奇妙地链接的我想要生成的dll文件同名的lib文件如下图所示文件结......
  • linux中awk的小案例使用
    1.排版整齐的输出第一列与最后一列awk'{printf"%-15s%s\n",$1,$NF}'data2.txt   2.对于数据的每个字段之间进行控制使用print函数打印,如果......
  • java使用Stream简单操作集合
     效果图  本项目使用springbootpom依赖<!--lombok依赖--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <v......
  • 使用正则表达式匹配任意字符包括空格和换行符
    今天在PHP中想使用正则表达式来获取一段文本中的任意字符。于是很随意得就写出如下匹配规则:(.*)结果运行之后才发现,无法获得换行之后的文本。于是查了一下手册,才......
  • 在 node 中使用 jquery ajax
    对于前端同学来说,ajax请求应该不会陌生。jquery真的ajax请求做了封装,可以通过下面的方式发送一个请求并获取相应结果:$.ajax({url:"https://echo.apipost.cn/get.......
  • podman用脚本和dockerfile做apache编译安装镜像(alpine版)
    podman用脚本和dockerfile做apache编译安装镜像(alpine版)alpine系统是什么AlpineLinux是一个基于musllibc和busybox的面向安全的轻量级Linux发行版。alpine系统......
  • django版本配置问题,静态文件,orm,orm的使用
    django版本配置问题解决及其他django初始配置静态文件及相关配置静态文件static动态解析static配置请求方法(GETPOST)request对象方法pycharm链......
  • @vue/cli 安装及'vue' 不是内部或外部命令解决办法
    1、首先安装@vue/clinpminstall-g@vue/cli提示安装成功,版本啥的,忘了截图2、然后vue-V或者vue--version查看版本但是提示'vue'不是内部或外部命令解决办法我......