yRedis入门¶
1.初始Redis¶
1.1认识NoSQL¶
其中,非关系型数据库有很多种,比如:
- 键值类型(Redis)
- 文档类型(MongoDB)
- 列类型(HBase)
- Graph类型(Neo4j)
1.2认识Redis¶
Redis诞生于2009年,全称为 Remote Dictionary Server(远程词典服务器),是一个基于内存的键值型NoSQL数据库。
Redis特征:
- 键值(key-value)型,value支持多种不同的数据结构,功能丰富
- 单线程,每个命令具备原子性
- 低延迟,速度快(基于内存、IO多路复用、良好的编码)
- 支持数据持久化
- 支持主从集群、分片集群(主从集群:从节点可以去备份主节点的数据;分片集群:数据的拆分,一份数据可以拆成多分,分别存储在不同的节点上)
- 支持多语言客户端
2.安装Redis¶
2.1单机安装redis¶
大多数企业都是基于Linux服务器来部署项目,而且Redis官方也没有提供Windows版本的安装包,所以我这里用Ubuntu来安装Redis。
ubuntu安装redis教程:3.Ubuntu安装redis详细教程、Redis 安装 | 菜鸟教程 (runoob.com)
安装完Ubuntu后,就可以开始安装redis了:
(1) 安装 Redis 服务器
sudo apt-get install -y redis-server
(2)redis.conf 是一个默认的配置文件,我们可以根据需要使用自己的配置文件。
找到 redis.conf 对应的目录,如 /etc/redis/redis.conf ,在给文件中修改redis密码(即修改配置文件里的 requirepass
,打开注释,将后面改为想设置的密码)
sudo vim /etc/redis/redis.conf #注意使用管理员权限
(3) 启动 Redis 服务器:使用命令redis-server
启动redis服务器
- 用于测试的客户端程序 redis-cli:
新建一个窗口输入命令redis-cli
,这会打开一个redis提示符:127.0.0.1:6379>
127.0.0.1 是本机 IP,6379 是 Redis 服务器运行端口。键入PING
命令,若返回 PONG 则说明已经成功安装redis。
注意事项:
redis-cli
是redis提供的命令行客户端
redis-server
是redis的服务端启动脚本
redis-sentinel
是redis的哨兵启动脚本
2.2redis服务-后台启动¶
如上所示,我们直接输入命令redis-server,redis服务器将会在前台启动(默认启动方式),这样会阻塞整个会话窗口,窗口按下ctrl+c则redis服务停止,不推荐使用。
如果要让redis以后台方式启动,则必须修改redis的配置文件。
(1)先将该文件备份:
li@LAPTOP-32SOPQVL:/etc/redis$ sudo cp redis.conf redis.cinf.bck
li@LAPTOP-32SOPQVL:/etc/redis$ ls
redis.cinf.bck redis.conf
(2)再修改配置文件, sudo vim /etc/redis/redis.conf
,修改的部分配置如下
# 允许访问的地址,默认是127.0.0.1,会导致只能在本地访问。
# 修改为0.0.0.0则可以在任意IP访问,注意:生产环境不要设置为0.0.0.0 !!
bind 0.0.0.0
# 守护进程,修改为yes后即可后台运行
daemonize yes
# 密码,设置后访问Redis必须输入密码
requirepass 123456
(3)修改之后,输入命令 sudo redis-server /etc/redis/redis.conf
,就可以在后台运行redis服务端了
li@LAPTOP-32SOPQVL:/$ sudo redis-server /etc/redis/redis.conf
li@LAPTOP-32SOPQVL:/$ ps -ef | grep redis #查看端口或者 ps aux | grep redis
root 22196 1 0 21:09 ? 00:00:00 redis-server 0.0.0.0:6379
li 22201 4351 0 21:09 tty2 00:00:00 grep --color=auto redis
(4)后台启动服务端后,因为修改了密码,客户端访问时需要输入密码
Redis报错 : (error) NOAUTH Authentication required (cnblogs.com)
li@LAPTOP-32SOPQVL:~$ redis-cli
127.0.0.1:6379> auth 123456 # 输入密码
OK
127.0.0.1:6379> ping
PONG
- Redis的其它常见配置:
# 监听的端口
port 6379
# 工作目录,默认是当前目录 . ,也就是运行redis-server时的命令,日志、持久化等文件会保存在这个目录
dir .
# 数据库数量,设置为1,代表只使用1个库,默认有16个库,编号0~15
databases 1
# 设置redis能够使用的最大内存
maxmemory 512mb
# 日志文件,默认为空,不记录日志,可以指定日志文件名
logfile "redis.log"
启动Redis:
# 进入redis安装目录
cd /usr/local/src/redis-6.2.6
# 启动,需要管理员权限
redis-server /etc/redis/redis.conf
停止服务:
# 利用redis-cli来执行 shutdown 命令,即可停止 Redis 服务,
# 因为之前配置了密码,因此需要通过 -u 来指定密码
redis-cli -u 123456 shutdown
3.Redis客户端¶
安装完成Redis,我们就可以操作Redis,实现数据的CRUD了。这里需要用到redis的客户端,包括:
- 命令行客户端
- 图形化桌面客户端
- 编程客户端
3.1命令行客户端¶
Redis安装完成后就自带了命令行客户端,在上面已经使用过,打开新窗口,使用方式如下:
redis-cli [options] [commonds]
常见的options有:
-h 127.0.0.1
:指定要连接的redis节点的IP地址,默认是127.0.0.1-p 6379
:指定要连接的redis节点的端口,默认是6379-a 123456
:指定redis的访问密码
commonds是Redis的操作命令,例如:
ping
:与redis服务端做心跳测试,服务端正常会返回pong
不指定commond时,会直接进入redis-cli
的交互控制台:
3.2图形化桌面客户端¶
RedisInsight/RedisDesktopManager: Cross-platform Developer GUI for Redis (github.com)
下载后直接运行.exe文件,一路点击下一步,选择对应的安装目录,完成安装。
安装完毕后,输入连接地址和密码,点击测试,如果连接成功,会显示“连接Redis服务器成功”: