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

目录

一、redis数据存储安装

二、登录 

三、操作示例

四、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-p-a
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.SET和GET,SET命令用于将指定的Key设定为对应的Value值。GET命令用于获取指定KeyValue值。

127.0.0.1:6379> set name 'skl'
OK

127.0.0.1:6379> get name 
"skl"
2.EXISTS 和DEL,EXISTS 命令用于判断指定的 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 和DECR,INCR 命令用于对指定的 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.HASH,HASH 命令用于在指定 Key 中设置多个字段的值,也可用于获取指定 Key 中所有字段及其值。
127.0.0.1:6379> HSET user1 name"list" email"[email protected]"
(integer) 1
127.0.0.1:6379> HSET user2 name"Sss" email"[email protected]"
(integer) 1

127.0.0.1:6379> HGETALL user2  #显示user2
1) "nameSss"
2) "[email protected]"
127.0.0.1:6379> 
7.LIST,LIST 命令用于在指定 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 持久化操作。

你可能感兴趣的:(redis,数据库,缓存)