zoukankan      html  css  js  c++  java
  • [Linux.centOS].安装Redis 腾讯云

    环境

    {
        "服务器运营商":"腾讯云",
        "操作系统":"CentOS 7.5 64位",   
        "CPU":"1核",
        "内存":"2GB",
        "公网带宽":"1Mbps"
    }
    

    需要掌握的技能点

    
    {
        "Linux技能":
        {
            "vim命令":"打开文本,编辑文本,保存",
            "文件夹基本操作":"创建文件夹,解压缩文件,复制"
        },
        "通用技能":
        {
            "搜索":"从网络上搜索相关知识点"
        }
    }
    
    

    使用编译安装{Redis}

    0.0[热身.gcc].查看是否安装gcc

    1.问:gcc是啥?(What)
    {gcc}回答道:我是一个编译器,可以编译C语言...(省略N字)

    2.问:为啥要安装gcc?(Why)
    {Redis}回答道:我是用C语言编写的,而gcc可以编译我,正巧这篇文章就是讲的编译安装我...其实就是为了使用gcc的"make"命令.

    
    [root@VM_0_12_centos ~]# rpm -qa|grep gcc*
    libgcrypt-1.5.3-14.el7.x86_64
    pkgconfig-0.27.1-4.el7.x86_64
    libgcc-4.8.5-36.el7.x86_64
    gcc-4.8.5-36.el7.x86_64
    
    

    如果已经安装了,请看步骤{1.0}.

    0.1[热身.gcc].安装gcc

    [root@VM_0_12_centos ~]# yum install gcc-c++
    
    Loaded plugins: fastestmirror, langpacks
    //省略N行...
    
    Installed:
      gcc-c++.x86_64 0:4.8.5-39.el7
    Dependency Installed:
      libstdc++-devel.x86_64 0:4.8.5-39.el7
    Complete!
    
    

    1.0[redis].从网上下载压缩包

    
    #先创建一个(级联)目录,用来存放{Redis压缩包}
    [root@VM_0_12_centos ~]# mkdir -p usr/{bin,lib/{redis}}
    [root@VM_0_12_centos ~]# cd usr/lib/redis
    
    #下载{Resis压缩包}
    [root@VM_0_13_centos redis]$ wget https://mirrors.huaweicloud.com/redis/redis-5.0.5.tar.gz
    
    
    #解压缩.
    [zf@VM_0_13_centos redis]$ tar -zxvf redis-5.0.5.tar.gz
    
    

    1.1[redis].编译

    
    #进入文件夹
    [zf@VM_0_13_centos redis]$ cd redis-5.0.5/
    
    #编译(gcc善良登场)
    [zf@VM_0_13_centos redis-5.0.5]$ make
    #省略N行输出...
    Hint: It's a good idea to run 'make test' ;)
    make[1]: Leaving directory `/usr/lib/redis/redis-5.0.5/src'
    
    
    

    1.2[redis].安装服务

    
    #安装服务
    [zf@VM_0_13_centos redis-5.0.5]$ make PREFIX=/usr/local/redis install
    
    #检查服务是否安装成功
    [zf@VM_0_13_centos redis-5.0.5]$ ls /usr/local/redis/bin/
    
    redis-benchmark  redis-check-rdb  redis-sentinel
    redis-check-aof  redis-cli        redis-server
    
    
    

    1.3[redis].配置文件.复制

    
    #先将解压缩目录下的配置文件复制到安装目录下
    #[zf@VM_0_13_centos ~]$ ls usr/lib/redis/redis-5.0.5
    #[zf@VM_0_13_centos ~]$ ls usr/local/redis/
    #前两句ls命令,只是为了看下复制涉及的两个文件夹中都有些什么...
    #可以理解为下载的压缩包为了咱们准备了一个默认的配置文件
    [zf@VM_0_13_centos ~]$ cp usr/lib/redis/redis-5.0.5/redis.conf usr/local/redis/
    
    
    

    1.4[redis].配置文件.编辑

    这个步骤是全文中我耗时最长的时间,因为对{vim}不熟悉...

    涉及到的配置项,本来写了很长一段这些配置项的介绍.
    但是想了想又全删了...先照着做把{Redis}跑起来再说吧.
    新手看这些配置项的详细介绍,没必要.
    老司机这些介绍又不用看,所以我删了...

    [
        "bind",
        "protected-mode",
        "daemonize",
        "requirepass"
    ]
    
    #先跳转到安装目录下,也就是{redis.conf}所在的目录.
    [zf@VM_0_13_centos ~]$ cd usr/local/redis/
    
    

    下面这段vim命令,真心当时费老劲了...分享一下...

    
    [zf@VM_0_13_centos redis]$ vim +/^bind\s127 redis.conf
    [zf@VM_0_13_centos redis]$ vi +/^protected-mode redis.conf
    [zf@VM_0_13_centos redis]$ vi +/^daemonize redis.conf
    #其中设置密码的配置项{requirepass}没有找到...自己添加就行了.
    [zf@VM_0_13_centos redis]$ vi +/^requirepass  redis.conf
    
    
    

    1.5[redis].服务端(redis-server).启动

    终于到了这一步了.

    
    #跳转到Redis安装目录
    [zf@VM_0_13_centos ~]$ cd usr/local/redis/
    #启动redis-server,并且指定配置文件
    [zf@VM_0_13_centos redis]$ ./bin/redis-server ./redis.conf
    
    #查看服务是否启动
    [zf@VM_0_13_centos redis]$ ps -ef|grep redis
    zf       19856     1  0 17:48 ?        00:00:00 ./bin/redis-server *:6379
    zf       20053 21781  0 17:50 pts/3    00:00:00 grep --color=auto redis
    
    

    1.6[redis].客户端(redis-cli)启动

    其实到了步骤{1.5},将{Redis}启动起来后,{1.6}的内容都不属于此章了.

    
    [zf@VM_0_13_centos redis]$ ./bin/redis-cli
    #启动客户端可以添加的一些配置信息↓
    #[zf@VM_0_13_centos redis]$ ./bin/redis-cli -h 127.0.0.1 -p 6379
    127.0.0.1:6379> set "name" "zf"
    OK
    127.0.0.1:6379> exit
    [zf@VM_0_13_centos redis]$ ./bin/redis-cli
    127.0.0.1:6379> get "name"
    "zf"
    127.0.0.1:6379> exit
    [zf@VM_0_13_centos redis]$ ./bin/redis-cli shutdown
    [zf@VM_0_13_centos redis]$ ./bin/redis-cli
    Could not connect to Redis at 127.0.0.1:6379: Connection refused
    not connected>
    
    

    后记.杂言碎语

    本章是在介绍{Redis}安装,第一步就讲{gcc}的安装,
    很容易看出来,{gcc}和{Redis}之间肯定有关系的,并且是{Redis}依赖于{gcc}.
    但是有的教程,只是直接上来[第一步,第二步,第三步...]这样,
    特别是那时候刚开始接触Linux,那篇文章看的迷迷糊糊的.
    从此也算是吸取了一些教训,以后自己写文章,
    尽可能将主要步骤描述的详细一些,希望新手能够看的明白.
    毕竟这篇文章,除了我自己以后拿来看,其余应该都是新手来看了.
    对于初学者如何学习,我特别认同取自《Java编程思想.第四版》中的一段话.

    只把我认为有助于理解语言的东西介绍给读者,而不是把我知道的一切东西都抖出来,这并非藏私。我
    认为信息的重要程度是存在一个合理的层次的。有些情况是95%的程序员都永远不必了解的。如强行学习,
    只会干扰他们的正常思维,从而加深语言在他们面前表现出来的难度。以 C 语言为例,假如你能记住运算符
    优先次序表(我从来记不住),那么就可以写出更“聪明”的代码。但再深入想一层,那也会使代码的读者
    /维护者感到困扰。所以忘了那些次序吧,在拿不准的时候加上括号即可。--《Java编程思想.第四版》


    2020.03.29编辑↓
    时隔多日,因为又要安装Redis,再次翻看此篇文章,
    发现安装流程中还有些不明白的,主要集中在["安装服务","启动服务","客户端"]
    其实主要迷惑在["Redis服务器","Redis客户端"],
    所以小改了一下.


    扩展

    Q:yum install gcc 和 yum install gcc-c++啥区别?
    A:回答原文链接

    This package adds C++ support to the GNU Compiler Collection.
    It includes support for most of the current C++ specification,
    including templates and exception handling。

    可以看出gcc-c++是为gcc提供c++语言特性支持的其实,就概念而言gcc是指整个gcc的这一套工具集合,它分为gcc前端和gcc后端(我个人理解为gcc外壳和gcc引擎),gcc前端对应各种特定语言(如c++/go等)的处理(对c++/go等特定语言进行对应的语法检查, 将c++/go等语言的代码转化为c代码等),gcc后端对应把前端的c代码转为跟你的电脑硬件相关的汇编或机器码等。(可能描述上不是特别准确,不过大体就是这个意思)而就软件程序包而言,gcc.rpm就是那个gcc后端,而gcc-c++.rpm就是针对c++这个特定语言的gcc前端。这样的设计就保证了充分的灵活性,针对不同的程序语言,只需要开发不同的gcc前端就好了; 同时对于使用者来说,如果我只需要支持编译c++,那么我就只装一个c++的gcc前端就好了,就不会含有其他语言特性的程序代码,使得使用者的软件环境也比较轻量和干净

    摘抄文档

  • 相关阅读:
    做好测试计划和测试用例的工作的关键是什么?
    windows创建虚拟环境
    面试题整理
    【爬虫】使用selenium设置cookie
    【爬虫】随机获取UA
    Scrapy爬虫提高效率
    【爬虫】多线程爬取糗事百科写入文件
    【爬虫】多线程爬取表情包
    【爬虫】Condition版的生产者和消费者模式
    【爬虫】Load版的生产者和消费者模式
  • 原文地址:https://www.cnblogs.com/love-zf/p/11973796.html
Copyright © 2011-2022 走看看