即使再小的帆也能远航!|

程序员少帅

园龄:3年9个月粉丝:2关注:11

📂redis
🔖redis
2022-02-08 15:58阅读: 15评论: 1推荐: 0

Redis入门

Redis简介

Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。

下载地址:https://github.com/microsoftarchive/redis/releases

Redis优势

  • 性能高,读写速度快
  • 支持多种数据类型( Strings, Lists, Hashes, Sets 及 Ordered Sets )
  • 原子性,意思就是要么同时成功执行要么同时失败(与mysql的特性一致)

Redis启动

前戏

想要快速启动redis,就需要配置环境变量
# 注意:在安装redis的过程中会让你勾选配置环境变量的按钮,选上之后自动配置,直接在cmd窗口启动即可

服务端

redis默认的端口号是:6379,我们为了防止端口号已被占用,就会把端口号该成9090
redis-server --port 端口号

输入下列命令启动redis服务端
redis-server --port 9090

客户端

再打开一个cmd窗口
完整命令:redis-cli -h 127.0.0.1 -p 9090 -a password

输入下列命令即可启动客户端  # 端口号要是服务端的端口号
redis-cli -p 9090

这样启动会出现中文乱码问题
解决方案:redis-cli --raw -p 9090   # 启动命令后面加--raw

数据类型

Redis支持五种数据类型:

  • string(字符串)
  • hash(哈希)
  • list(列表)
  • set(集合)
  • zset(sorted set:有序集合)

string(字符串)

语法:
set 键 值
get 键

127.0.0.1:9090> set key '少帅'
OK
127.0.0.1:9090> get key
少帅

注意:一个键最大能存储 512MB。

hash(哈希)

Redis hash 是一个键值(key=>value)对集合。
Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。

del shuai 用于删除前面测试用过的 key
127.0.0.1:9090> del shuai
0
127.0.0.1:9090> hmset shuai field1 'hello' field2 'world'
OK
127.0.0.1:9090> hget shuai field1
hello
127.0.0.1:9090> hget shuai field2
world

list(列表)

"""
Redis 列表是简单的字符串列表,按照插入顺序排序。
你可以添加一个元素到列表的头部(左边)或者尾部(右边)。
"""

127.0.0.1:9090> lpush shuai redis
1
127.0.0.1:9090> lpush shuai mongodb
2
127.0.0.1:9090> lpush shuai mysql
3
127.0.0.1:9090> lrange shuai 0 10  # 0 10是索引,超出和低于范围都不报错,
mysql
mongodb
redis

set(集合)

添加一个 string 元素到 key 对应的 set 集合中,成功返回 1,如果元素已经在集合中返回 0127.0.0.1:9090> sadd shuai redis
1
127.0.0.1:9090> sadd shuai mongodb
1
127.0.0.1:9090> sadd shuai mysql
1
127.0.0.1:9090> smembers shuai
mongodb
mysql
redis
127.0.0.1:9090> sadd shuai mysql
0
127.0.0.1:9090> smembers shuai
mongodb
mysql
redis

zset(sorted set:有序集合)

127.0.0.1:9090> zadd shuai 1 redis
1
127.0.0.1:9090> zadd shuai 2 mongodb
1
127.0.0.1:9090> zadd shuai 3 mysql
1
127.0.0.1:9090> zadd shuai 4 mysql
0
127.0.0.1:9090> zadd shuai 5 mysql
0
127.0.0.1:9090> zrange shuai 0 10
redis
mongodb
mysql
127.0.0.1:9090> zrange shuai 0 10 withscores   # scores 去重
redis
1
mongodb
2
mysql
5

Redis事务

"""
一个事务从开始到执行会经历以下三个阶段:
    开始事务。  MULTI
    命令入队。  发送 EXEC 命令前被放入队列缓存
    执行事务。
    
注:在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。
"""
127.0.0.1:9090> multi
OK
127.0.0.1:9090> set book-name 'learn python'
QUEUED
127.0.0.1:9090> get book-name
QUEUED
127.0.0.1:9090> sadd tag 'python' 'java' 'php'
QUEUED
127.0.0.1:9090> smembers tag
QUEUED
127.0.0.1:9090> exec
OK
learn python
3
php
java
python

本文作者:程序员少帅

本文链接:https://www.cnblogs.com/shaoshuaicoding/articles/15871593.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   程序员少帅  阅读(15)  评论(1编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
展开