Redis进阶实践之二如何在Linux系统上安装安装Redis

一、引言

      上一篇文章写了“如何安装VMware Pro虚拟机”和在虚拟机上安装Linux操作系统。那是第一步,有了Linux操作系统,我们才可以在该系统上安装Redis。从第一篇文章开始,这也是我正式开始了学习Redis之旅。说起Redis,很早以前就接触过,也用过,但是很多知识点都是零零散散,没有形成系统。正好现在有时间,就好好的专研一下,把知识点从点形成一个无边的面。我以前很多Redis的操作是基于Windows操作系统的,基于Linux系统的操作很少,从这次开始两个系统都要写进来,基于多系统形成独立的客户端代码,让自己的理解更全面。Linux上学的时候接触过,后来接触的就比较少了,总是和Windows系统打交道,我也会独立开一个栏目,写有关Linux操作系统的东西。好了,话不多说,我们开始今天的课程。

二、准备工作

     在Linux操作系统上安装Redis,其实并不复杂,可以说是很简单,但是第一次接触的,如果不是很清楚,也会有很多坑等着你的。这些坑我已经都填满了,只要大家按着我写的来做,基本不出问题。保险点,我说的是“基本”,哈哈。我们先来做准备的工作,这些准备的工作就是填坑的。

     2.1、在Linux系统上安装对wget命令的支持

           在Linux系统上安装Redis有两种方法,第一种方法是在线直接下载、解压、编译安装,第二种方法就是我们直接从官网下载安装包,然后上传到Linux服务器,继续解压、编译,我选择的是第二种方法,第一种安装方法就是Redis官网的步骤,步骤如下:

安装过程

1、下载,解压,然后,编译Redis程序:

$ wget http://download.redis.io/releases/redis-4.0.6.tar.gz
$ tar xzf redis-4.0.6.tar.gz
$ cd redis-4.0.6
$ make

编译之后,会在src目录下生成 redis-server,redis-cli等相关文件。启动Redis服务:

$ src/redis-server

现在你可以使用Redis客户端和其服务端进行交互:

$ src/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"

      官网就是使用wget命令来下载Redis软件包的,如果Linux系统没有提前安装该命令,就会出现如下错误:-bash:wget command not found,很明显没有安装wget软件包。一般linux最小化安装时,wget不会默认被安装。针对这个问题有两种解决方案:

              2.1.1)、rpm 安装

                          rpm 下载源地址:http://mirrors.163.com/centos/6.2/os/x86_64/Packages/

                         下载wget的RPM包:http://mirrors.163.com/centos/6.2/os/x86_64/Packages/wget-1.12-1.4.el6.x86_64.rpm

                         rpm ivh wget-1.12-1.4.el6.x86_64.rpm 安装即可。

                         如果客户端用的是SecureCRT,linux下没装rzsz 包时,rz无法上传文件怎么办?我想到的是安装另一个SSH客户端:SSH Secure Shell。然后传到服务器上安装,这个比较费劲,所以推荐用第二种方法,不过如果yum包也没有安装的话,那就只能用这种方法了。

               2.1.2)、yum安装

                         命令如下: yum -y install wget

                         显然第二种方法比较简单快捷。

    2.2、在Linux系统上安装gcc命令的支持

            我们说过,Redis需要下载,解压,然后是编译,那我们用什么来编译呢?那就是gcc,如果第一次安装Linux系统,gcc命令是不被安装的,执行命令会出现如下错误:gcc:comman not found,所以我们提前安装就可以了。安装命令很简单。

            解决方法:安装gcc
            命令如下:yum install gcc

     2.3、在Linux系统上安装队vim命令的支持

           当我们下载,解压和编译好Redis之后,有一个工作需要做,那就是修改redis的配置文件,配置文件的名称是redis.conf,那我们如何打开配置文件并编辑呢,就是通过vim命令,当然该命令默认也是未安装的,运行会出现如下错误:command not found。我们安装吧。

            命令如下:yum install vim


   2.4、如果 ifconfig命令不能使用,提示:command not found。

           命令如下:yum install net-tools,安装之后就可以使用

   2.5、创建存放Redis软件包的目录

           我的目录结构是:/root/software/download/redis/,通过mkdir命令创建该目录

   2.6、创建存放Redis运行文件的目录

           我的目录结构是:/root/application/program/redis-tool/,通过mkdir命令创建该目录

   2.7、创建存放Redis日志的目录

           我的目录结构是:/root/application/program/redis-tool/logs/redis.log(日志名称自己定义)

   2.8、创建存放Redis持久化数据的目录

         我的目录结构是:/root/application/program/redis-tool/datas/

三、安装步骤

     准备工作做完了,现在我们就开始安装Redis吧。一切很顺利,为了初学者看得明白,我尽量以截图的形式来说明,我们开始吧。首先要说明的是,在Linux里面,有些是涉及到目录的操作,如果在当前目录下,可以直接操作,如果没有在当前目录下,操作的目录需要指定绝对路径。

    3.1、去Redis官网下载软件包,地址如下:https://redis.io/download,下载最新的版本的软件包就可以了,当前版本是4.0.6。
          
               



    3.2、通过远程管理工具SSH Secure File Transfer Client,将Redis压缩包拷贝到Linux服务器中,放在/root/software/download/redis/目录下。

            



    3.3、在Linux服务器上,通过cd 命令进入 software/download/redis/目录下,然后,本地解压redis最新的压缩包文件。执行命令:tar zxvf redis-4.0.6.tar.gz

cd software/download/redis/  进入到当前目录下,然后在执行操作

 

tar zxvf redis-4.0.6.tar.gz   在当前目录下执行解压

 
          



    3.4、解压完成会在当目录 “/root/software/download/redis/”生成一个以redis-4.0.6为名称的文件夹,进入解压缩后的文件夹:cd redis-4.0.6,下面使用ll命令,或者使用ls -l(是L的小写),查看文件结构:

当前目录是:/root/software/download/redis/

cd redis-4.0.6 进入解压后文件夹根目录

ll 查看文件或者目录结构(2个L的小写)

 
          



    3.5、在当前redis-4.0.6根目录下,执行make命令对Redis解压后文件进行编译。

        



         编译完成如图:

        



    3.6、编译完成后,在Src目录下,有四个可执行文件redis-server、redis-benchmark、redis-cli和redis.conf(此文件在根目录下面,没有在src目录下面)。然后拷贝到一个目录下。

当前目录:
/root/software/download/redis/redis-4.0.6/src

 
         

         mkdir -p /application/program/redis-tool/  该目录用于存放Redis运行文件

         cp redis-server(Redis的服务器端) /root/application/program/redis-tool/

         cp redis-benchmark(测试工具) /root/application/program/redis-tool/

         cp redis-cli(Redis的客户端) /root/application/program/redis-tool/

         cp redis.conf(Redis的配置文件) /root/application/program/redis-tool/

         cd application/program/redis-tool/

 
    3.7、通过cd 命令进入 application/program/redis-tool/目录,通过vim命令修改redis.conf的配置文件。
 

cd application/program/redis-tool/

         

vim ./application/program/redis-tool/redis.conf

 
      修改项目如下:

               3.7.1、bind地址修改:bind 127.0.0.1   改为  改成你的地址,比如,我的IP地址是192.168.127.128

                        



               3.7.2、port端口号:port 6379        可以修改,也可以保持不变

                         



                3.7.3、logfile日志文件: logfile(日志文件的地址)              “/root/application/program/redis-tool/logs/redis.log”日志的文件名自己定义

                        



                3.7.4、datafile持久化文件地址: dir /root/application/program/redis-tool/datas

                          



    3.8、redis.conf配置文件修改完毕,保存退出(按ESC,然后按:冒号,最后输入wq,保存退出)。启动Redis的服务器端。cd /回到根目录,执行以下命令:

这是在根目录下操作的
./application/program/redis-tool/redis-server ./application/program/redis-tool/redis.conf

如果当前目录是 cd application/program/redis-tool,那命令执行就简单了

redis-server redis.conf

           

          服务已经启动了,我们下一步该启动客户端了。
   
    3.9、现在查看Datas和Logs目录下边,会有相应的文件,也表示启动Redis的服务器端成功。

          



   3.10、启动Redis的客户端,在根目录下,执行如下命令:./application/program/redis-tool/redis-cli -h 192.168.127.128 -p 6379,界面如下。

          当前目录所处的位置不同,命令也会不同,这个请注意。我当前是在根目录下,大家也可以cd目标目录下,使用命令跟简单。

         



    3.11、redis-cli客户端启动成功了,我们来测试一下吧。

set name liulei
get name

set age 18
get age

mset sex nan address jiangxi post 12345

mget sex address post

keys *

      效果图如下:

          


四、结束

    
      这是我第一次在Linux上安装Redis,也是第一次使用Linux系统。安装过程不是很难,只是第一次使用Linux系统,很多命令不熟悉,所以有些坑,比如:退回上一级目录,在Windows环境下,直接cd..,但是在Linux环境里,cd和两个点之间有一个空格,后来好好学了一些Linux命令就好了。使用一段时间了,Linux使用起来还行,使用起来也挺方便。Linux环境安装Redis成功了,下一步在介绍一下,如何在Windows环境下安装Redis。继续前行,继续学习。
       

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


文章浏览阅读752次。关系型数据库关系型数据库是一个结构化的数据库,创建在关系模型(二维表模型)基础上,一般面向于记录SQL语句(标准数据查询语言)就是一种基于关系型数据库的语言,用于执行对关系型数据库中数据的检索和操作主流的关系数据库包括Oracle、Mysql、SQL Server、Microsoft Access、DB2等非关系型数据库NoSQL(nOSQL=Not Only SQL),意思是“不仅仅是SQL”,是非关系型数据库的总称。除了主流的关系型数据库外的数据库,都认为是非关系型主流的NoSQ.._redis是非关系型数据库吗
文章浏览阅读687次,点赞2次,收藏5次。商城系统中,抢购和秒杀是很常见的营销场景,在一定时间内有大量的用户访问商场下单,主要需要解决的问题有两个:1. 高并发对数据库产生的压力;2. 竞争状态下如何解决商品库存超卖;高并发对数据库产生的压力对于第一个问题,使用缓存来处理,避免直接操作数据库,例如使用 Redis。竞争状态下如何解决商品库存超卖对于第二个问题,需要重点说明。常规写法:查询出对应商品的库存,判断库存数量否大于 0,然后执行生成订单等操作,但是在判断库存是否大于 0 处,如果在高并发下就会有问题,导致库存_php库存结余并发
文章浏览阅读1.4k次。MongoTemplate开发spring-data-mongodb提供了MongoTemplate和MongoRepository两种方式访问MongoDB,MongoRepository的方式访问较为简单,MongoTemplate方式较为灵活,这两种方式在Java对于MongoDB的运用中相辅相成。_springboot插入指定的mongodb数据库
文章浏览阅读887次,点赞10次,收藏19次。1.背景介绍1. 背景介绍NoSQL数据库是一种非关系型数据库,它的特点是可以存储非结构化的数据,并且可以处理大量的数据。HBase是一个分布式、可扩展的列式存储系统,它是基于Google的Bigtable设计的。HBase是一个开源的NoSQL数据库,它的核心功能是提供高性能的随机读写访问。在本文中,我们将对比HBase与其他NoSQL数据库,例如Redis、MongoDB、Cass...
文章浏览阅读819次。MongoDB连接失败记录_edentialmechanisn-scram-sha-1
文章浏览阅读470次。mongodb抽取数据到ES,使用ELK内部插件无法获取数据,只能试试monstache抽取mongodb数据,但是monstache需要mongodb replica set 模式才能采集数据。############monstache-compose文件。#replicas set 启动服务。# 默认备份节点不能读写,可以设置。# mydb指的是需要同步的数据库。#登录主mongodb初始化rs。#primary 创建用户。# ip地址注意要修改。# ip地址注意要修改。_monstache csdn
文章浏览阅读913次,点赞4次,收藏5次。storage:fork: trueadmin登录切换数据库注意: use 代表创建并使用,当库中没有数据时默认不显示这个库删除数据库查看表清单> show tables # 或者 > show collections表创建db.createCollection('集合名称', [options])table1字段类型描述capped布尔(可选)如果为 true,则创建固定集合。固定集合是指有着固定大小的集合,当达到最大值时,它会自动覆盖最早的文档。_mongodb5
文章浏览阅读862次。Centos7.9设置MongoDB开机自启(超全教程,一条龙)_mongodb centos开机启动脚本
文章浏览阅读1.3k次,点赞6次,收藏21次。NoSQL数据库使用场景以及架构介绍
文章浏览阅读856次,点赞21次,收藏20次。1.背景介绍1. 背景介绍NoSQL数据库是一种非关系型数据库,它的设计目标是为了解决传统关系型数据库(如MySQL、Oracle等)在处理大量不结构化数据方面的不足。NoSQL数据库可以处理大量数据,具有高性能、高可扩展性和高可用性。但是,与关系型数据库不同,NoSQL数据库没有固定的模式,数据结构也不一定是表格。在NoSQL数据库中,数据存储和查询都是基于键值对、列族、图形等不同的...
文章浏览阅读416次。NoSQL定义:非关系型、分布式、开放源码和具有横向扩展能力的下一代数据库。由c++编写的开源、高性能、无模式的基于分布式文件存储的文档型数据库特点:高性能、高可用性、高扩展性、丰富的查询支持、可替换已完场文档某个指定的数据字段应用场景:社交场景:使用mongodb存储用户信息游戏场景:用户信息,装备积分物流场景:订单信息,订单状态场景操作特点:数据量大;读写操作频繁;价值较低的数据,对事物性要求不高开源、c语言编写、默认端口号6379、key-value形式存在,存储非结构化数据。_nosql
文章浏览阅读1.5k次,点赞3次,收藏2次。Exception in thread "main" redis.clients.jedis.exceptions.JedisConnectionException: Failed to create socket. at redis.clients.jedis.DefaultJedisSocketFactory.createSocket(DefaultJedisSocketFactory.java:110) at redis.clients.jedis.Connection.connect(Conne_redis.clients.jedis.exceptions.jedisconnectionexception: failed to create so
文章浏览阅读6.5k次,点赞3次,收藏12次。readAnyDatabase(在所有数据库上都有读取数据的权限)、readWriteAnyDatabase(在所有数据库上都有读写数据的权限)、userAdminAnyDatabase(在所有数据库上都有管理user的权限)、dbAdminAnyDatabase(管理所有数据库的权限);:clusterAdmin(管理机器的最高权限)、clusterManager(管理和监控集群的权限)、clusterMonitor(监控集群的权限)、hostManager( 管理Server);_mongodb创建用户密码并授权
文章浏览阅读593次。Redis是一个基于内存的键值型NoSQL数据库,在实际生产中有着非常广泛的用处_搭建本地redis
文章浏览阅读919次。Key 的最佳实践[业务名]:[数据名]:[id]足够简短:不超过 44 字节不包含特殊字符Value 的最佳实践:合理的拆分数据,拒绝 BigKey选择合适数据结构Hash 结构的 entry 数量不要超过 1000(默认是 500,如果达到上限则底层会使用哈希表而不是 ZipList,内存占用较多)设置合理的超时时间批量处理的方案:原生的 M 操作Pipeline 批处理注意事项:批处理时不建议一次携带太多命令。Pipeline 的多个命令之间不具备原子性。_redis高级实战
文章浏览阅读1.2k次。MongoDB 递归查询_mongodb数据库 递归
文章浏览阅读1.2k次。通过实际代码例子介绍:如何通过MongoTemplate和MongoRepository操作数据库数据_springboot操作mongodb
文章浏览阅读687次,点赞7次,收藏2次。首先欢迎大家阅读此文档,本文档主要分为三个模块分别是:Redis的介绍及安装、RedisDesktopManager可视化工具的安装、主从(哨兵)模式的配置。_redis 主从配置工具
文章浏览阅读764次。天下武功,无坚不摧,唯快不破!我的名字叫 Redis,全称是 Remote Dictionary Server。有人说,组 CP,除了要了解她外,还要给机会让她了解你。那么,作为开发工程师的你,是否愿意认真阅读此心法抓住机会来了解我,运用到你的系统中提升性能。我遵守 BSD 协议,由意大利人 Salvatore Sanfilippo 使用 C 语言编写的一个基于内存实现的键值型非关系(NoSQL)..._redis 7.2 源码
文章浏览阅读2k次。MongoDB 的增删改查【1】_mongodb $inc