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

一: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的安装及字符串的基本操作,如果感兴趣的小伙伴可以留言哦。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

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

你可能感兴趣的:(软件测试,redis,数据库,缓存,软件测试,自动化测试,功能测试,程序人生)