热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

java学习Redis安装使用

文章目录Redis1、介绍1.1、什么是Redis1.2、Redis优势1.3、Redis的应用场景2、安装2.1、环境准备2.2、上传文件2.3、编译安装2.4、安装配置3、启动


文章目录

    • Redis
      • 1、介绍
        •  1.1、什么是 Redis
        •  1.2、Redis优势
        •  1.3、Redis的应用场景
      • 2、安装
        •  2.1、环境准备
        •  2.2、上传文件
        •  2.3、编译安装
        •  2.4、安装配置
      • 3、启动访问
        •  3.1、前端模式启动
        •  3.2、后端模式启动
        •  3.3、客户端连接
        •  3.4、服务端关闭
        •  3.5、服务器安装


Redis


1、介绍


 1.1、什么是 Redis

  全称:REmote DIctionary Server(远程字典服务器)。是完全开源免费的,用C语言编写的, 遵守BCD协议的一款非关系型数据库。是一个高性能的键值分布式内存数据库,基于内存运行并支持持久化的 NoSQL 数据库,是当前最热门的 NoSql 数据库之一,被人们称为数据结构服务器。

特点:


  • Redis支持 数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
  • Redis不仅仅支持简单的键值类型的数据,同时还提供 list,set,zset,hash 等数据结构的存储,但都是键值方式存储的。
  • Redis支持 数据的备份,即master-slave(主从)模式的数据备份,主机挂掉之后哨兵自动将从机提升。

 1.2、Redis优势


性能极高:Redis能读的速度是110000次/s,写的速度是81000次/s 。



丰富的数据类型:Redis支持多种数据类型操作。



原子:Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行(事务队列)。



丰富的特性:Redis还支持订阅(一发多听), key 过期等等特性。



无锁竞争:采用单线程,避免了不必要的上下文切换和竞争条件。



NIO:使用多路 I/O 复用模型,非阻塞IO。



 1.3、Redis的应用场景

 Redis主要应用在 缓存场景 中,有较高的读取效率。还可以使用在 任务队列数据失效分布式锁 等方面,具体的使用方法还是得看业务场景,也不是都得用缓存来解决,其他的方法也不差。


2、安装


 2.1、环境准备

Redis 是用C语言进行编写的,因此需要有 gcc 的编译环境,直接用 gcc – version 指令,如果失败就没有环境。需要手动的安装一下环境,执行指令即可,遇见选择时直接输入 y ,等待安装完毕。

yum install gcc-c++

 2.2、上传文件

 将下载好的 Redis 压缩包上传到环境中,Redis 可在下面地址中进行下载。上传目录没有要求,放在平常自己使用的安装目录下即可。


Http://redis.io/ 英文地址



Http://www.redis.cn/ 中文地址



 2.3、编译安装

首先 将压缩包进行解压到当前目录下。

tar -zxvf redis-5.0.5.tar.gz

然后 进入到 Redis 的文件目录下进行编译,如果编译不成功就删掉按照步骤再来一次。

cd redis-5.0.5
make

最后 进行安装,还是在当前 Redis 的目录下进行操作,就是将刚才编译完成的可执行文件安装在系统环境中,安装目录可以随便定义,放在正常的安装目录下即可。

make PREFIX=/home/admin/app/redis install

 2.4、安装配置

 进入到刚才安装的目录下,然后进入下面的 bin 目录下,里面存放了 Redis 的 服务器、客户端 等工具。


可执行文件功能
redis-benchmark性能测试工具
redis-check-aofAOF 文件修复工具(持久化文件)
redis-check-dumpRDB 文件检查工具(持久化文件)
redis-cli客户端启动工具
redis-server服务端启动工具

 将解压目录下的 redis-conf 文件复制到安装目录下,用于启动时的配置加载(注意切换目录),然后就可以把压缩包和解压文件给删掉了,留着碍事还占空间。

cp redis.conf /home/admin/app/redis

3、启动访问


 3.1、前端模式启动

 直接执行 redis-server 文件将使用前端模型进行启动,但是启动之后将不能在当前的界面上再进行其余的操作,必须结束后(ctrl + c)才能切换其他命令操作,这种方法启动没啥鸟用。

./redis-server

 3.2、后端模式启动

首先 需要修改配置文件的信息,打开刚才复制的配置文件,找到 daemonizeno 改为 yes,通过守护进程的方式进行启动,换句话说就是后台进程方式。

vim redis-conf

然后 启动服务并在后面添加上配置文件的地址。

./bin/redis-server ./redis-conf

 这时候查看进程就可以发现 Redis 已经在后台运行了,默认访问端口是 6379

ps -ef | grep redis

 3.3、客户端连接

 直接运行客户端连接工具就可以出现类似 mysql 命令行的一个界面工具,表现为 host:port > 这样的形式。

 也可以通过指定主机端口的形式进行连接。

./redis-cli -h host -p port

 对于大多数的人来说还是比较倾向于使用界面化的操作工具来进行数据的操作和查看,工具可以使用的很多,RedisDesktopManager 软件就可以很好的查看数据库中的数据信息。只需要输入相应的主机地址和端口就可以连接访问进行操作了,如果配置了密码还需要进行密码的输入验证。软件可以连接多个数据库信息,也可以全部显示当前数据库下的所有库信息,默认的是 16 个空间。


 3.4、服务端关闭


  • 可以直接将进程进行杀掉,但是这样可能会导致持久化文件的丢失。

kill -9 pid

  • 在客户端连接的时候发送 shutdown 指令正常关闭

127.0.0.1:6379> shutdowm

  • 但是在使用的时候可能会出现不让你关闭的 异常,那个错误说的是没有配置相应的日志文件进行记录,如果出现这种情况的话就需要直接将进程给杀掉,然后重新修改配置文件。找到 logfile 这个位置,在后面添加对应得日志文件得地址即可,文件要先存在。

logfile "/home/admin/app/redis/redis.log"

  • 配置完成之后重新启动服务端工具,通过客户端连接之后就可以正常的结束进程了。

 3.5、服务器安装

 如果使用服务器进行安装的话,直接通过宝塔安装就行,配置文件这些都已经配置好了,但是需要注意的是尽量把端口号改掉,而且要添加访问密钥,不然很快就被植入挖矿了,然后服务器宕机重启。

requirepass 123456

 设置完成之后连接进行操作的时候会提输入密钥,输入完就可以正常进行操作。

auth 123456

就行,配置文件这些都已经配置好了,但是需要注意的是尽量把端口号改掉,而且要添加访问密钥,不然很快就被植入挖矿了,然后服务器宕机重启。

requirepass 123456

 设置完成之后连接进行操作的时候会提输入密钥,输入完就可以正常进行操作。

auth 123456

推荐阅读
  • 为了在Hadoop 2.7.2中实现对Snappy压缩和解压功能的原生支持,本文详细介绍了如何重新编译Hadoop源代码,并优化其Native编译过程。通过这一优化,可以显著提升数据处理的效率和性能。此外,还探讨了编译过程中可能遇到的问题及其解决方案,为用户提供了一套完整的操作指南。 ... [详细]
  • 本文介绍了如何在 Windows 系统上利用 Docker 构建一个包含 NGINX、PHP、MySQL、Redis 和 Elasticsearch 的集成开发环境。通过详细的步骤说明,帮助开发者快速搭建和配置这一复杂的技术栈,提升开发效率和环境一致性。 ... [详细]
  • 基于Node.js的高性能实时消息推送系统通过集成Socket.IO和Express框架,实现了高效的高并发消息转发功能。该系统能够支持大量用户同时在线,并确保消息的实时性和可靠性,适用于需要即时通信的应用场景。 ... [详细]
  • 在CentOS上部署和配置FreeSWITCH
    在CentOS系统上部署和配置FreeSWITCH的过程涉及多个步骤。本文详细介绍了从源代码安装FreeSWITCH的方法,包括必要的依赖项安装、编译和配置过程。此外,还提供了常见的配置选项和故障排除技巧,帮助用户顺利完成部署并确保系统的稳定运行。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • 本文详细介绍了在Linux系统上编译安装MySQL 5.5源码的步骤。首先,通过Yum安装必要的依赖软件包,如GCC、GCC-C++等,确保编译环境的完备。接着,下载并解压MySQL 5.5的源码包,配置编译选项,进行编译和安装。最后,完成安装后,进行基本的配置和启动测试,确保MySQL服务正常运行。 ... [详细]
  • 本文详细介绍了使用 Python 进行 MySQL 和 Redis 数据库操作的实战技巧。首先,针对 MySQL 数据库,通过 `pymysql` 模块展示了如何连接和操作数据库,包括建立连接、执行查询和更新等常见操作。接着,文章深入探讨了 Redis 的基本命令和高级功能,如键值存储、列表操作和事务处理。此外,还提供了多个实际案例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 求助:在CentOS 5.8系统上安装PECL扩展遇到问题
    在 CentOS 5.8 系统上尝试安装 APC 扩展时遇到了问题,具体表现为 PECL 工具无法正常工作。为了确保顺利安装,需要解决 PECL 的相关依赖和配置问题。建议检查 PHP 和 PECL 的版本兼容性,并确保所有必要的库和开发工具已正确安装。此外,可以尝试手动下载 APC 扩展的源代码并进行编译安装,以绕过 PECL 工具的限制。 ... [详细]
  • 在腾讯云服务器上部署Nginx的详细指南中,首先需要确保安装必要的依赖包。如果这些依赖包已安装,可直接跳过此步骤。具体命令包括 `yum -y install gcc gcc-c++ wget net-tools pcre-devel zlib-devel`。接下来,本文将详细介绍如何下载、编译和配置Nginx,以确保其在腾讯云服务器上顺利运行。此外,还将提供一些优化建议,帮助用户提升Nginx的性能和安全性。 ... [详细]
  • 在 CentOS 6.6 系统中搭建 MONO 和 Jexus 以支持 ASP.NET 及 MVC 应用的运行环境配置指南
    本文提供了在 CentOS 6.6 系统上配置 MONO 和 Jexus 以支持 ASP.NET 及 MVC 应用的详细步骤。首先,确保本机环境为 CentOS 6.6,并使用阿里云的 YUM 源来安装必要的软件包,包括 gcc、gcc-c++、bison、pkgconfig 和 glib2-devel。这些软件包是构建和运行 MONO 环境的基础,确保系统能够顺利支持 ASP.NET 和 MVC 应用的部署和运行。 ... [详细]
  • 在CentOS上部署并使用FFmpeg多媒体处理工具
    最近在进行音频处理时需要用到FFmpeg,本文将详细介绍如何在CentOS系统上部署并使用这一强大的多媒体处理工具。首先,从官方网站下载FFmpeg的最新版本,然后通过Xftp工具将下载的压缩包(如ffmpeg-4.3.1.tar.xz)传输到服务器上。接下来,解压文件并按照官方文档进行编译安装。安装完成后,可以通过命令行工具验证FFmpeg是否成功安装,并开始进行多媒体文件的转换和处理。此外,文章还将介绍一些常用的FFmpeg命令和参数,帮助用户快速上手。 ... [详细]
  • 本文详细介绍了使用响应文件在静默模式下安装和配置Oracle 11g的方法。硬件要求包括:内存至少1GB,具体可通过命令`grep -i memtotal /proc/meminfo`进行检查。此外,还提供了详细的步骤和注意事项,确保安装过程顺利进行。 ... [详细]
  • 掌握PHP框架开发与应用的核心知识点:构建高效PHP框架所需的技术与能力综述
    掌握PHP框架开发与应用的核心知识点对于构建高效PHP框架至关重要。本文综述了开发PHP框架所需的关键技术和能力,包括但不限于对PHP语言的深入理解、设计模式的应用、数据库操作、安全性措施以及性能优化等方面。对于初学者而言,熟悉主流框架如Laravel、Symfony等的实际应用场景,有助于更好地理解和掌握自定义框架开发的精髓。 ... [详细]
  • 优化后的标题:PHP分布式高并发秒杀系统设计与实现
    PHPSeckill是一个基于PHP、Lua和Redis构建的高效分布式秒杀系统。该项目利用php_apcu扩展优化性能,实现了高并发环境下的秒杀功能。系统设计充分考虑了分布式架构的可扩展性和稳定性,适用于大规模用户同时访问的场景。项目代码已开源,可在Gitee平台上获取。 ... [详细]
author-avatar
lixinglon257
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有