mac 安装redis

官网下载指定版本的redis https://redis.io/ 目前3.2.0 是最新最稳定的 版本

这里是历史版本下载

下载指定版本

安装

1.放到自定义目录下并解压

2.打开终端,执行命令

c 复制代码
cd redis的安装目录下
make test -- 此命令的作用是将redis源代码编译成可执行文件,使我们能在服务器上运行redis服务

当出现这个提示表示 编译成功

启动

下载解压后redis文件夹内如此

在终端进入src文件夹下 执行如下命令

c 复制代码
./redis-server --不指定配置文件默认走 redis.conf文件

也可指定配置文件

c 复制代码
./redis-server ../redis.conf --指定配置文件启动redis服务

启动客户端

c 复制代码
./redis-cli

执行简单命令 可查看是否成功

c 复制代码
set 1 1 --存放key为1 value为1的 数据
get 1  --获取key为1 的数据

redis默认是没有密码的 端口号为6379

修改 redis的密码 可在redis.conf 文件中 添加
requirepass yourpassword

启动redis服务时指定 配置文件

启动redis客户端时 指定密码

c 复制代码
redis-cli -a yourpassword

官网下载可视化界面 Redis Insight

redis-cli 终端界面 添加 对应的值

打开刚刚下载的redis insight

里边就可以看到刚刚设置的值 并且还可以更改 更改完 在终端redis-cli也可以看到

redis 配置

c 复制代码
daemonize: 是否以守护进程方式运行,默认为no。设置为yes时,Redis会在后台运行。

pidfile: 当Redis以守护进程方式运行时,可以通过此配置项指定其进程ID文件的位置。

port: Redis监听的端口,默认为6379。

bind: 绑定的主机地址,可以指定Redis只响应特定IP地址的请求。

timeout: 指定客户端闲置多长时间后关闭连接,如果设置为0,则关闭该功能。

loglevel: 指定日志记录级别,Redis支持四个级别:debug、verbose、notice、warning,默认为notice。

logfile: 指定日志文件的路径,如果设置为stdout,则日志会输出到标准输出。

databases: 设置数据库的数量,默认为16。

save: 指定在多长时间内,有多少次更新操作后,将数据同步到磁盘。例如,save 900 1表示900秒内至少有1个更改时进行保存。

rdbcompression: 是否在存储至本地数据库时压缩数据,默认为yes。

dbfilename: 指定本地数据库文件名,默认为dump.rdb。

dir: 指定本地数据库文件存放的目录。

slaveof: 设置当本机为slave服务时,指向的master服务的IP地址及端口。

masterauth: 当master设置了密码保护时,slave服务连接master的密码。

requirepass: 设置Redis连接密码,客户端连接Redis时需要通过AUTH <password>命令提供密码。

maxclients: 设置同一时间最大客户端连接数,默认无限制。

maxmemory: 指定Redis最大内存限制,达到最大内存后,Redis会根据配置的策略处理内存。

maxmemory-policy: 内存达到上限时的清理策略,如volatile-lru、allkeys-lru等。

appendonly: 是否开启AOF持久化,如果不开启,可能会在断电时导致数据丢失。

appendfilename: 指定AOF文件的名称,默认为appendonly.aof。

appendfsync: 指定AOF文件的同步策略,可以设置为no、always或everysec。

vm-enabled: 是否启用虚拟内存机制,该机制将数据分页存放,将访问量较少的数据swap到磁盘上。

vm-swap-file: 虚拟内存文件的路径。

vm-max-memory: 设置使用虚拟内存的阈值。

vm-page-size: 设置swap文件中的页面大小。

activerehashing: 是否激活重置哈希,默认为yes。

hash-max-zipmap-entries: 指定当哈希表中的元素数量或单个元素大小超过一定值时,采用特殊的哈希算法。

include: 指定包含其他配置文件的路径。

redis 常用命令

c 复制代码
#GET key: 获取键的值。
redis-cli GET mykey

#SET key value: 设置键的值。
redis-cli SET mykey "Hello"

#DEL key: 删除键。
redis-cli DEL mykey

#EXISTS key: 检查键是否存在。
redis-cli EXISTS mykey

#EXPIRE key seconds: 设置键的过期时间(秒)。
redis-cli EXPIRE mykey 3600

#TTL key: 获取键的剩余生存时间(秒)。
redis-cli TTL mykey

#KEYS pattern: 查找所有符合模式的键。
redis-cli KEYS "user:*"

#RANDOMKEY: 随机返回一个键。
redis-cli RANDOMKEY

#TYPE key: 获取键的类型。
redis-cli TYPE mykey

#FLUSHDB: 清空数据库中的所有键。
redis-cli FLUSHDB

#FLUSHALL: 清空所有数据库中的所有键。
redis-cli FLUSHALL

#APPEND key value: 如果键存在,向键的值追加内容。
redis-cli APPEND mykey " World"

#STRLEN key: 获取键值的长度。
redis-cli STRLEN mykey

#SETRANGE key offset value: 从指定偏移量开始设置键的值。
redis-cli SETRANGE mykey 0 "New Value"

#GETRANGE key start end: 获取键值的一部分。
redis-cli GETRANGE mykey 0 5

#MSET key value [key value ...]: 同时设置多个键值对。
redis-cli MSET key1 "value1" key2 "value2"

#MGET key [key ...]: 同时获取多个键的值。
redis-cli MGET key1 key2

#INCR key: 将键的值增加1,如果键不存在则开始于1。
redis-cli INCR counter

#DECR key: 将键的值减少1。
redis-cli DECR counter

#LPUSH key value: 将值插入到列表头部。
redis-cli LPUSH mylist "item"

#RPUSH key value: 将值插入到列表尾部。
redis-cli RPUSH mylist "item"

#LRANGE key start stop: 获取列表中的元素范围。
redis-cli LRANGE mylist 0 -1

#LREM key count value: 从列表中移除元素。
redis-cli LREM mylist 1 "item"

#SADD key member [member ...]: 向集合添加元素。
redis-cli SADD myset "value1" "value2"

#SREM key member [member ...]: 从集合中移除元素。
redis-cli SREM myset "value1"

#SISMEMBER key member: 检查元素是否是集合的成员。
redis-cli SISMEMBER myset "value1"

#SUNION key [key ...]: 获取多个集合的并集。
redis-cli SUNION myset myotherset

#SINTER key [key ...]: 获取多个集合的交集。
redis-cli SINTER myset myotherset

#ZADD key score member [score member ...]: 向有序集合添加元素。
redis-cli ZADD myzset 1 "one" 2 "two"

#ZRANGE key start stop [WITHSCORES]: 获取有序集合中的元素范围。
redis-cli ZRANGE myzset 0 -1 WITHSCORES

#ZREM key member [member ...]: 从有序集合中移除元素。
redis-cli ZREM myzset "one"

#HSET key field value: 在哈希表中设置字段的值。
redis-cli HSET myhash field1 "value1"

#HGET key field: 获取哈希表中字段的值。
redis-cli HGET myhash field1

#HGETALL key: 获取哈希表中的所有字段和值。
redis-cli HGETALL myhash

#HDEL key field [field ...]: 从哈希表中删除字段。
redis-cli HDEL myhash field1

#PUBLISH channel message: 向频道发布消息。
redis-cli PUBLISH mychannel "Hello World"

#SUBSCRIBE channel [channel ...]: 订阅频道。
redis-cli SUBSCRIBE mychannel

#UNSUBSCRIBE channel [channel ...]: 取消订阅频道。
redis-cli UNSUBSCRIBE mychannel

#CONFIG GET parameter: 获取当前的配置参数值。
redis-cli CONFIG GET maxmemory

#CONFIG SET parameter value: 设置配置参数的值。
redis-cli CONFIG SET maxmemory 100mb
相关推荐
Kagol14 小时前
macOS 和 Windows 操作系统下如何安装和启动 MySQL / Redis 数据库
redis·后端·mysql
hzulwy15 小时前
Redis常用的数据结构及其使用场景
数据库·redis
ashane131416 小时前
Redis 哨兵集群(Sentinel)与 Cluster 集群对比
redis
Y第五个季节17 小时前
Redis - HyperLogLog
数据库·redis·缓存
Justice link18 小时前
企业级NoSql数据库Redis集群
数据库·redis·缓存
爱的叹息21 小时前
Spring Boot 集成Redis 的Lua脚本详解
spring boot·redis·lua
morris1311 天前
【redis】redis实现分布式锁
数据库·redis·缓存·分布式锁
爱的叹息1 天前
spring boot集成reids的 RedisTemplate 序列化器详细对比(官方及非官方)
redis
weitinting1 天前
Ali linux 通过yum安装redis
linux·redis
纪元A梦1 天前
Redis最佳实践——首页推荐与商品列表缓存详解
数据库·redis·缓存