当前位置: 首页 > news >正文

编译安装redis

本文用于描述redis的编译安装

1、上传源码包到linux 服务器上;我已经上传到了root目录下:/root/redis-3.2.3.tar.gz

ll /root/ | grep redis.*gz
-rw-r--r--  1 root root    1541401 9月  17 18:37 redis-3.2.3.tar.gz

 

2、解压

tar -xzvf redis-3.2.3.tar.gz
ll /root/ | grep redis
drwxrwxr-x  6 root root       4096 8月   2 17:00 redis-3.2.3
-rw-r--r--  1 root root    1541401 9月  17 18:37 redis-3.2.3.tar.gz

 

3、make 这里可以直接make 是因为redis已经自己写好了make file 了;也就是说不用再执行configure 了、make 后编译好的文件会保存到src目录下

cd /root/redis-3.2.3
make
ll
总用量 196
-rw-rw-r--  1 root root 75147 8月   2 17:00 00-RELEASENOTES
-rw-rw-r--  1 root root    53 8月   2 17:00 BUGS
-rw-rw-r--  1 root root  1805 8月   2 17:00 CONTRIBUTING
-rw-rw-r--  1 root root  1487 8月   2 17:00 COPYING
drwxrwxr-x  7 root root  4096 9月  17 18:38 deps
-rw-rw-r--  1 root root    11 8月   2 17:00 INSTALL
-rw-rw-r--  1 root root   151 8月   2 17:00 Makefile
-rw-rw-r--  1 root root  4223 8月   2 17:00 MANIFESTO
-rw-rw-r--  1 root root  6834 8月   2 17:00 README.md
-rw-rw-r--  1 root root 46695 8月   2 17:00 redis.conf
-rwxrwxr-x  1 root root   271 8月   2 17:00 runtest
-rwxrwxr-x  1 root root   280 8月   2 17:00 runtest-cluster
-rwxrwxr-x  1 root root   281 8月   2 17:00 runtest-sentinel
-rw-rw-r--  1 root root  7109 8月   2 17:00 sentinel.conf
drwxrwxr-x  2 root root  4096 9月  17 18:39 src
drwxrwxr-x 10 root root  4096 8月   2 17:00 tests
drwxrwxr-x  7 root root  4096 8月   2 17:00 utils

 

4、make install 这一步会把src 目录下的二进制文件复制到/usr/local/bin/ 目录下;由于把文件保存到/usr/local/bin/目录下的方式不方便管理,于是我们把文件统一保存到

   /usr/local/redis/bin/目录下

mkdir -p /usr/local/redis/bin/
cd src
cp redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server redis-trib.rb /usr/local/redis/bin/

 

5、给redis提供一个启动脚本

#!/bin/bash

#chkconfig: 2345 50 50
#description: redis-server init scripts

server_exec=/usr/local/redis/bin/redis-server
pid_file=/usr/local/redis/redis_server.pid
port=6379

case $1 in

"start")
    if test -e $pid_file
    then
        echo "redisd has been started"
    else
        echo "start redisd ..."
        $server_exec --port $port --pidfile $pid_file &
    fi
;;

"stop")
    if test -e $pid_file
    then
        echo "will to stop redisd..."
        pid=`cat $pid_file`
        kill $pid
    else
        echo "redisd has been stop"
    fi
;;

"*")
    echo "not suport argument $1"
;;
esac

 

6、启动redisd

service redisd start

 

7、修改环境变量

export PATH=/usr/local/redis/bin:$PATH

 

相关文章:

  • 1040 统计单词个数
  • 详解RocketMQ中的consumer
  • PHP中使用XMLReader读取xml文档内容
  • 学习Android路上的一些感慨和总结,慢慢来,比较快!
  • UVA 11212 Editing a Book
  • tomcat报错:java.net.SocketException: Permission denied[http-nio-80]
  • 入手阿里云新服务器的部署NODE
  • C#组件系列——又一款Excel处理神器Spire.XLS,你值得拥有
  • 运行时添加log4j2的appender
  • win产品密钥大搜集
  • PowerShell查询AD域内长期没有登录的计算机对象
  • 取distinct数据同时还取其他字段
  • RHCS+Conga+GFS+cLVM共享存储的高可用性web集群
  • 【20160924】GOCVHelper综述
  • Maven 自定义 archetype
  • 【css3】浏览器内核及其兼容性
  • 2017 年终总结 —— 在路上
  • Cookie 在前端中的实践
  • css布局,左右固定中间自适应实现
  • ES6系统学习----从Apollo Client看解构赋值
  • java8-模拟hadoop
  • jdbc就是这么简单
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • 二维平面内的碰撞检测【一】
  • 简单实现一个textarea自适应高度
  • 如何在 Tornado 中实现 Middleware
  • 三栏布局总结
  • 我看到的前端
  • 小李飞刀:SQL题目刷起来!
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​iOS安全加固方法及实现
  • ​油烟净化器电源安全,保障健康餐饮生活
  • (33)STM32——485实验笔记
  • (a /b)*c的值
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (待修改)PyG安装步骤
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (转)ObjectiveC 深浅拷贝学习
  • (转)人的集合论——移山之道
  • (转载)在C#用WM_COPYDATA消息来实现两个进程之间传递数据
  • .NET Conf 2023 回顾 – 庆祝社区、创新和 .NET 8 的发布
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .NET Core WebAPI中使用Log4net 日志级别分类并记录到数据库
  • .NET HttpWebRequest、WebClient、HttpClient
  • .NET 同步与异步 之 原子操作和自旋锁(Interlocked、SpinLock)(九)
  • .NET高级面试指南专题十一【 设计模式介绍,为什么要用设计模式】
  • .Net开发笔记(二十)创建一个需要授权的第三方组件
  • .NET企业级应用架构设计系列之结尾篇
  • .Net语言中的StringBuilder:入门到精通
  • .py文件应该怎样打开?
  • .sh文件怎么运行_创建优化的Go镜像文件以及踩过的坑
  • ::什么意思
  • @TableLogic注解说明,以及对增删改查的影响
  • [Asp.net mvc]国际化
  • [c++] 什么是平凡类型,标准布局类型,POD类型,聚合体