【Redis】Redis基础——Redis的安装及启动

一、初识Redis

1. 认识NoSQL

数据结构:对于SQL来说,表是有结构的,如字段约束、字段存储大小等。

关联性:SQL 的关联性体现在两张表之间可以通过外键,将两张表的数据关联查询出完整的数据。

查询方式:

2. 认识 Redis

Redis诞生于2009年全称是Remote Dictionary Server,远程词典服务器 ,是一个基于内存的键值型NoSQL 数据库。

特征

  1. 键值(key-value)型,value支持多种不同数据结构,功能丰富
  2. 单线程,每个命令具备原子性
  3. 低延迟,速度快(基于内存、IO多路复用、良好的编码)。
  4. 支持数据持久化,定期将数据存入磁盘
  5. 支持主从集群、分片集群(把数据存放在不同的集群中)
  6. 支持多语言客户端,如 JAVA、Python

3. 安装Redis及启动的三种方式

大多数企业都是基于Linux服务器来部署项目,而且Redis官方也没有提供Windows版本的安装包。网上找到的window是微软编写的。因此这里基于Linux系统来安装Redis。Redis的官方网站地址https://redis.io/

3.1. 单机安装Redis

1.1 Redis是基于C语言编写的,因此首先需要安装Redis所需要的gcc依赖:

复制代码
yum install -y gcc tcl

1.2 上传安装包至虚拟机任意目录并解压。这里我上传至 /usr/local/src , 解压命令如下

复制代码
tar -zxvf redis-6.2.6.tar.gz

1.3 进入解压后的文件夹

复制代码
cd redis-6.2.6

1.4 编译安装。make是编译,make install 是安装。等待编译下载完成就安装好了redis。

复制代码
make && make install

默认的安装路径是在 /usr/local/bin 目录下,进入该目录查看有哪些文件

该目录以及默认配置到环境变量,因此可以在任意目录下运行这些命令。其中:

redis-cli:是redis提供的命令行客户端

redis-server:是redis的服务端启动脚本

redis-sentinel:是redis的哨兵启动脚本

3.2 启动Redis的三种方式

方式一:默认方式
复制代码
redis-server

这种启动属于`前台启动`,会阻塞整个会话窗口,窗口关闭或者按下`CTRL + C`则Redis停止。不推荐使用。

方式二:指定配置启动

如果需要让redis在后台运行,需要修改Redis配置文件 redis.conf。配置文件在 /usr/local/src/redis-6.2.6 这个目录中。

  1. 先备份这个配置文件,以防万一

    cp redis.conf redis.conf.bck

  2. 修改redis.conf文件中的一些配置,进入后,输入/,在输入内容回车就能搜索到了。

properties

允许访问的地址,默认是127.0.0.1,会导致只能在本地访问。修改为0.0.0.0 则可以在任意IP访问,生产环境不要设置为0.0.0.0 。

bind 0.0.0.0

守护进程,修改为yes后即可后台运行

daemonize yes

密码,设置后访问Redis必须输入密码,这里设置为123456

requirepass 123456

日志文件,默认为空,不记录日志,可以指定日志文件名

logfile "redis.log"

修改上述配置后即可重新启动redis了。Redis的其它常见配置有:

监听的端口

port 6379

工作目录,默认是当前目录,也就是运行redis-server时的命令,日志、持久化等文件会保存在这个目录

dir .

数据库数量,设置为1,代表只使用1个库,默认有16个库,编号0~15

databases 1

设置redis能够使用的最大内存

maxmemory 512mb

  1. 接下来我们就可以启动redis了。进入redis安装目录

    cd /usr/local/src/redis-6.2.6

启动redis

复制代码
# 启动
redis-server redis.conf

此时启动redis后界面没有任何变化,可以使用如下命令查看后台运行的服务。

复制代码
ps -ef | grep redis

停止服务

利用redis-cli来执行 shutdown 命令,即可停止 Redis 服务,因为之前配置了密码,因此需要通过 -u 来指定密码。

停止服务

复制代码
redis-cli -u 123456 shutdown

查看进程状态

复制代码
ps -ef | grep redis

杀死进程,kill -9 进程id , 进程id可以在进程状态中查看

方式三:开机自启
  1. 首先,新建一个系统服务文件:

    vim /etc/systemd/system/redis.service

  2. 添加如下内容

    [Unit]
    Description=redis-server
    After=network.target

    [Service]
    Type=forking

    ExecStart 表示启动服务,

    /usr/local/bin/redis-server 表示redis-server的位置,

    /usr/local/src/redis-6.2.6/redis.conf 是配置文件目录

    ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
    PrivateTmp=true

    [Install]
    WantedBy=multi-user.target

  3. 重载系统服务

    systemctl daemon-reload

  4. 设置开机自启

    systemctl enable redis

可以用以下命令来操作redis

查看redis运行状态

复制代码
systemctl status redis

停止 redis

复制代码
systemctl stop redis

启动 redis

复制代码
systemctl start redis

重启

复制代码
systemctl restart redis

4. Redis 客户端

安装完成Redis,我们就可以操作Redis,实现数据的CRUD了。这需要用到Redis客户端。

4.1 Redis 命令行客户端

Redis 安装后就自带了命令行客户端,redis-cli, 使用方式如下。

复制代码
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

当然,在连接redis时指定密码,还能连接后使用 AUTH 指定用户名和密码,这里我没有用户名,直接指定密码就好了。

不指定commond时,会进入redis-cli的交互控制台:

4.2 图形化桌面客户端

GitHub上的大神编写了Redis的图形化桌面客户端,不过该仓库提供的是RedisDesktopManager的源码,并未提供windows安装包。地址:https://github.com/uglide/RedisDesktopManager

在下面这个仓库可以找到安装包:

https://github.com/lework/RedisDesktopManager-Windows/releases

下载解压后得到一个 exe 后缀的可执行文件,傻瓜式安装即可。下面是连接到Linux中的redis。

相关推荐
尤物程序猿4 分钟前
【2025面试Java常问八股之redis】zset数据结构的实现,跳表和B+树的对比
数据结构·redis·面试
橘猫云计算机设计1 小时前
springboot基于hadoop的酷狗音乐爬虫大数据分析可视化系统(源码+lw+部署文档+讲解),源码可白嫖!
数据库·hadoop·spring boot·爬虫·python·数据分析·毕业设计
卓怡学长1 小时前
w304基于HTML5的民谣网站的设计与实现
java·前端·数据库·spring boot·spring·html5
冰^2 小时前
MySQL VS SQL Server:优缺点全解析
数据库·数据仓库·redis·sql·mysql·json·数据库开发
电商数据girl2 小时前
产品经理对于电商接口的梳理||电商接口文档梳理与接入
大数据·数据库·python·自动化·产品经理
zru_96022 小时前
Docker 部署 Redis:快速搭建高效缓存服务
redis·缓存·docker
axinawang3 小时前
springboot整合redis实现缓存
spring boot·redis·缓存
Spring小子3 小时前
黑马点评商户查询缓存--缓存更新策略
java·数据库·redis·后端
溜溜刘@♞4 小时前
数据库之mysql优化
数据库·mysql
for625 小时前
本地缓存大杀器-Caffeine
缓存·caffeine·本地缓存