小当家ISV
互联网高新技术服务商

全球共有10多个国家和地区1000多个平台,20万+商户使用

redis数据存储安装、登录、操作示例、持久化

作者:    陈国庆       发布时间:     2023-11-07          929      分类专栏: 数据库

redis数据存储安装、登录、操作示例、持久化

一、redis数据存储安装

redis数据存储是一种开源的数据存储技术,它提供了一个高性能的键值对存储系统,支持多种数据结构,包括字符串、哈希、列表、集合和有序集合等。Redis 具有内存高速存储和持久化存储的能力,可以用于缓存、会话管理、发布 / 订阅、实时分析等多个领域。Redis 的优点包括高性能、高并发、支持事务和 Lua 脚本、多种数据结构、易于扩展和部署等。同时, Redis 也有一定的缺点,如可用内存容量受限、持久性存储的磁盘 I/O 等待问题等。

[root@localhost ~] yum -y install epel-release

[root@localhost ~] yum -y install redis

 

二、登录

[root@localhost ~] vim /etc/redis.conf  #进入配置文件

# use a very strong password otherwise it will be very easy to break.

#

# requirepass foobared  #在文件中找到此行

  

requirepass 123.com #取消注释,在后面加上你的登录密码

 

[root@localhost ~] systemctl start redis

[root@localhost ~] systemctl restart redis  #重启服务

在终端中输入  redis-cli-h<hostname>-p<port>-a<password>

hostname是redis服务器的主机名或IP地址,port是redis服务i其监听的端口号,passwrod是redis服务器认证的密码。

如果服务器在本地,可以使用默认值: redis-cli

如果 Redis 服务器没有设置密码,则无需使用 `-a` 选项。如果服务器设置了密码,则必须使用 `-a` 选项并提供密码。

登录成功后,可以使用 Redis 命令进行交互。

[root@localhost ~] redis-cli  #我是本机默认登录

127.0.0.1:6379>   #成功登录

127.0.0.1:6379> AUTH 123.com  #验证身份

OK

127.0.0.1:6379>

 

三、操作示例

1. SETGETSET命令用于将指定的Key设定为对应的Value值。GET命令用于获取指定KeyValue值。

127.0.0.1:6379> set name 'skl'

OK

 

127.0.0.1:6379> get name

"skl"

 

2. EXISTS DELEXISTS 命令用于判断指定的 Key 是否存在。 DEL 命令用于删除指定的 Key 及其对应的 Value 值。

127.0.0.1:6379> exists name

(integer) 1

127.0.0.1:6379> del name

(integer) 1

127.0.0.1:6379> EXISTS name

(integer) 0

127.0.0.1:6379>

 

3. KEYS命令用于查找符合指定pattern的所有Key

127.0.0.1:6379> set name2 'root'

OK

127.0.0.1:6379> set name3 'lu'

OK

127.0.0.1:6379> KEYS name*

1) "name"

2) "name3"

3) "name2"

 

4. INCR DECRINCR 命令用于对指定的 Key 做自增操作。 DECR 命令用于对指定的 Key 做自减操作。

127.0.0.1:6379> SET skl 10  #创建

OK

127.0.0.1:6379> INCR skl    #递增

(integer) 11

127.0.0.1:6379> DECR skl    #递减

(integer) 10

127.0.0.1:6379>

 

5. EXPIRETTL EXPIRE命令用于设置指定Key的过期时间,TTL命令用于获取指定Key的剩余过期时间。

127.0.0.1:6379> EXPIRE skl 60   #设置60S过期

(integer) 1

127.0.0.1:6379> TTL skl   #查看time过期时间

(integer) 56

127.0.0.1:6379>

 

6. HASHHASH 命令用于在指定 Key 中设置多个字段的值,也可用于获取指定 Key 中所有字段及其值。

127.0.0.1:6379> HSET user1 name"list" email"list@example.com"

(integer) 1

127.0.0.1:6379> HSET user2 name"Sss" email"sss@example.com"

(integer) 1

 

127.0.0.1:6379> HGETALL user2  #显示user2

1) "nameSss"

2) "emailsss@example.com"

127.0.0.1:6379>

 

7. LISTLIST 命令用于在指定 Key 的列表中插入、获取、删除值。

127.0.0.1:6379> LPUSH skl "task 1"  #将值为“test 1”的元素插入到名为“skl”的列表左侧,并将其设置为列表的第一个元素

(integer) 1

127.0.0.1:6379> LPUSH skl "task 2"

(integer) 2

127.0.0.1:6379> LPUSH skl "task 3"

(integer) 3

127.0.0.1:6379> lrange skl 0 -1   #获取“skl”列表中所有元素,从第一个元素到最后一个

1) "task 3"

2) "task 2"

3) "task 1"

127.0.0.1:6379> lpop skl  #从“skl”列表左侧弹出第一个元素,并返回该元素的值

"task 3"

127.0.0.1:6379>

 

 

四、redis持久化

RDB :将 Redis 在内存中的数据定期 dump 到硬盘上的一个快照文件,用于进行备份和恢复。其优点是安全,可靠且性能高,缺点是在最近一次RDB 文件被 dump 之后的数据丢失风险较高。

[root@localhost ~] vim /etc/redis.conf

 

save 900 1    #表示如果在900秒内有至少1个键值对被修改,Redis就会自动执行一次RDB持久化操作,以便将内存中的数据快照写入到磁盘中。其他两个参数表示进一步的持久化周期设置。

save 300 10

save 60 10000

dbfilename dump.rdb   #持久化文件的名字

dir /var/lib/redis    #持久化文件被保存的目录。

 

[root@localhost ~] systemctl restart redis

 除了在配置文件中手动设置外,可以使用CONFIGSET 命令对 Redis 进行实时配置。使用命令 SET   CONFIG  AUTO-AOF-SYNC  YES可以开启自动 AOF 同步,使用 SAVE 命令可以立即强制执行一次 RDB 持久化操作。

 

所属分类: 数据库
短视频制作的工作流程分为5个步骤
微信小程序怎么链接蓝牙实现打印?

小当家,帮您把生意越做越大!

小当家ISV,重庆APP开发,小程序开发,软件系统开发 地址:重庆市南岸区南坪万达广场写字楼2栋19-6 联系电话:023-81361879

ICP备案号:渝ICP备15003473-1 增值电信业务许可证: 渝B2-15003473 渝公网安备 50010802005103号

友情链接: APP定制开发  小程序定制开发  MagicShop商城系统  酒类行业解决方案 

重庆小当家互联网信息技术有限公司