百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

Linux(Centos)之安装Redis及注意事项

mhr18 2024-11-15 22:17 19 浏览 0 评论

阅读目录

  • 1.redis简单说明
  • 2.准备工作
  • 3.gcc的安装
  • 4.Tcl的安装
  • 5.redis的安装
  • 6.redis的测试
  • 7.Linux中设置redis的服务器启动和关闭
  • 8.Linux中设置redis的开机启动

回到顶部

1.redis简单说明

  a.在前面我简单的说过redis封装成共用类的实现,地址如下:http://www.cnblogs.com/hanyinglong/p/Redis.html。

  b.redis是一个key-value存储系统,它支持存储的value类型相比较Memcached更多,包括string,list,set,sets,hashes等(It supports data structures such as strings,hashes,lists,sets,sorted sets with range queries,bitmaps,hyperloglogs and geospatial indexes with radius queies)这些数据类型都支持push/pop,Add/remove等丰富的操作,而且这些操作都是原子性的。

  c.redis和Memcached一样,为了保证效率,数据都是缓存在内存中的,区别就是redis会周期性的将更新的数据写入磁盘,并且可以实现主从(master-slave)同步。

  d.redis在数据存储方面,采用了NoSql数据库的思想,即将Key作为数据检索的唯一标示,可以将其简单的理解为关系型数据库中索引的键,而value则作为数据存储的主要对象,其中每一个Value都有一个Key与之对应,在Redis中,Value将被视为二进制字节流用于存储任何格式的数据,如Json,XML,图片和序列化对象的字节流等,因此我们也可以将其想象为RDB中的Blob类型字段,从而在我们进行数据查询是,只能基于Key作为我们查询的条件。

  e.redis官网:http://www.redis.io/

回到顶部

2.准备工作

  a.通过上面的说明之后我们既可以开始在linux系统下面安装redis了,在安装redis的过程中我遇到了一些问题,但也全部解决了,本来我想直接写然后遇到错误在引出来需要安装什么,但是感觉不太好写,所以我还是在前面将这些软件准备好,大家安装的时候可以先去安装redis去验证会不会出现问题,在解决也行。

  b.下载redis的包,下载地址:http://download.redis.io/releases/redis-3.0.5.tar.gz

  c.redis是C语言实现的,所以在Linux系统中需要安装gcc来进行编译,安装gcc请参考第三步。

  d.接下来需要安装Unix的Tcl工具,如果不安装的话后期我们将无法对Redis进行测试,完成安装之后make test会报错,安装tcl请参考第4步,tcl包的下载地址是:http://downloads.sourceforge.net/tcl/tcl8.6.3-src.tar.gz

  e.安装完成上面的几个必须的包之后,即可以安装redis,请参考第5步之后。

  f.操作需要的软件以及系统如下:虚拟机(Vmware),虚拟机中安装的Centos系统,Xshell,Xftp,redis包,tcl包。

回到顶部

3.gcc的安装

  a.通过上面准备工作之后,我们现在已经拥有了可以安装和发布的环境,如果没有,请自行查询安装。

  b.在centos下面安装gcc,我们使用yum(包管理器)安装,因为gcc依赖了很多东西,而有些包系统可能已经安装了,有些没有,所以下面的命令最后都执行一遍,在Xshell中执行下面的命令:

    b.1 yum install cpp

    b.2 yum install binutils

    b.3 yum install glibc-kernheaders

    b.4 yum install glibc-common

    b.5 yum install glibc-devel

    b.6 yum install gcc

    b.7 yum install make

    备注:以上所有的包信息在安装完成的时候都会提示Complete,如果没有是Complete,而是Nothing to do,则说明服务器已经安装了这个包,不需要再次安装,所以没关系,继续执行下一个命令即可。

  c.如果安装过程中没有报错,则说明gcc的安装已经完成了,下面继续安装tcl。

回到顶部

4.Tcl的安装

  a.在Xshell中使用命令跳转到local下面创建属于自己的文件夹:kencery

    a.1 cd usr/local/ mkdir kencery cd kencery/

  b. 然后使用Xftp将在准备工作下载的tcl包复制到kencery文件夹下面,如图所示:

    

  c.将上传的tcl包解压,解压之后重命名为tcl,如图所示

    c.1 tar -zxvf tcl8.6.3-src.tar.gz

    c.2 mv tcl8.6.3 tcl

    c.3 cd tcl

  d.解压完成之后使用下面的命令安装,命令执行顺序按照我写的即可。

    d.1 cd unix/

    d.2 ./configure

    d.3 make

    d.4 make install

  e.在执行的过程中如果不出现错误,耐心等待即可,这些命令的截图就不放在这里了,按照我写的顺序执行即可。

回到顶部

5.redis的安装

  a.通过上面几步之后,准备工作已经完成,即可以开始安装redis了。

  b.使用Xftp将在准备工作下下载的redis包复制到kencery文件夹下面,如图所示:

    

    

  c.将上传的redis包解压,解压之后重命名为redis,如图所示:

    c.1 tar -zxvf redis-3.0.5.tar.gz

    c.2 mv redis-3.0.5 redis

    c.3 cd redis

  d.当对包解压完成之后,便可以开始对其进行安装了,安装的命令为(在redis目录下执行):

    d.1 make

      (1) 在练习的时候输入make出现错误了,但是现在写博客的时候部署没有出现错误,如果出现错误,请使用这个命令(make MALLOC=libc)即可执行,因为没有出现错误,所以没有截图,大家如果遇到的话给我截图留言,谢谢。

      (2) 如果执行make出现错误,当再次执行make的话,我们建议,清理一下在执行,命令为:make clean。

    d.2 cd src/ make test

      (1)在执行完make之后,在最后的程序中会输出(t's a good idea to run 'make test'),它建议我们执行make test进行测试,那么接下来我们就输入make test,检查测试,是否出现问题,如出现如图所示:则说明测试没有问题:

      

      (2)在输入make test执行的时候我在练习的时候是会出现错误的,但是这个错误不影响我们的测试,故而可以忽略。

    d.3 make install

      最后执行make install,不出现错误的话则说明redis安装成功,如图所示:

      

回到顶部

6.redis的测试

  a.当安装完redis之后,就需要进行测试,以下简单做一个测试来验证我们的redis是否安装成功。

  b.首先我们启动redis服务,启动和关闭redis服务命令如下:

    b.1 src/redis-server & 启动redis,加上&表示使redis以后台程序方式运行

    b.2 redis-server /usr/local/kencery/redis/redis.conf 启动redis

    b.3 src/redis-cli shutdown 关闭redis

    b.4 输入启动redis的命令,启动redis,如图所示:

      

    b.5 当redis启动完成之后,使用netstat -ntlp |grep 6379 查看端口是否在使用中,如果在使用中,则说明安装成功,否则安装没有成功。

      

    b.6 连接redis并且测试,连接命令为:src/redis-cli,最后的测试结果如图所示:

      

    b.7 到这里reids的安装和测试工作全部完成了。

回到顶部

7.Linux中设置redis的服务器启动和关闭

  a.如上面所述,我们已经完成了对redis的安装,接下来就可以按照上面的方法使用,但是这里还存在一些小问题,那就是linux系统重启之后都需要找到安装路径才能执行启动命令,那么我们可以设置按照service的形式来启动redis吗?

  b.执行命令:vim /etc/init.d/redis,创建脚本文件,在文件中写入如下代码,保存并且退出:

redis 脚本

  c.给文件添加权限,使用脚本文件可以执行,命令为:chmod 755 /etc/init.d/redis

  d.以上工作顺利完成并且没有出现报错,则配置完成,每次我们开机之后都可以输入以下两个命令启动和关闭redis服务,如图所示:

    d.1 service redis start 开启redis服务

    d.2 service redis stop 关闭redis服务

    

  f.当开启服务之后既可以连接redis测试进行操作或者使用其他客户端来操作redis,测试如图所示:

    

回到顶部

8.Linux中设置redis的开机启动

  a.在大部分情况下,我们需要服务器重新启动的时候自动开启redis,而不是我们手工的去开启,那么下来就说一下开机自动启动的设置。

  b.首先设置redis.config中的daemonize为yes,确保守护进行开启,执行以下命令:

    b.1 cd usr/local/kencery/redis

    b.2 vim redis.conf 开启配置文件,找到daemonize属性酒设置为yes, 保存并且退出即可。

  c.然后设置开机启动,命令:chkconfig redis on

  d.当以上步骤完成之后,即可以可以重新启动Linux然后按照前面所写的测试是否随机器自动启动了。

下面我们就继续来学习redis的知识,下篇继续,每天一点点,都是进步。

文章中如哪里存在问题,欢迎大家指出来,我会在第一时间修改。

君若不弃,我定不离

初心商城:初心商城

作者:韩迎龙(Kencery) MVC/.NET群:159227188
如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏一杯咖啡,本页版权归作者和博客园所有,欢迎转载,但未经作者同意必须保留此段声明, 且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利

相关推荐

如何检查 Linux 服务器是物理服务器还是虚拟服务器?

在企业级运维、故障排查和性能调优过程中,准确了解服务器的运行环境至关重要。无论是物理机还是虚拟机,都存在各自的优势与限制。在很多场景下,尤其是当你继承一台服务器而不清楚底层硬件细节时,如何快速辨识它是...

第四节 Windows 系统 Docker 安装全指南

一、Docker在Windows上的运行原理(一)架构限制说明Docker本质上依赖Linux内核特性(如Namespaces、Cgroups等),因此在Windows系统上无法直...

C++ std:shared_ptr自定义allocator引入内存池

当C++项目里做了大量的动态内存分配与释放,可能会导致内存碎片,使系统性能降低。当动态内存分配的开销变得不容忽视时,一种解决办法是一次从操作系统分配一块大的静态内存作为内存池进行手动管理,堆对象内存分...

Activiti 8.0.0 发布,业务流程管理与工作流系统

Activiti8.0.0现已发布。Activiti是一个业务流程管理(BPM)和工作流系统,适用于开发人员和系统管理员。其核心是超快速、稳定的BPMN2流程引擎。Activiti可以...

MyBatis动态SQL的5种高级玩法,90%的人只用过3种

MyBatis动态SQL在日常开发中频繁使用,但大多数开发者仅掌握基础标签。本文将介绍五种高阶技巧,助你解锁更灵活的SQL控制能力。一、智能修剪(Trim标签)应用场景:动态处理字段更新,替代<...

Springboot数据访问(整合Mybatis Plus)

Springboot整合MybatisPlus1、创建数据表2、引入maven依赖mybatis-plus-boot-starter主要引入这个依赖,其他相关的依赖在这里就不写了。3、项目结构目录h...

盘点金州勇士在奥克兰13年的13大球星 满满的全是...

见证了两个月前勇士与猛龙那个史诗般的系列赛后,甲骨文球馆正式成为了历史。那个大大的红色标志被一个字母一个字母地移除,在周四,一切都成为了过去式。然而这座,别名为“Roaracle”(译注:Roar怒吼...

Mybatis入门看这一篇就够了(mybatis快速入门)

什么是MyBatisMyBatis本是apache的一个开源项目iBatis,2010年这个项目由apachesoftwarefoundation迁移到了googlecode,并且改名为M...

Springboot数据访问(整合druid数据源)

Springboot整合druid数据源基本概念SpringBoot默认的数据源是:2.0之前:org.apache.tomcat.jdbc.pool.DataSource2.0及之后:com.z...

Linux 中的 &quot;/etc/profile.d&quot; 目录有什么作用 ?

什么是/etc/profile.d/目录?/etc/profile.d/目录是Linux系统不可或缺的一部分保留配置脚本。它与/etc/profile文件相关联,这是一个启动脚本,该脚...

企业数据库安全管理规范(企业数据库安全管理规范最新版)

1.目的为规范数据库系统安全使用活动,降低因使用不当而带来的安全风险,保障数据库系统及相关应用系统的安全,特制定本数据库安全管理规范。2.适用范围本规范中所定义的数据管理内容,特指存放在信息系统数据库...

Oracle 伪列!这些隐藏用法你都知道吗?

在Oracle数据库中,有几位特殊的“成员”——伪列,它们虽然不是表中真实存在的物理列,但却能在数据查询、处理过程中发挥出意想不到的强大作用。今天给大家分享Oracle伪列的使用技巧,无论...

Oracle 高效处理数据的隐藏神器:临时表妙用

各位数据库搬砖人,在Oracle的代码世界里闯荡,处理复杂业务时,是不是总被数据“搅得头大”?今天给大家安利一个超实用的隐藏神器——临时表!当你需要临时存储中间计算结果,又不想污染正式数据表...

Oracle 数据库查询:多表查询(oracle多表关联查询)

一、多表查询基础1.JOIN操作-INNERJOIN:返回两个表中满足连接条件的匹配行,不保留未匹配数据。SELECTa.emp_id,b.dept_nameFROMempl...

一文掌握怎么利用Shell+Python实现多数据源的异地备份程序

简介:在信息化时代,数据安全和业务连续性已成为企业和个人用户关注的焦点。无论是网站数据、数据库、日志文件,还是用户上传的文档、图片等,数据一旦丢失,损失难以估量。尤其是当数据分布在多个不同的目录、服务...

取消回复欢迎 发表评论: