redis基础

文章介绍了Redis的安装过程,包括从下载到编译和启动。接着讲解了如何查看和编辑配置文件,以及使用命令行客户端进行连接和设置密码。文章还详细阐述了Redis的几种主要数据类型,如字符串、哈希、列表、集合和有序集合的使用方法,并给出了基本操作示例。最后,简要提到了Redis的事务功能,但指出其不具备原子性。
摘要由CSDN通过智能技术生成

redis安装

下载地址:http://redis.io/download

# wget http://download.redis.io/releases/redis-6.0.8.tar.gz
# tar xzf redis-6.0.8.tar.gz
# cd redis-6.0.8
# make

# cd src
# ./redis-server

# 也可以通过启动参数告诉 redis 使用指定配置文件使用下面命令启动
# cd src
# ./redis-server ../redis.conf

Redis 配置

Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf(Windows 名为 redis.windows.conf)

查看配置

# 语法
redis 127.0.0.1:6379> CONFIG GET CONFIG_SETTING_NAME

# 实例
redis 127.0.0.1:6379> CONFIG GET loglevel

1) "loglevel"
2) "notice"

# 使用 * 号获取所有配置项:
redis 127.0.0.1:6379> CONFIG GET *

编辑配置

# 语法
redis 127.0.0.1:6379> CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE

# 实例
redis 127.0.0.1:6379> CONFIG SET loglevel "notice"
OK

redis连接命令

客户端登陆

# 语法
redis-cli -h host -p port -a password

# 实例
redis-cli -h 127.0.0.1 -p 6379 -a "mypass"

redis 127.0.0.1:6379> AUTH "password" # 验证密码是否正确
OK
redis 127.0.0.1:6379> PING
PONG

QUIT # 关闭当前连接
SELECT index # 切换到指定的数据库

设置密码

# 我们可以通过以下命令查看是否设置了密码验证
127.0.0.1:6379> CONFIG get requirepass
1) "requirepass"
2) ""

CONFIG set requirepass "runoob" # 设置密码
CONFIG get requirepass # 得到密码

# 实例
127.0.0.1:6379> AUTH "runoob"
OK
127.0.0.1:6379> SET mykey "Test value"
OK
127.0.0.1:6379> GET mykey
"Test value"

Redis 键

# 语法
COMMAND KEY_NAME

# 实例
SET runoobkey redis
DEL runoobkey
EXISTS key
PEXPIRE key milliseconds # 设置过期
TTL key # 以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。
TYPE key # 返回 key 所储存的值的类型

# 还有很多,需要查询文档

Redis 字符串(String)

SET runoobkey redis
GET runoobkey
INCR key # 将 key 中储存的数字值增一。
DECR key # 将 key 中储存的数字值减一。

Redis 哈希(Hash)

HMSET runoobkey name "redis tutorial" description "redis basic commands for caching" likes 20 visitors 23000
HGETALL runoobkey

HDEL key field1 [field2] # 删除一个或多个哈希表字段
HEXISTS key field # 查看哈希表 key 中,指定的字段是否存在。
HGET key field # 获取存储在哈希表中指定字段的值。
HSET key field value # 将哈希表 key 中的字段 field 的值设为 value 。

Redis 列表(List)

LPUSH runoobkey redis
LPUSH runoobkey mongodb
LPUSH runoobkey mysql
LRANGE runoobkey 0 10

LLEN key # 获取列表长度
LPOP key # 移出并获取列表的第一个元素
LPUSH key value1 [value2] # 将一个或多个值插入到列表头部
RPOP key # 移除列表的最后一个元素,返回值为移除的元素

Redis 集合(Set)

SADD runoobkey redis
SADD runoobkey mongodb
SADD runoobkey mysql
SMEMBERS runoobkey

SADD key member1 [member2] # 向集合添加一个或多个成员
SCARD key # 获取集合的成员数
SDIFF key1 [key2] # 返回第一个集合与其他集合之间的差异。
SINTER key1 [key2] # 返回给定所有集合的交集
SPOP key # 移除并返回集合中的一个随机元素

Redis 有序集合(sorted set)

ZADD runoobkey 1 redis
ZRANGE runoobkey 0 10 WITHSCORES

ZADD key score1 member1 [score2 member2] # 向有序集合添加一个或多个成员,或者更新已存在成员的分数
ZCARD key # ZCARD key
ZCOUNT key min max # 计算在有序集合中指定区间分数的成员数
ZSCORE key member # 返回有序集中,成员的分数值

Redis 事务

并不具备原子性,收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行

# 实例
redis 127.0.0.1:6379> MULTI
OK

redis 127.0.0.1:6379> SET book-name "Mastering C++ in 21 days"
QUEUED

redis 127.0.0.1:6379> GET book-name
QUEUED

redis 127.0.0.1:6379> SADD tag "C++" "Programming" "Mastering Series"
QUEUED

redis 127.0.0.1:6379> SMEMBERS tag
QUEUED

redis 127.0.0.1:6379> EXEC
1) OK
2) "Mastering C++ in 21 days"
3) (integer) 3
4) 1) "Mastering Series"
   2) "C++"
   3) "Programming"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值