个人技术分享

https://www.bilibili.com/video/BV1cr4y1671t
https://www.oz6.cn/articles/58

redis

在这里插入图片描述

非结构化有:

  • 键值类型(Redis)
  • 文档类型(MongoDB)
  • 列类型(HBase)
  • Graph:类型(Neo4j)

扩展性:水平即为分布式扩展

redis特征

  • 键值(key-value)型,value支持多种不同数据结构,功能丰富
  • 单线程,每个命令具备原子性(核心功能是单线程,网络处理部分支持多线程)
  • 低延迟,速度快(基于内存、IO多路复用、良好的编码)。
  • 支持数据持久化
  • 支持主从集群、分片集群
  • 支持多语言客户端

redis安装

安装gcc yum install -y gcc tcl

wget https://download.redis.io/releases/redis-6.2.6.tar.gz

解压缩tar -xzf redis-6.2.6.tar.gz

cd redis-6.2.6
make
make install

打开/usr/local/bin目录(该目录为Redis默认的安装目录)
在这里插入图片描述

启动redis

前台启动
任意路径输入 redis-server
在这里插入图片描述

后台启动
须修改Redis配置文件

cp redis.conf redis.conf.bck
vi 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 1325

非必要配置

# 监听的端口
port 6379
# 工作目录,默认是当前目录,也就是运行redis-server时的命令,日志、持久化等文件会保存在这个目录
dir .
# 数据库数量,设置为1,代表只使用1个库,默认有16个库,编号0~15
databases 1
# 设置redis能够使用的最大内存
maxmemory 512mb
# 日志文件,默认为空,不记录日志,可以指定日志文件名
logfile "redis.log"

在vi命令模式中使用搜索方式 ,例如/daemonize,搜索daemonize
或者使用finalshell,修改更方便

启动redis

cd /usr/local/src/redis-6.2.6
# 启动
redis-server redis.conf

查看redis是否运行 ps -ef | grep redis

在这里插入图片描述

关闭redis kill -9 [redis进程对应pid]
在这里插入图片描述

开机自动启动

新建一个系统服务文件
vi /etc/systemd/system/redis.service

[Unit]
Description=redis-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-user.target

重载系统服务 systemctl daemon-reload

可以使用如下命令操作redis

# 启动
systemctl start redis
# 停止
systemctl stop redis
# 重启
systemctl restart redis
# 查看状态
systemctl status redis

redis开机自启 systemctl enable redis

命令行客户端

自带了命令行客户端:redis-cli
redis-cli [options] [commonds]

常见的options有:
-h 127.0.0.1:指定要连接的redis节点的IP地址,默认是127.0.0.1
-p 6379:指定要连接的redis节点的端口,默认是6379
-a 132537:指定redis的访问密码

在这里插入图片描述