linux服务器上离线安装redis

一 离线安装redis

1.1 说明

Redis为c语言编写,因此安装需要配置c语言编译环境gcc,查看linux是否安装了该编译环境。

[uredis@localhost ~]$ gcc -v
bash: gcc: command not found...
[uredis@localhost ~]$ 

1.2 软件包下载地址

1.gcc

linux服务器上centos7.5离线安装redis所需要的gcc包_linux离线安装redis-Linux文档类资源-CSDN下载

gcc的下载包

2.redis各种软件包版本

各版本下载地址:http://download.redis.io/releases/

1.3 将软件包上传到服务器上

本次使用redis的软件包版本为6.2.1,如下图所示:

 1.4 安装gcc

安装gcc,可以从官网下载iso镜像,从里面packages找出来,这里已经将其汇总好了,如

下图所示 

1.解压gcc

[uredis@localhost ~]$ unzip gcc.zip 
Archive:  gcc.zip
   creating: gcc/
  inflating: gcc/binutils-2.27-27.base.el7.x86_64.rpm  
  inflating: gcc/cpp-4.8.5-28.el7.x86_64.rpm  
  inflating: gcc/gcc-4.8.5-28.el7.x86_64.rpm  
  inflating: gcc/gcc-c++-4.8.5-28.el7.x86_64.rpm  
  inflating: gcc/glib2-2.54.2-2.el7.x86_64.rpm  
  inflating: gcc/glib2-devel-2.54.2-2.el7.x86_64.rpm  
  inflating: gcc/kernel-headers-3.10.0-862.el7.x86_64.rpm  
  inflating: gcc/libgcc-4.8.5-28.el7.x86_64.rpm  
  inflating: gcc/libgomp-4.8.5-28.el7.x86_64.rpm  
  inflating: gcc/libmpc-1.0.1-3.el7.x86_64.rpm  
  inflating: gcc/libstdc++-devel-4.8.5-28.el7.x86_64.rpm  
  inflating: gcc/mpfr-3.1.1-4.el7.x86_64.rpm  
  inflating: gcc/zlib-1.2.7-17.el7.x86_64.rpm  
  inflating: gcc/glibc-devel-2.17-222.el7.x86_64.rpm  
  inflating: gcc/glibc-headers-2.17-222.el7.x86_64.rpm  
[uredis@localhost ~]$ ls

2.查看软件包

[uredis@localhost ~]$ cd gcc
[uredis@localhost gcc]$ ls
binutils-2.27-27.base.el7.x86_64.rpm  glib2-2.54.2-2.el7.x86_64.rpm          kernel-headers-3.10.0-862.el7.x86_64.rpm  libstdc++-devel-4.8.5-28.el7.x86_64.rpm
cpp-4.8.5-28.el7.x86_64.rpm           glib2-devel-2.54.2-2.el7.x86_64.rpm    libgcc-4.8.5-28.el7.x86_64.rpm            mpfr-3.1.1-4.el7.x86_64.rpm
gcc-4.8.5-28.el7.x86_64.rpm           glibc-devel-2.17-222.el7.x86_64.rpm    libgomp-4.8.5-28.el7.x86_64.rpm           zlib-1.2.7-17.el7.x86_64.rpm
gcc-c++-4.8.5-28.el7.x86_64.rpm       glibc-headers-2.17-222.el7.x86_64.rpm  libmpc-1.0.1-3.el7.x86_64.rpm
[uredis@localhost gcc]$ ls -l
total 50184
-rw-rw-r--. 1 uredis uredis  6188360 Apr 25  2018 binutils-2.27-27.base.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis  6234536 Apr 25  2018 cpp-4.8.5-28.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis 16967040 Apr 25  2018 gcc-4.8.5-28.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis  7528828 Apr 25  2018 gcc-c++-4.8.5-28.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis  2529644 Apr 25  2018 glib2-2.54.2-2.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis   456800 Apr 25  2018 glib2-devel-2.54.2-2.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis  1116252 Apr 25  2018 glibc-devel-2.17-222.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis   694524 Apr 25  2018 glibc-headers-2.17-222.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis  7442492 Apr 25  2018 kernel-headers-3.10.0-862.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis   102940 Apr 25  2018 libgcc-4.8.5-28.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis   160032 Apr 25  2018 libgomp-4.8.5-28.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis    51732 Jul  4  2014 libmpc-1.0.1-3.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis  1578996 Apr 25  2018 libstdc++-devel-4.8.5-28.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis   208316 Jul  4  2014 mpfr-3.1.1-4.el7.x86_64.rpm
-rw-rw-r--. 1 uredis uredis    91872 Nov 21  2016 zlib-1.2.7-17.el7.x86_64.rpm

3.进行安装

输入命令:rpm -Uvh *.rpm --nodeps --force

[root@localhost gcc]# rpm -Uvh *.rpm --nodeps --force
warning: binutils-2.27-27.base.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:zlib-1.2.7-17.el7                ################################# [  5%]
   2:mpfr-3.1.1-4.el7                 ################################# [ 10%]
   3:libmpc-1.0.1-3.el7               ################################# [ 14%]
   4:libgcc-4.8.5-28.el7              ################################# [ 19%]
   5:glib2-2.54.2-2.el7               ################################# [ 24%]
   6:cpp-4.8.5-28.el7                 ################################# [ 29%]
   7:binutils-2.27-27.base.el7        ################################# [ 33%]
   8:libstdc++-devel-4.8.5-28.el7     ################################# [ 38%]
   9:libgomp-4.8.5-28.el7             ################################# [ 43%]
  10:kernel-headers-3.10.0-862.el7    ################################# [ 48%]
  11:glibc-headers-2.17-222.el7       ################################# [ 52%]
  12:glibc-devel-2.17-222.el7         ################################# [ 57%]
  13:gcc-4.8.5-28.el7                 ################################# [ 62%]
  14:gcc-c++-4.8.5-28.el7             ################################# [ 67%]
  15:glib2-devel-2.54.2-2.el7         ################################# [ 71%]
Cleaning up / removing...
  16:gcc-c++-4.4.7-4.el6              ################################# [ 76%]
  17:libstdc++-devel-4.4.7-4.el6      ################################# [ 81%]
  18:gcc-4.4.7-4.el6                  ################################# [ 86%]
  19:glibc-devel-2.12-1.132.el6       ################################# [ 90%]
  20:glibc-headers-2.12-1.132.el6     ################################# [ 95%]
  21:kernel-headers-2.6.32-431.el6    ################################# [100%]

4.查看版本gcc,c++的版本

查看:

1. gcc  -v 

 2. g++ -v

[root@localhost gcc]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC) 
[root@localhost gcc]# g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC) 

可以看到gcc,c++这些需要的编译环境均已经按照ok

  1.5 安装redis

1.解压redis

[root@localhost uredis]# tar -zxvf redis-6.2.1.tar.gz 
redis-6.2.1/
redis-6.2.1/.github/
redis-6.2.1/.github/ISSUE_TEMPLATE/
redis-6.2.1/.github/ISSUE_TEMPLATE/bug_report.md
redis-6.2.1/.github/ISSUE_TEMPLATE/crash_report.md
redis-6.2.1/.github/ISSUE_TEMPLATE/feature_request.md
redis-6.2.1/.github/ISSUE_TEMPLATE/other_stuff.md
redis-6.2.1/.github/ISSUE_TEMPLATE/question.md
redis-6.2.1/.github/workflows/
redis-6.2.1/.github/workflows/ci.yml
redis-6.2.1/.github/workflows/daily.yml
redis-6.2.1/.gitignore
redis-6.2.1/00-RELEASENOTES
redis-6.2.1/BUGS
redis-6.2.1/CONDUCT
redis-6.2.1/CONTRIBUTIN

2.使用make进行编译安装

输入命令: make MALLOC=libc

[root@localhost uredis]# ls
gcc  gcc_rpm.tar.gz  gcc.zip  redis-6.2.1  redis-6.2.1.tar.gz
[root@localhost uredis]# cd redis-6.2.1/
[root@localhost redis-6.2.1]# ls
00-RELEASENOTES  CONDUCT       COPYING  INSTALL   MANIFESTO  redis.conf  runtest-cluster    runtest-sentinel  src    TLS.md
BUGS             CONTRIBUTING  deps     Makefile  README.md  runtest     runtest-moduleapi  sentinel.conf     tests  utils
[root@localhost redis-6.2.1]# make MALLOC=libc
cd src && make all
make[1]: Entering directory `/home/uredis/redis-6.2.1/src'
    CC Makefile.dep
make[1]: Leaving directory `/home/uredis/redis-6.2.1/src'
make[1]: Entering directory `/home/uredis/redis-6.2.1/src'
rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-rdb redis-check-aof *.o *.gcda *.gcno *.gcov redis.info lcov-html Makefile.dep dict-benchmark
rm -f adlist.d quicklist.d ae.d anet.d dict.d server.d sds.d zmalloc.d lzf_c.d lzf_d.d pqsort.d zipmap.d sha1.d ziplist.d release.d networking.d util.d object.d db.d replication.d rdb.d t_string.d t_list.d t_set.d t_zset.d t_hash.d config.d aof.d pubsub.d multi.d debug.d sort.d intset.d syncio.d cluster.d crc16.d endianconv.d slowlog.d scripting.d bio.d rio.d rand.d memtest.d crcspeed.d crc64.d bitops.d sentinel.d notify.d setproctitle.d blocked.d hyperloglog.d latency.d sparkline.d redis-check-rdb.d redis-check-aof.d geo.d lazyfree.d module.d evict.d expire.d geohash.d geohash_helper.d childinfo.d defrag.d siphash.d rax.d t_stream.d listpack.d localtime.d lolwut.d lolwut5.d lolwut6.d acl.d gopher.d tracking.d connection.d tls.d sha256.d timeout.d setcpuaffinity.d monotonic.d mt19937-64.d anet.d adlist.d dict.d redis-cli.d zmalloc.d release.d ae.d crcspeed.d crc64.d siphash.d crc16.d monotonic.d cli_common.d mt19937-64.d ae.d anet.d redis-benchmark.d adlist.d dict.d zmalloc.d release.d crcspeed.d crc64.d siphash.d crc16.d monotonic.d cli_common.d mt19937-64.d
(cd ../deps && make distclean)
....
make[2]: Leaving directory `/home/uredis/redis-6.2.1/deps'
    CC adlist.o
    CC quicklist.o
    CC ae.o
    CC anet.o
    CC dict.o
    CC server.o
    CC sds.o
    CC zmalloc.o
    CC lzf_c.o
    CC lzf_d.o
    CC pqsort.o
    CC zipmap.o
    CC sha1.o
    CC ziplist.o
    CC release.o
    CC networking.o
    CC util.o
    CC object.o
    CC db.o
    CC replication.o
    CC rdb.o
    CC t_string.o
    CC t_list.o
    CC t_set.o
    CC t_zset.o
    CC t_hash.o
    CC config.o
    CC aof.o
    CC pubsub.o
    CC multi.o
    CC debug.o
    CC sort.o
    CC intset.o
    CC syncio.o
    CC cluster.o
    CC crc16.o
    CC endianconv.o
    CC slowlog.o
    CC scripting.o
    CC bio.o
    CC rio.o
    CC rand.o
    CC memtest.o
    CC crcspeed.o
    CC crc64.o
    CC bitops.o
    CC sentinel.o
    CC notify.o
    CC setproctitle.o
    CC blocked.o
    CC hyperloglog.o
    CC latency.o
    CC sparkline.o
    CC redis-check-rdb.o
    CC redis-check-aof.o
    CC geo.o
    CC lazyfree.o
    CC module.o
    CC evict.o
    CC expire.o
    CC geohash.o
    CC geohash_helper.o
    CC childinfo.o
    CC defrag.o
    CC siphash.o
    CC rax.o
    CC t_stream.o
    CC listpack.o
    CC localtime.o
    CC lolwut.o
    CC lolwut5.o
    CC lolwut6.o
    CC acl.o
    CC gopher.o
    CC tracking.o
    CC connection.o
    CC tls.o
    CC sha256.o
    CC timeout.o
    CC setcpuaffinity.o
    CC monotonic.o
    CC mt19937-64.o
    LINK redis-server
    INSTALL redis-sentinel
    CC redis-cli.o
    CC cli_common.o
    LINK redis-cli
    CC redis-benchmark.o
    LINK redis-benchmark
    INSTALL redis-check-rdb
    INSTALL redis-check-aof

Hint: It's a good idea to run 'make test' ;)

make[1]: Leaving directory `/home/uredis/redis-6.2.1/src'

截图如下所示:

 3.src的安装

输入命令: cd src && make install

[root@localhost redis-6.2.1]# cd src && make install
    CC Makefile.dep

Hint: It's a good idea to run 'make test' ;)

    INSTALL install
    INSTALL install
    INSTALL install

  1.6 启动redis服务

进入到/home/uredis/redis-6.2.1/src 目录下: 输入命令: ./redis-server

[root@localhost src]# ./redis-server
8374:C 27 Jul 2021 16:24:05.224 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
8374:C 27 Jul 2021 16:24:05.224 # Redis version=6.2.1, bits=64, commit=00000000, modified=0, pid=8374, just started
8374:C 27 Jul 2021 16:24:05.224 # Warning: no config file specified, using the default config. In order to specify a config file use ./redis-server /path/to/redis.conf
8374:M 27 Jul 2021 16:24:05.225 * Increased maximum number of open files to 10032 (it was originally set to 1024).
8374:M 27 Jul 2021 16:24:05.225 * monotonic clock: POSIX clock_gettime
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 6.2.1 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._                                   
 (    '      ,       .-`  | `,    )     Running in standalone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 8374
  `-._    `-._  `-./  _.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |                                  
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                           
              `-.__.-'                                               

8374:M 27 Jul 2021 16:24:05.232 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
8374:M 27 Jul 2021 16:24:05.232 # Server initialized
8374:M 27 Jul 2021 16:24:05.232 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
8374:M 27 Jul 2021 16:24:05.233 * Ready to accept connections

  1.7 启动redis客户端

打开一个新的窗口,进入到/home/uredis/redis-6.2.1/src 这个目录下,执行: ./redis-cli

[root@localhost src]# pwd
/home/uredis/redis-6.2.1/src
[root@localhost src]#  ./redis-cli
127.0.0.1:6379> keys *
(empty array)
127.0.0.1:6379> 

ok,到此redis安装完毕,且启动服务端,客户端

  1.8 将redis作为系统服务,开机自启动

1.复制redis配置文件

[root@localhost src]# mkdir /etc/redis
[root@localhost src]# cd ..
[root@localhost redis-6.2.1]# cp redis.conf /etc/redis/6379.conf

2、将启动文件拷贝到init.d中

[root@localhost redis-6.2.1]# cp utils/redis_init_script /etc/init.d/redisd

3.修改启动脚本

[root@localhost redis-6.2.1]# vi /etc/init.d/redisd

修改成真实的地址

 4、增加脚本执行权限

[root@localhost redis-6.2.1]# chmod +x /etc/init.d/redisd
5.增加系统服务

[root@localhost redis-6.2.1]# chkconfig --add redisd
[root@localhost redis-6.2.1]# chkconfig --list redisd


Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.

      If you want to list systemd services use 'systemctl list-unit-files'.
      To see services enabled on particular target use
      'systemctl list-dependencies [target]'.

redisd             0:off    1:off    2:on    3:on    4:on    5:on    6:off

6.测试服务启动

启动命令:service redisd start

[root@localhost redis-6.2.1]#  service redisd start
Starting Redis server...
9813:C 27 Jul 2021 18:10:14.829 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
9813:C 27 Jul 2021 18:10:14.829 # Redis version=6.2.1, bits=64, commit=00000000, modified=0, pid=9813, just started
9813:C 27 Jul 2021 18:10:14.829 # Configuration loaded
9813:M 27 Jul 2021 18:10:14.829 * Increased maximum number of open files to 10032 (it was originally set to 1024).
9813:M 27 Jul 2021 18:10:14.829 * monotonic clock: POSIX clock_gettime
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 6.2.1 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._                                   
 (    '      ,       .-`  | `,    )     Running in standalone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 9813
  `-._    `-._  `-./  _.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |                                  
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                           
              `-.__.-'                                               

9813:M 27 Jul 2021 18:10:14.831 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
9813:M 27 Jul 2021 18:10:14.831 # Server initialized
9813:M 27 Jul 2021 18:10:14.831 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
9813:M 27 Jul 2021 18:10:14.831 * Ready to accept connections

查看端口号:

6.使用redis的客户端软件:

常用客户端 https://redisdesktop.com/download

centos7.5离线安装redis4.0.11_你说嗨我说拜的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值