Redis学习路线(1)—— Redis的安装

一、NoSQL

SQL VS NoSQL

1、名称

  • SQL 主要是指关系数据库。
  • NoSQL 主要是指非关系数据库。

2、存储结构

  • SQL 是结构化的数据库,以表格的形式存储数据。
  • NoSQL 是非结构化的数据库,以Key-Value(Redis),JSON格式文档(MongoDB),关系图(Neo4j),列类型(HBase)存储数据

3、数据之间的关联性

  • SQL 的数据表之间具有主键-外键关联性。
  • NoSQL 的数据之间相互独立,可以进行嵌套建立伪关联。

4、查询方式

  • SQL 的查询语法是固定的,可以迁移到其它数据库进行查询。
  • NoSQL 的查询语法不固定,每种数据库都有自身的语法

5、事务支持

  • SQL 满足ACID原则(原子性,一致性,隔离性,持久性)
  • NoSQL 满足基本的事务原则,但不完整

6、存储方式

  • SQL 存储在 磁盘
  • NoSQL 存储在 内存

7、扩展性

  • SQL:垂直 (对分布式拆分不友好)
  • NoSQL:水平 (对分布式拆分友好)

8、使用场景

  • SQL
    • 数据结构固定
    • 相关业务对数据安全性、一致性要求高
  • NoSQL
    • 数据结构不固定
    • 对一致性、安全性要求低
    • 对性能要求高

二、Redis

(一)介绍

Redis于意大利人 ANTIREZ 在2009年发布,全称是 ReMote Dictionary Server ,远程词典服务器,是一款基于内存的键值对类型NoSQL数据库。

(二)特点

  • 键值对型: value支持多种不同数据结构,功能丰富
  • 单线程: 每个命令具备原子性
  • 低延迟,速度快: 基于内存、IO多路复用、良好的编码(底层是 C语言
  • 支持数据持久化: 持久化到磁盘
  • 支持主从集群、分片集群: 一种安全策略,避免数据丢失
  • 支持多语言客户端: 可以在多语言的开发中使用

三、安装Redis

(一)单机安装Redis

官方网站: https://redis.io/

1、安装Redis依赖

由于Rdis是基于 C 编写的,所以我们需要安装 gcc 依赖。

yum install -y gcc tcl

2、安装redis

方式一:直接用Docker pull Redis镜像

docker pull redis:6.2.6

方式二:下载压缩包,上传至虚拟机并解压即可

#解压完毕进入redis文件夹
cd redis-6.2.6

#编译redis,默认安装在 /usr/local/bin
make && make install

#运行redis
#	redis-cli:redis提供的命令行客户端
#	redis-server:redis同的服务端启动脚本
#	redis-sentinel:redis的哨兵启动脚本

3、启动

方式一:docker运行方式

#不带密码的运行方式
docker run --name redis -p 6379:6379 -d redis:6.2.6

#带有密码的运行方式
docker run -itd --name redis -p 6379:6379 redis --requirepass "123456"

方式二:默认启动

redis-server

方式三:指定配置启动

1、修改配置文件 redis.conf

# 修改监听地址,0.0.0.0 表示可以被任意IP访问
bind 0.0.0.0

# 守护进程,改为后台运行
daemonize yes

#	设置密码
requirepass 123321

其它配置

# 监听端口
port 6379

#工作目录,默认为当前目录,即运行redis-server的命令,日志,持久化等文件存储的目录
dir .

# 数据库数量,设置为1,表示只是用1个库,默认有16个,编号是0-15
databases 1

# 设置redis能够访问使用的最大内存
maxmemory 512mb

# 日志文件,默认温控,不记录日志,可以指定日志文件名
logfile "redis.log"

2、启动配置文件

redis-server redis.conf

3、停止服务

# 使用redis-cli 执行 shutdown命令,由于设置了密码,需要通过 -u 指定密码进行操作授权
redis-cli  -u 123321 shutdown

方式四:开机自启

redis本身没有关于改机自启的功能,所以我们需要自己编写一个redis服务文件,以提供可用命令。

#创建并浏览redis.service
vi /etc/systemd/system/redis.service

redis.service

[Unit]
Description=redsi.server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
PrivateTmp=true

[Install]
WantedBy=multi-usr.target

重载系统服务并设置自启

#重载系统服务
systemctl daemon-reload

#启动redis
systemctl start redis

#设置自启redis
systemctl enable redis

四、RedisClient

(一)客户端的类型

  • 命令行客户端
  • 图形化客户端
  • 编程客户端

(二)客户端的使用

1、命令行客户端

#如果不指定指令时,会直接进入redis控制台
redis-cli [options] [commonds]

#常见options:
# -h 127.0.0.1 指定连接redis节点的ip
# -p 6379 指定连接redis接口的端口
# -a 123321 指定redis的访问密码

#常见commonds
# ping:与redis做心跳测试,服务端正常返回pong状态

2、图形化客户端

图形化客户端是github的开源项目,Redis图形化客户端(源码)

由于该开源项目,并没有提供windows安装包,所以我们可以采用另外一个开源项目,是为这个开源项目提供Windows安装包,Redis图形化客户端(Windows)

(1)解压缩后,执行安装程序
(2)建立连接

Redis学习路线(1)—— Redis的安装_第1张图片

你可能感兴趣的:(redis,学习,数据库)