linux系统非关系型数据库redis

redis

介绍

redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库

redis的官网:redis.io
redis的特点:
shell 复制代码
丰富的数据结构
支持持久化
支持事务
支持主从
缓存
shell 复制代码
类型
数据缓存 
页面缓存(Smarty) 
在开发网站的时候如果有一些数据在短时间之内不会发生变化,而它们还要被频繁访问,为了提高用户的请求速度和降低网站的负载,就把这些数据放到一个读取速度更快的介质上(或者是通过较少的计算量就可以获得该数据) ,该行为就称作对该数据的缓存。该介质可以是文件、数据库、内存,内存经常用于数据缓存

形式
页面缓存经常用在内存管理系统里边 
数据缓存经常用在页面的具体数据里边 

redis和memcache比较 
Redis不仅仅支持简单的k/v类型的数据,同时还提供了list,set,zset,hash等数据结构的存储 
Redis支持master-slave(主-从)模式应用 
Redis支持数据的持久化

安装

安装单机版redis
yum安装版本固定,不能达到我们的需求
yum -y install redis
shell 复制代码
使用编译安装

mkdir -p /data/application     //创建工作目录

cd  /data/application
wget http://download.redis.io/releases/redis-5.0.10.tar.gz   //下载redis

tar xf redis-5.0.10.tar.gz    //解压

mv redis-5.0.10/ redis

cd redis/

yum install -y gcc make     //安装编译工具

make       //编译安装

cp redis.conf redis.conf.bak     //备份编译后的配置文件

vim redis.conf     //配置文件
bind 0.0.0.0            #所有ip可以访问
daemonize yes         #开启后台模式将on改为yes
timeout 300          #连接超时时间
port 6379                #端口号
dir /data/application/redis/data  #本地数据库存放持久化数据的目录该目录-----需要存在
pidfile /var/run/redis_6379.pid   #定义pid文件存放位置
logfile /var/log/redis.log        #定义log文件存放位置

创建存放数据的目录
mkdir -p /data/application/redis/data
shell 复制代码
配置redis为systemctl启动

cd /lib/systemd/system
vim redis.service

[Unit]
Description=Redis
After=network.target

[Service]
ExecStart=/data/application/redis/src/redis-server /data/application/redis/redis.conf --daemonize no
ExecStop=/data/application/redis/src/redis-cli shutdown

[Install]
WantedBy=multi-user.target
===================================
参数详解:
[Unit] 表示这是基础信息 
Description 是描述
After 是在那个服务后面启动,一般是网络服务启动后启动

[Service] 表示这里是服务信息 
ExecStart 是启动服务的命令
ExecStop 是停止服务的指令

[Install] 表示这是是安装相关信息 
WantedBy 是以哪种方式启动:multi-user.target表明当系统以多用户方式(默认的运行级别)启动时,这个服务需要被自动运行。
=====================================
启动服务:
systemctl daemon-reload
systemctl start redis.service


配置环境变量启动
vim /etc/profile
export PATH=$PATH:/redis文件目录/src

source /etc/profile    刷新环境变量文件


启动
redis/src/redis-server redis/redis.conf --daemonize yes   //本机


停止
redis/src/redis-cli shutdown    //本机
redis/src/redis-cli -h ip -p 端口  shutdown 
redis的相关工具
shell 复制代码
./redis-benchmark     #用于进行redis性能测试的工具 
./redis-check-dump    #用于修复出问题的dump.rdb文件	
./redis-cli           #redis的客户端
./redis-server        #redis的服务端
./redis-check-aof     #用于修复出问题的AOF文件
./redis-sentinel      #用于集群管理
相关推荐
sun00770037 分钟前
ubuntu增加swap交换空间
linux·运维·服务器
LinuxST1 小时前
27、基于Firefly-rk3399中断休眠唤醒实验(按键中断)
linux·开发语言·stm32·嵌入式硬件
跳动的梦想家h1 小时前
黑马点评 秒杀下单出现的问题:服务器异常---java.lang.NullPointerException: null(已解决)
java·开发语言·redis
Diamond技术流1 小时前
从0开始学习Linux——环境变量详解
linux·服务器·学习·centos·软件安装·环境变量
疯狂吧小飞牛1 小时前
openssl创建自签名证书
linux·服务器·ssl
qhd吴飞2 小时前
在linux下用二进制方式安装mysql8
linux·运维·服务器
水饺编程2 小时前
【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-32
linux·嵌入式硬件·fpga开发·硬件架构
YiSLWLL3 小时前
Django+Nginx+uwsgi网站使用Channels+redis+daphne实现简单的多人在线聊天及消息存储功能
服务器·数据库·redis·python·nginx·django
清心歌3 小时前
Redis入门(九)
数据库·redis
烟雨长虹,孤鹜齐飞3 小时前
【分布式锁解决超卖问题】setnx实现
redis·分布式·学习·缓存·java-ee