一文熟悉redis安装和字符串基本操作

软件测试资料领取:[内部资源] 想拿年薪40W+的软件测试人员,这份资料必须领取~

软件测试面试刷题工具:软件测试面试刷题【800道面试题+答案免费刷】

一:redis介绍

NoSQL: Not Only SQL 不仅仅是SQL

NoSQL:是一种概念,是数据库应用的设计理念,解决关系型数据库的瓶颈。

NoSQL特点:容易扩展、高速读写/IO、高性能、高并发、海量数据存储。

NoSQL产品:redis, mongo, hbase等

redis是一个内存型的nosql数据库,是采用c++语言开发的,实现了高可用、高IO的内存数据库。数据存储结构使用了Hash的key-value键值对存储方式,为使用者提供了丰富的数据类型(string字符串、hash哈希、list列表、set 集合和zset有序集合)

二:redis安装

在官网下载redis的zip包,解压redis.zip文件,建议放在D/E盘目录下,然后把存放redis-server.exe文件所在目录路径复制到环境变量的Path中。

新打开一个cmd窗口,输入redis-server,正常执行的情况下,会运行redis服务。

redis网络服务的默认端口为6379。

再新打开一个cmd窗口,输入redis-cli命令,进入redis命令交互环境中。

如何安装永久性的redis服务:

1)关闭临时启动的redis服务

(redis-server命令启动窗口要关闭)

2)执行redis-server

--service-install d:/softs/redis/redis.windows.conf --loglevel verbose命令

在弹出的Redis 2窗口中选择"是"按钮。

3)执行redis-server --service-start 启动redis的后台服务

如果不用redis服务时,可以执行redis-server --service-stop关闭redis后台服务

这样就可以使用redis了。

三:redis的基本使用

首先,选择数据库,redis默认提供了16个数据库,数据库的编号从0开始到15。默认是0数据库

使用命令 select 数据库编号

如:切换到9号库

select 9

常用命令:

查看所有key

命令:keys *

添加key

命令:

set key value

说明: key是键名, value是键对应的值

注意:如果key已存在,则使用新的value替换原value。

如1:添加name键,其值为liubei

set name liubei

如2:添加age键,其值为20

set age 20

如3:修改name的值为lucy

set name lucy

获取key

命令:

get key

如1:获取name的值

get name

如2:获取age的值

get age

删除key

命令:

del key

如:删除age键

del age

设置key过期时间

命令:

expire key seconds

如:设置name的10秒后过期

expire name 10

其它命令

ttl key 查看key的有效存活时间rename oldkey newkey 将原key重命令名为新keymove key dbindex 将key移动指定的数据库下dbsize 查看当前库下的key数量flushdb 清空当前库下的keyflushall 清空所有库下的key

如1:查看name的有效时长(单位是秒)

ttl name

如2:重命名name为sname

rename name sname

如3:将sname移动到2号库

move sname 2

string字符串命令

以上操作默认都是string字符串命令,除此之外,还有一些特定的命令

getset命令

格式:

getset key value

返回key的值,并设置新的value值

如:

getset name lucy

返回name的值,同时设置新值为lucy,如果name不存在,则返回nil

mget命令

获取多个key的value

格式:

mget key key ...

如:获取name,age,sex等key的值

mget name age sex

setnx命令

设置不存在key的值,如果存在key时,不做任何事

格式:

setnx key value

如:设置新的name2的值为killer

setnx name2 killer

mset命令

同时设置多个key的值

格式:

mset key value key value ...

如:同时设置name,age,sex的值为killer,21,F

mset name killer age 21 sex F

setex命令

修改key的值,并同时设置过期时间

格式:

setex key timeout value

如:设置name值为killer888,同时设置过期时间为5秒

setex name 5 killer888

msetnx命令

批量初始化多个key的值

【要求】所有的key不能存在,若有一个已存在的key,则命令无效。

如1:批量初始化city、phone键值为shanghai, 17791699999

msetnx city shanghai phone 17791699999

如2:初始化name和phone键,则会失败

msetnx name killer phone 110

name和phone是已存在的key。

2.4.7 incr和decr命令

提供了自增与自减1的命令 【重点】

格式:

incr key 为key自增1,如果key是新的,则初始为1incrby key number 自增指定的number数值decr key 自减1decrby key number 自减指定的number数值

如:

incr m220299incr m220299incrby m220299 10decr m220299decr m220299decrby m220299 2

append和substr命令

append是向key的value末尾追加新的内容

substr是从key的value值中截取子字符串

格式:

append key newvalue 将newvalue追加到key的value中substr key start end 从start位置开始到end位置结束,截取内容,第一个字符的位置是0

如1: 将,killer追加到name键值上

append name ,killer

其中,killer是追加的新内容

如2:从name的value中截取前4个字符

substr name 0 3

本文只简单介绍了一下redis的安装及字符串的基本操作,如果感兴趣的小伙伴可以留言哦。

既然看到这里,希望点赞收藏支持一下!期待 ~

最后感谢每一个认真阅读我文章的人,下方这份完整的软件测试教程已经整理上传完成,需要的朋友们可以文末自行领取:【保证100%免费】

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
独行soc43 分钟前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘
White_Mountain1 小时前
在Ubuntu中配置mysql,并允许外部访问数据库
数据库·mysql·ubuntu
Code apprenticeship1 小时前
怎么利用Redis实现延时队列?
数据库·redis·缓存
百度智能云技术站1 小时前
广告投放系统成本降低 70%+,基于 Redis 容量型数据库 PegaDB 的方案设计和业务实践
数据库·redis·oracle
装不满的克莱因瓶1 小时前
【Redis经典面试题六】Redis的持久化机制是怎样的?
java·数据库·redis·持久化·aof·rdb
美团测试工程师1 小时前
九大高效的前端测试工具与框架
软件测试·测试工具·jmeter
梦想平凡3 小时前
PHP 微信棋牌开发全解析:高级教程
android·数据库·oracle
TianyaOAO3 小时前
mysql的事务控制和数据库的备份和恢复
数据库·mysql
fpcc3 小时前
跟我学c++中级篇——C++中的缓存利用
c++·缓存
Ewen Seong3 小时前
mysql系列5—Innodb的缓存
数据库·mysql·缓存