CentOS7中Redis的安装、配置和卸载

REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。
Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
此处演示在CentOS7系统中,redis的安装、配置、使用以及卸载。

安装准备

  • Redis源码包,可以在这里现在你要安装的版本。我选择的版本是 redis-5.0.10.tar.gz。
  • gcc编译器。由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行yum install -y gcc命令进行安装。

安装

下载源码包

/usr/local/ 目录下,执行下列命令
wget http://download.redis.io/releases/redis-5.0.10.tar.gz

[root@localhost local]# wget http://download.redis.io/releases/redis-5.0.10.tar.gz
--2020-12-14 17:03:21--  http://download.redis.io/releases/redis-5.0.10.tar.gz
正在解析主机 download.redis.io (download.redis.io)... 45.60.125.1
正在连接 download.redis.io (download.redis.io)|45.60.125.1|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:1990507 (1.9M) [application/octet-stream]
正在保存至: “redis-5.0.10.tar.gz”

100%[==============================================>] 1,990,507   17.0KB/s 用时 64s    

2020-12-14 17:04:35 (30.4 KB/s) - 已保存 “redis-5.0.10.tar.gz” [1990507/1990507])

[root@localhost local]# 

解压

保持在在 /usr/local/ 目录下,执行下列命令
tar -zxvf redis-5.0.10.tar.gz

[root@localhost local]# tar -zxvf redis-5.0.10.tar.gz
redis-5.0.10/
redis-5.0.10/.gitignore
redis-5.0.10/00-RELEASENOTES
redis-5.0.10/BUGS
redis-5.0.10/CONTRIBUTING
redis-5.0.10/COPYING
redis-5.0.10/INSTALL
redis-5.0.10/MANIFESTO
redis-5.0.10/Makefile
redis-5.0.10/README.md
redis-5.0.10/deps/
redis-5.0.10/deps/Makefile
redis-5.0.10/deps/README.md
redis-5.0.10/deps/hiredis/
redis-5.0.10/deps/hiredis/.gitignore
redis-5.0.10/deps/hiredis/.travis.yml
redis-5.0.10/deps/hiredis/CHANGELOG.md
redis-5.0.10/deps/hiredis/COPYING
redis-5.0.10/deps/hiredis/Makefile
redis-5.0.10/deps/hiredis/README.md
redis-5.0.10/deps/hiredis/adapters/
redis-5.0.10/deps/hiredis/adapters/ae.h
redis-5.0.10/deps/hiredis/adapters/glib.h
redis-5.0.10/deps/hiredis/adapters/ivykis.h
redis-5.0.10/deps/hiredis/adapters/libev.h
redis-5.0.10/deps/hiredis/adapters/libevent.h
redis-5.0.10/deps/hiredis/adapters/libuv.h
redis-5.0.10/deps/hiredis/adapters/macosx.h
redis-5.0.10/deps/hiredis/adapters/qt.h
redis-5.0.10/deps/hiredis/appveyor.yml
redis-5.0.10/deps/hiredis/async.c
redis-5.0.10/deps/hiredis/async.h
redis-5.0.10/deps/hiredis/dict.c
redis-5.0.10/deps/hiredis/dict.h
redis-5.0.10/deps/hiredis/examples/
redis-5.0.10/deps/hiredis/examples/example-ae.c
redis-5.0.10/deps/hiredis/examples/example-glib.c
redis-5.0.10/deps/hiredis/examples/example-ivykis.c
redis-5.0.10/deps/hiredis/examples/example-libev.c
redis-5.0.10/deps/hiredis/examples/example-libevent.c
redis-5.0.10/deps/hiredis/examples/example-libuv.c
redis-5.0.10/deps/hiredis/examples/example-macosx.c
redis-5.0.10/deps/hiredis/examples/example-qt.cpp
redis-5.0.10/deps/hiredis/examples/example-qt.h
redis-5.0.10/deps/hiredis/examples/example.c
redis-5.0.10/deps/hiredis/fmacros.h
redis-5.0.10/deps/hiredis/hiredis.c
redis-5.0.10/deps/hiredis/hiredis.h
redis-5.0.10/deps/hiredis/net.c
redis-5.0.10/deps/hiredis/net.h
redis-5.0.10/deps/hiredis/read.c
redis-5.0.10/deps/hiredis/read.h
redis-5.0.10/deps/hiredis/sds.c
redis-5.0.10/deps/hiredis/sds.h
redis-5.0.10/deps/hiredis/sdsalloc.h
redis-5.0.10/deps/hiredis/test.c
redis-5.0.10/deps/hiredis/win32.h
redis-5.0.10/deps/jemalloc/
redis-5.0.10/deps/jemalloc/.appveyor.yml
redis-5.0.10/deps/jemalloc/.autom4te.cfg
redis-5.0.10/deps/jemalloc/.gitattributes
redis-5.0.10/deps/jemalloc/.gitignore
redis-5.0.10/deps/jemalloc/.travis.yml
redis-5.0.10/deps/jemalloc/COPYING
redis-5.0.10/deps/jemalloc/ChangeLog
redis-5.0.10/deps/jemalloc/INSTALL.md
redis-5.0.10/deps/jemalloc/Makefile.in
redis-5.0.10/deps/jemalloc/README
redis-5.0.10/deps/jemalloc/TUNING.md
redis-5.0.10/deps/jemalloc/VERSION
redis-5.0.10/deps/jemalloc/autogen.sh
redis-5.0.10/deps/jemalloc/bin/
redis-5.0.10/deps/jemalloc/bin/jemalloc-config.in
redis-5.0.10/deps/jemalloc/bin/jemalloc.sh.in
redis-5.0.10/deps/jemalloc/bin/jeprof.in
redis-5.0.10/deps/jemalloc/build-aux/
redis-5.0.10/deps/jemalloc/build-aux/config.guess
redis-5.0.10/deps/jemalloc/build-aux/config.sub
redis-5.0.10/deps/jemalloc/build-aux/install-sh
redis-5.0.10/deps/jemalloc/config.stamp.in
redis-5.0.10/deps/jemalloc/configure
redis-5.0.10/deps/jemalloc/configure.ac
redis-5.0.10/deps/jemalloc/doc/
redis-5.0.10/deps/jemalloc/doc/html.xsl.in
redis-5.0.10/deps/jemalloc/doc/jemalloc.xml.in
redis-5.0.10/deps/jemalloc/doc/manpages.xsl.in
redis-5.0.10/deps/jemalloc/doc/stylesheet.xsl
redis-5.0.10/deps/jemalloc/include/
redis-5.0.10/deps/jemalloc/include/jemalloc/
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/arena_externs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/arena_inlines_a.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/arena_inlines_b.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/arena_stats.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/arena_structs_a.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/arena_structs_b.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/arena_types.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/assert.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/atomic.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/atomic_c11.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/atomic_gcc_atomic.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/atomic_gcc_sync.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/atomic_msvc.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/background_thread_externs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/background_thread_inlines.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/background_thread_structs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/base_externs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/base_inlines.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/base_structs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/base_types.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/bin.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/bin_stats.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/bit_util.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/bitmap.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/cache_bin.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/ckh.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/ctl.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/div.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/emitter.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/extent_dss.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/extent_externs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/extent_inlines.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/extent_mmap.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/extent_structs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/extent_types.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/hash.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/hooks.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_decls.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_defs.h.in
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_externs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_includes.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_inlines_a.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_inlines_b.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_inlines_c.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_macros.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_types.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_preamble.h.in
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/large_externs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/log.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/malloc_io.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/mutex.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/mutex_pool.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/mutex_prof.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/nstime.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/pages.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/ph.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/private_namespace.sh
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/private_symbols.sh
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/prng.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/prof_externs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/prof_inlines_a.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/prof_inlines_b.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/prof_structs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/prof_types.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/public_namespace.sh
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/public_unnamespace.sh
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/ql.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/qr.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/rb.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/rtree.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/rtree_tsd.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/size_classes.sh
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/smoothstep.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/smoothstep.sh
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/spin.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/stats.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/sz.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tcache_externs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tcache_inlines.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tcache_structs.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tcache_types.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/ticker.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tsd.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tsd_generic.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tsd_malloc_thread_cleanup.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tsd_tls.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tsd_types.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/tsd_win.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/util.h
redis-5.0.10/deps/jemalloc/include/jemalloc/internal/witness.h
redis-5.0.10/deps/jemalloc/include/jemalloc/jemalloc.sh
redis-5.0.10/deps/jemalloc/include/jemalloc/jemalloc_defs.h.in
redis-5.0.10/deps/jemalloc/include/jemalloc/jemalloc_macros.h.in
redis-5.0.10/deps/jemalloc/include/jemalloc/jemalloc_mangle.sh
redis-5.0.10/deps/jemalloc/include/jemalloc/jemalloc_protos.h.in
redis-5.0.10/deps/jemalloc/include/jemalloc/jemalloc_rename.sh
redis-5.0.10/deps/jemalloc/include/jemalloc/jemalloc_typedefs.h.in
redis-5.0.10/deps/jemalloc/include/msvc_compat/
redis-5.0.10/deps/jemalloc/include/msvc_compat/C99/
redis-5.0.10/deps/jemalloc/include/msvc_compat/C99/stdbool.h
redis-5.0.10/deps/jemalloc/include/msvc_compat/C99/stdint.h
redis-5.0.10/deps/jemalloc/include/msvc_compat/strings.h
redis-5.0.10/deps/jemalloc/include/msvc_compat/windows_extra.h
redis-5.0.10/deps/jemalloc/jemalloc.pc.in
redis-5.0.10/deps/jemalloc/m4/
redis-5.0.10/deps/jemalloc/m4/ax_cxx_compile_stdcxx.m4
redis-5.0.10/deps/jemalloc/msvc/
redis-5.0.10/deps/jemalloc/msvc/ReadMe.txt
redis-5.0.10/deps/jemalloc/msvc/jemalloc_vc2015.sln
redis-5.0.10/deps/jemalloc/msvc/jemalloc_vc2017.sln
redis-5.0.10/deps/jemalloc/msvc/projects/
redis-5.0.10/deps/jemalloc/msvc/projects/vc2015/
redis-5.0.10/deps/jemalloc/msvc/projects/vc2015/jemalloc/
redis-5.0.10/deps/jemalloc/msvc/projects/vc2015/jemalloc/jemalloc.vcxproj
redis-5.0.10/deps/jemalloc/msvc/projects/vc2015/jemalloc/jemalloc.vcxproj.filters
redis-5.0.10/deps/jemalloc/msvc/projects/vc2015/test_threads/
redis-5.0.10/deps/jemalloc/msvc/projects/vc2015/test_threads/test_threads.vcxproj
redis-5.0.10/deps/jemalloc/msvc/projects/vc2015/test_threads/test_threads.vcxproj.filters
redis-5.0.10/deps/jemalloc/msvc/projects/vc2017/
redis-5.0.10/deps/jemalloc/msvc/projects/vc2017/jemalloc/
redis-5.0.10/deps/jemalloc/msvc/projects/vc2017/jemalloc/jemalloc.vcxproj
redis-5.0.10/deps/jemalloc/msvc/projects/vc2017/jemalloc/jemalloc.vcxproj.filters
redis-5.0.10/deps/jemalloc/msvc/projects/vc2017/test_threads/
redis-5.0.10/deps/jemalloc/msvc/projects/vc2017/test_threads/test_threads.vcxproj
redis-5.0.10/deps/jemalloc/msvc/projects/vc2017/test_threads/test_threads.vcxproj.filters
redis-5.0.10/deps/jemalloc/msvc/test_threads/
redis-5.0.10/deps/jemalloc/msvc/test_threads/test_threads.cpp
redis-5.0.10/deps/jemalloc/msvc/test_threads/test_threads.h
redis-5.0.10/deps/jemalloc/msvc/test_threads/test_threads_main.cpp
redis-5.0.10/deps/jemalloc/run_tests.sh
redis-5.0.10/deps/jemalloc/scripts/
redis-5.0.10/deps/jemalloc/scripts/gen_run_tests.py
redis-5.0.10/deps/jemalloc/scripts/gen_travis.py
redis-5.0.10/deps/jemalloc/src/
redis-5.0.10/deps/jemalloc/src/arena.c
redis-5.0.10/deps/jemalloc/src/background_thread.c
redis-5.0.10/deps/jemalloc/src/base.c
redis-5.0.10/deps/jemalloc/src/bin.c
redis-5.0.10/deps/jemalloc/src/bitmap.c
redis-5.0.10/deps/jemalloc/src/ckh.c
redis-5.0.10/deps/jemalloc/src/ctl.c
redis-5.0.10/deps/jemalloc/src/div.c
redis-5.0.10/deps/jemalloc/src/extent.c
redis-5.0.10/deps/jemalloc/src/extent_dss.c
redis-5.0.10/deps/jemalloc/src/extent_mmap.c
redis-5.0.10/deps/jemalloc/src/hash.c
redis-5.0.10/deps/jemalloc/src/hooks.c
redis-5.0.10/deps/jemalloc/src/jemalloc.c
redis-5.0.10/deps/jemalloc/src/jemalloc_cpp.cpp
redis-5.0.10/deps/jemalloc/src/large.c
redis-5.0.10/deps/jemalloc/src/log.c
redis-5.0.10/deps/jemalloc/src/malloc_io.c
redis-5.0.10/deps/jemalloc/src/mutex.c
redis-5.0.10/deps/jemalloc/src/mutex_pool.c
redis-5.0.10/deps/jemalloc/src/nstime.c
redis-5.0.10/deps/jemalloc/src/pages.c
redis-5.0.10/deps/jemalloc/src/prng.c
redis-5.0.10/deps/jemalloc/src/prof.c
redis-5.0.10/deps/jemalloc/src/rtree.c
redis-5.0.10/deps/jemalloc/src/stats.c
redis-5.0.10/deps/jemalloc/src/sz.c
redis-5.0.10/deps/jemalloc/src/tcache.c
redis-5.0.10/deps/jemalloc/src/ticker.c
redis-5.0.10/deps/jemalloc/src/tsd.c
redis-5.0.10/deps/jemalloc/src/witness.c
redis-5.0.10/deps/jemalloc/src/zone.c
redis-5.0.10/deps/jemalloc/test/
redis-5.0.10/deps/jemalloc/test/include/
redis-5.0.10/deps/jemalloc/test/include/test/
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-alti.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params11213.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params1279.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params132049.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params19937.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params216091.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params2281.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params4253.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params44497.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params607.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-params86243.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT-sse2.h
redis-5.0.10/deps/jemalloc/test/include/test/SFMT.h
redis-5.0.10/deps/jemalloc/test/include/test/btalloc.h
redis-5.0.10/deps/jemalloc/test/include/test/extent_hooks.h
redis-5.0.10/deps/jemalloc/test/include/test/jemalloc_test.h.in
redis-5.0.10/deps/jemalloc/test/include/test/jemalloc_test_defs.h.in
redis-5.0.10/deps/jemalloc/test/include/test/math.h
redis-5.0.10/deps/jemalloc/test/include/test/mq.h
redis-5.0.10/deps/jemalloc/test/include/test/mtx.h
redis-5.0.10/deps/jemalloc/test/include/test/test.h
redis-5.0.10/deps/jemalloc/test/include/test/thd.h
redis-5.0.10/deps/jemalloc/test/include/test/timer.h
redis-5.0.10/deps/jemalloc/test/integration/
redis-5.0.10/deps/jemalloc/test/integration/MALLOCX_ARENA.c
redis-5.0.10/deps/jemalloc/test/integration/aligned_alloc.c
redis-5.0.10/deps/jemalloc/test/integration/allocated.c
redis-5.0.10/deps/jemalloc/test/integration/cpp/
redis-5.0.10/deps/jemalloc/test/integration/cpp/basic.cpp
redis-5.0.10/deps/jemalloc/test/integration/extent.c
redis-5.0.10/deps/jemalloc/test/integration/extent.sh
redis-5.0.10/deps/jemalloc/test/integration/mallocx.c
redis-5.0.10/deps/jemalloc/test/integration/mallocx.sh
redis-5.0.10/deps/jemalloc/test/integration/overflow.c
redis-5.0.10/deps/jemalloc/test/integration/posix_memalign.c
redis-5.0.10/deps/jemalloc/test/integration/rallocx.c
redis-5.0.10/deps/jemalloc/test/integration/sdallocx.c
redis-5.0.10/deps/jemalloc/test/integration/thread_arena.c
redis-5.0.10/deps/jemalloc/test/integration/thread_tcache_enabled.c
redis-5.0.10/deps/jemalloc/test/integration/xallocx.c
redis-5.0.10/deps/jemalloc/test/integration/xallocx.sh
redis-5.0.10/deps/jemalloc/test/src/
redis-5.0.10/deps/jemalloc/test/src/SFMT.c
redis-5.0.10/deps/jemalloc/test/src/btalloc.c
redis-5.0.10/deps/jemalloc/test/src/btalloc_0.c
redis-5.0.10/deps/jemalloc/test/src/btalloc_1.c
redis-5.0.10/deps/jemalloc/test/src/math.c
redis-5.0.10/deps/jemalloc/test/src/mq.c
redis-5.0.10/deps/jemalloc/test/src/mtx.c
redis-5.0.10/deps/jemalloc/test/src/test.c
redis-5.0.10/deps/jemalloc/test/src/thd.c
redis-5.0.10/deps/jemalloc/test/src/timer.c
redis-5.0.10/deps/jemalloc/test/stress/
redis-5.0.10/deps/jemalloc/test/stress/microbench.c
redis-5.0.10/deps/jemalloc/test/test.sh.in
redis-5.0.10/deps/jemalloc/test/unit/
redis-5.0.10/deps/jemalloc/test/unit/SFMT.c
redis-5.0.10/deps/jemalloc/test/unit/a0.c
redis-5.0.10/deps/jemalloc/test/unit/arena_reset.c
redis-5.0.10/deps/jemalloc/test/unit/arena_reset_prof.c
redis-5.0.10/deps/jemalloc/test/unit/arena_reset_prof.sh
redis-5.0.10/deps/jemalloc/test/unit/atomic.c
redis-5.0.10/deps/jemalloc/test/unit/background_thread.c
redis-5.0.10/deps/jemalloc/test/unit/background_thread_enable.c
redis-5.0.10/deps/jemalloc/test/unit/base.c
redis-5.0.10/deps/jemalloc/test/unit/bit_util.c
redis-5.0.10/deps/jemalloc/test/unit/bitmap.c
redis-5.0.10/deps/jemalloc/test/unit/ckh.c
redis-5.0.10/deps/jemalloc/test/unit/decay.c
redis-5.0.10/deps/jemalloc/test/unit/decay.sh
redis-5.0.10/deps/jemalloc/test/unit/div.c
redis-5.0.10/deps/jemalloc/test/unit/emitter.c
redis-5.0.10/deps/jemalloc/test/unit/extent_quantize.c
redis-5.0.10/deps/jemalloc/test/unit/fork.c
redis-5.0.10/deps/jemalloc/test/unit/hash.c
redis-5.0.10/deps/jemalloc/test/unit/hooks.c
redis-5.0.10/deps/jemalloc/test/unit/junk.c
redis-5.0.10/deps/jemalloc/test/unit/junk.sh
redis-5.0.10/deps/jemalloc/test/unit/junk_alloc.c
redis-5.0.10/deps/jemalloc/test/unit/junk_alloc.sh
redis-5.0.10/deps/jemalloc/test/unit/junk_free.c
redis-5.0.10/deps/jemalloc/test/unit/junk_free.sh
redis-5.0.10/deps/jemalloc/test/unit/log.c
redis-5.0.10/deps/jemalloc/test/unit/mallctl.c
redis-5.0.10/deps/jemalloc/test/unit/malloc_io.c
redis-5.0.10/deps/jemalloc/test/unit/math.c
redis-5.0.10/deps/jemalloc/test/unit/mq.c
redis-5.0.10/deps/jemalloc/test/unit/mtx.c
redis-5.0.10/deps/jemalloc/test/unit/nstime.c
redis-5.0.10/deps/jemalloc/test/unit/pack.c
redis-5.0.10/deps/jemalloc/test/unit/pack.sh
redis-5.0.10/deps/jemalloc/test/unit/pages.c
redis-5.0.10/deps/jemalloc/test/unit/ph.c
redis-5.0.10/deps/jemalloc/test/unit/prng.c
redis-5.0.10/deps/jemalloc/test/unit/prof_accum.c
redis-5.0.10/deps/jemalloc/test/unit/prof_accum.sh
redis-5.0.10/deps/jemalloc/test/unit/prof_active.c
redis-5.0.10/deps/jemalloc/test/unit/prof_active.sh
redis-5.0.10/deps/jemalloc/test/unit/prof_gdump.c
redis-5.0.10/deps/jemalloc/test/unit/prof_gdump.sh
redis-5.0.10/deps/jemalloc/test/unit/prof_idump.c
redis-5.0.10/deps/jemalloc/test/unit/prof_idump.sh
redis-5.0.10/deps/jemalloc/test/unit/prof_reset.c
redis-5.0.10/deps/jemalloc/test/unit/prof_reset.sh
redis-5.0.10/deps/jemalloc/test/unit/prof_tctx.c
redis-5.0.10/deps/jemalloc/test/unit/prof_tctx.sh
redis-5.0.10/deps/jemalloc/test/unit/prof_thread_name.c
redis-5.0.10/deps/jemalloc/test/unit/prof_thread_name.sh
redis-5.0.10/deps/jemalloc/test/unit/ql.c
redis-5.0.10/deps/jemalloc/test/unit/qr.c
redis-5.0.10/deps/jemalloc/test/unit/rb.c
redis-5.0.10/deps/jemalloc/test/unit/retained.c
redis-5.0.10/deps/jemalloc/test/unit/rtree.c
redis-5.0.10/deps/jemalloc/test/unit/size_classes.c
redis-5.0.10/deps/jemalloc/test/unit/slab.c
redis-5.0.10/deps/jemalloc/test/unit/smoothstep.c
redis-5.0.10/deps/jemalloc/test/unit/spin.c
redis-5.0.10/deps/jemalloc/test/unit/stats.c
redis-5.0.10/deps/jemalloc/test/unit/stats_print.c
redis-5.0.10/deps/jemalloc/test/unit/ticker.c
redis-5.0.10/deps/jemalloc/test/unit/tsd.c
redis-5.0.10/deps/jemalloc/test/unit/witness.c
redis-5.0.10/deps/jemalloc/test/unit/zero.c
redis-5.0.10/deps/jemalloc/test/unit/zero.sh
redis-5.0.10/deps/linenoise/
redis-5.0.10/deps/linenoise/.gitignore
redis-5.0.10/deps/linenoise/Makefile
redis-5.0.10/deps/linenoise/README.markdown
redis-5.0.10/deps/linenoise/example.c
redis-5.0.10/deps/linenoise/linenoise.c
redis-5.0.10/deps/linenoise/linenoise.h
redis-5.0.10/deps/lua/
redis-5.0.10/deps/lua/COPYRIGHT
redis-5.0.10/deps/lua/HISTORY
redis-5.0.10/deps/lua/INSTALL
redis-5.0.10/deps/lua/Makefile
redis-5.0.10/deps/lua/README
redis-5.0.10/deps/lua/doc/
redis-5.0.10/deps/lua/doc/contents.html
redis-5.0.10/deps/lua/doc/cover.png
redis-5.0.10/deps/lua/doc/logo.gif
redis-5.0.10/deps/lua/doc/lua.1
redis-5.0.10/deps/lua/doc/lua.css
redis-5.0.10/deps/lua/doc/lua.html
redis-5.0.10/deps/lua/doc/luac.1
redis-5.0.10/deps/lua/doc/luac.html
redis-5.0.10/deps/lua/doc/manual.css
redis-5.0.10/deps/lua/doc/manual.html
redis-5.0.10/deps/lua/doc/readme.html
redis-5.0.10/deps/lua/etc/
redis-5.0.10/deps/lua/etc/Makefile
redis-5.0.10/deps/lua/etc/README
redis-5.0.10/deps/lua/etc/all.c
redis-5.0.10/deps/lua/etc/lua.hpp
redis-5.0.10/deps/lua/etc/lua.ico
redis-5.0.10/deps/lua/etc/lua.pc
redis-5.0.10/deps/lua/etc/luavs.bat
redis-5.0.10/deps/lua/etc/min.c
redis-5.0.10/deps/lua/etc/noparser.c
redis-5.0.10/deps/lua/etc/strict.lua
redis-5.0.10/deps/lua/src/
redis-5.0.10/deps/lua/src/Makefile
redis-5.0.10/deps/lua/src/fpconv.c
redis-5.0.10/deps/lua/src/fpconv.h
redis-5.0.10/deps/lua/src/lapi.c
redis-5.0.10/deps/lua/src/lapi.h
redis-5.0.10/deps/lua/src/lauxlib.c
redis-5.0.10/deps/lua/src/lauxlib.h
redis-5.0.10/deps/lua/src/lbaselib.c
redis-5.0.10/deps/lua/src/lcode.c
redis-5.0.10/deps/lua/src/lcode.h
redis-5.0.10/deps/lua/src/ldblib.c
redis-5.0.10/deps/lua/src/ldebug.c
redis-5.0.10/deps/lua/src/ldebug.h
redis-5.0.10/deps/lua/src/ldo.c
redis-5.0.10/deps/lua/src/ldo.h
redis-5.0.10/deps/lua/src/ldump.c
redis-5.0.10/deps/lua/src/lfunc.c
redis-5.0.10/deps/lua/src/lfunc.h
redis-5.0.10/deps/lua/src/lgc.c
redis-5.0.10/deps/lua/src/lgc.h
redis-5.0.10/deps/lua/src/linit.c
redis-5.0.10/deps/lua/src/liolib.c
redis-5.0.10/deps/lua/src/llex.c
redis-5.0.10/deps/lua/src/llex.h
redis-5.0.10/deps/lua/src/llimits.h
redis-5.0.10/deps/lua/src/lmathlib.c
redis-5.0.10/deps/lua/src/lmem.c
redis-5.0.10/deps/lua/src/lmem.h
redis-5.0.10/deps/lua/src/loadlib.c
redis-5.0.10/deps/lua/src/lobject.c
redis-5.0.10/deps/lua/src/lobject.h
redis-5.0.10/deps/lua/src/lopcodes.c
redis-5.0.10/deps/lua/src/lopcodes.h
redis-5.0.10/deps/lua/src/loslib.c
redis-5.0.10/deps/lua/src/lparser.c
redis-5.0.10/deps/lua/src/lparser.h
redis-5.0.10/deps/lua/src/lstate.c
redis-5.0.10/deps/lua/src/lstate.h
redis-5.0.10/deps/lua/src/lstring.c
redis-5.0.10/deps/lua/src/lstring.h
redis-5.0.10/deps/lua/src/lstrlib.c
redis-5.0.10/deps/lua/src/ltable.c
redis-5.0.10/deps/lua/src/ltable.h
redis-5.0.10/deps/lua/src/ltablib.c
redis-5.0.10/deps/lua/src/ltm.c
redis-5.0.10/deps/lua/src/ltm.h
redis-5.0.10/deps/lua/src/lua.c
redis-5.0.10/deps/lua/src/lua.h
redis-5.0.10/deps/lua/src/lua_bit.c
redis-5.0.10/deps/lua/src/lua_cjson.c
redis-5.0.10/deps/lua/src/lua_cmsgpack.c
redis-5.0.10/deps/lua/src/lua_struct.c
redis-5.0.10/deps/lua/src/luac.c
redis-5.0.10/deps/lua/src/luaconf.h
redis-5.0.10/deps/lua/src/lualib.h
redis-5.0.10/deps/lua/src/lundump.c
redis-5.0.10/deps/lua/src/lundump.h
redis-5.0.10/deps/lua/src/lvm.c
redis-5.0.10/deps/lua/src/lvm.h
redis-5.0.10/deps/lua/src/lzio.c
redis-5.0.10/deps/lua/src/lzio.h
redis-5.0.10/deps/lua/src/print.c
redis-5.0.10/deps/lua/src/strbuf.c
redis-5.0.10/deps/lua/src/strbuf.h
redis-5.0.10/deps/lua/test/
redis-5.0.10/deps/lua/test/README
redis-5.0.10/deps/lua/test/bisect.lua
redis-5.0.10/deps/lua/test/cf.lua
redis-5.0.10/deps/lua/test/echo.lua
redis-5.0.10/deps/lua/test/env.lua
redis-5.0.10/deps/lua/test/factorial.lua
redis-5.0.10/deps/lua/test/fib.lua
redis-5.0.10/deps/lua/test/fibfor.lua
redis-5.0.10/deps/lua/test/globals.lua
redis-5.0.10/deps/lua/test/hello.lua
redis-5.0.10/deps/lua/test/life.lua
redis-5.0.10/deps/lua/test/luac.lua
redis-5.0.10/deps/lua/test/printf.lua
redis-5.0.10/deps/lua/test/readonly.lua
redis-5.0.10/deps/lua/test/sieve.lua
redis-5.0.10/deps/lua/test/sort.lua
redis-5.0.10/deps/lua/test/table.lua
redis-5.0.10/deps/lua/test/trace-calls.lua
redis-5.0.10/deps/lua/test/trace-globals.lua
redis-5.0.10/deps/lua/test/xd.lua
redis-5.0.10/deps/update-jemalloc.sh
redis-5.0.10/redis.conf
redis-5.0.10/runtest
redis-5.0.10/runtest-cluster
redis-5.0.10/runtest-moduleapi
redis-5.0.10/runtest-sentinel
redis-5.0.10/sentinel.conf
redis-5.0.10/src/
redis-5.0.10/src/.gitignore
redis-5.0.10/src/Makefile
redis-5.0.10/src/adlist.c
redis-5.0.10/src/adlist.h
redis-5.0.10/src/ae.c
redis-5.0.10/src/ae.h
redis-5.0.10/src/ae_epoll.c
redis-5.0.10/src/ae_evport.c
redis-5.0.10/src/ae_kqueue.c
redis-5.0.10/src/ae_select.c
redis-5.0.10/src/anet.c
redis-5.0.10/src/anet.h
redis-5.0.10/src/aof.c
redis-5.0.10/src/asciilogo.h
redis-5.0.10/src/atomicvar.h
redis-5.0.10/src/bio.c
redis-5.0.10/src/bio.h
redis-5.0.10/src/bitops.c
redis-5.0.10/src/blocked.c
redis-5.0.10/src/childinfo.c
redis-5.0.10/src/cluster.c
redis-5.0.10/src/cluster.h
redis-5.0.10/src/config.c
redis-5.0.10/src/config.h
redis-5.0.10/src/crc16.c
redis-5.0.10/src/crc64.c
redis-5.0.10/src/crc64.h
redis-5.0.10/src/db.c
redis-5.0.10/src/debug.c
redis-5.0.10/src/debugmacro.h
redis-5.0.10/src/defrag.c
redis-5.0.10/src/dict.c
redis-5.0.10/src/dict.h
redis-5.0.10/src/endianconv.c
redis-5.0.10/src/endianconv.h
redis-5.0.10/src/evict.c
redis-5.0.10/src/expire.c
redis-5.0.10/src/fmacros.h
redis-5.0.10/src/geo.c
redis-5.0.10/src/geo.h
redis-5.0.10/src/geohash.c
redis-5.0.10/src/geohash.h
redis-5.0.10/src/geohash_helper.c
redis-5.0.10/src/geohash_helper.h
redis-5.0.10/src/help.h
redis-5.0.10/src/hyperloglog.c
redis-5.0.10/src/intset.c
redis-5.0.10/src/intset.h
redis-5.0.10/src/latency.c
redis-5.0.10/src/latency.h
redis-5.0.10/src/lazyfree.c
redis-5.0.10/src/listpack.c
redis-5.0.10/src/listpack.h
redis-5.0.10/src/listpack_malloc.h
redis-5.0.10/src/localtime.c
redis-5.0.10/src/lolwut.c
redis-5.0.10/src/lolwut5.c
redis-5.0.10/src/lzf.h
redis-5.0.10/src/lzfP.h
redis-5.0.10/src/lzf_c.c
redis-5.0.10/src/lzf_d.c
redis-5.0.10/src/memtest.c
redis-5.0.10/src/mkreleasehdr.sh
redis-5.0.10/src/module.c
redis-5.0.10/src/modules/
redis-5.0.10/src/modules/.gitignore
redis-5.0.10/src/modules/Makefile
redis-5.0.10/src/modules/gendoc.rb
redis-5.0.10/src/modules/helloblock.c
redis-5.0.10/src/modules/hellocluster.c
redis-5.0.10/src/modules/hellodict.c
redis-5.0.10/src/modules/hellotimer.c
redis-5.0.10/src/modules/hellotype.c
redis-5.0.10/src/modules/helloworld.c
redis-5.0.10/src/modules/testmodule.c
redis-5.0.10/src/multi.c
redis-5.0.10/src/networking.c
redis-5.0.10/src/notify.c
redis-5.0.10/src/object.c
redis-5.0.10/src/pqsort.c
redis-5.0.10/src/pqsort.h
redis-5.0.10/src/pubsub.c
redis-5.0.10/src/quicklist.c
redis-5.0.10/src/quicklist.h
redis-5.0.10/src/rand.c
redis-5.0.10/src/rand.h
redis-5.0.10/src/rax.c
redis-5.0.10/src/rax.h
redis-5.0.10/src/rax_malloc.h
redis-5.0.10/src/rdb.c
redis-5.0.10/src/rdb.h
redis-5.0.10/src/redis-benchmark.c
redis-5.0.10/src/redis-check-aof.c
redis-5.0.10/src/redis-check-rdb.c
redis-5.0.10/src/redis-cli.c
redis-5.0.10/src/redis-trib.rb
redis-5.0.10/src/redisassert.h
redis-5.0.10/src/redismodule.h
redis-5.0.10/src/release.c
redis-5.0.10/src/replication.c
redis-5.0.10/src/rio.c
redis-5.0.10/src/rio.h
redis-5.0.10/src/scripting.c
redis-5.0.10/src/sds.c
redis-5.0.10/src/sds.h
redis-5.0.10/src/sdsalloc.h
redis-5.0.10/src/sentinel.c
redis-5.0.10/src/server.c
redis-5.0.10/src/server.h
redis-5.0.10/src/setproctitle.c
redis-5.0.10/src/sha1.c
redis-5.0.10/src/sha1.h
redis-5.0.10/src/siphash.c
redis-5.0.10/src/slowlog.c
redis-5.0.10/src/slowlog.h
redis-5.0.10/src/solarisfixes.h
redis-5.0.10/src/sort.c
redis-5.0.10/src/sparkline.c
redis-5.0.10/src/sparkline.h
redis-5.0.10/src/stream.h
redis-5.0.10/src/syncio.c
redis-5.0.10/src/t_hash.c
redis-5.0.10/src/t_list.c
redis-5.0.10/src/t_set.c
redis-5.0.10/src/t_stream.c
redis-5.0.10/src/t_string.c
redis-5.0.10/src/t_zset.c
redis-5.0.10/src/testhelp.h
redis-5.0.10/src/util.c
redis-5.0.10/src/util.h
redis-5.0.10/src/valgrind.sup
redis-5.0.10/src/version.h
redis-5.0.10/src/ziplist.c
redis-5.0.10/src/ziplist.h
redis-5.0.10/src/zipmap.c
redis-5.0.10/src/zipmap.h
redis-5.0.10/src/zmalloc.c
redis-5.0.10/src/zmalloc.h
redis-5.0.10/tests/
redis-5.0.10/tests/assets/
redis-5.0.10/tests/assets/default.conf
redis-5.0.10/tests/assets/encodings.rdb
redis-5.0.10/tests/assets/hash-zipmap.rdb
redis-5.0.10/tests/cluster/
redis-5.0.10/tests/cluster/cluster.tcl
redis-5.0.10/tests/cluster/run.tcl
redis-5.0.10/tests/cluster/tests/
redis-5.0.10/tests/cluster/tests/00-base.tcl
redis-5.0.10/tests/cluster/tests/01-faildet.tcl
redis-5.0.10/tests/cluster/tests/02-failover.tcl
redis-5.0.10/tests/cluster/tests/03-failover-loop.tcl
redis-5.0.10/tests/cluster/tests/04-resharding.tcl
redis-5.0.10/tests/cluster/tests/05-slave-selection.tcl
redis-5.0.10/tests/cluster/tests/06-slave-stop-cond.tcl
redis-5.0.10/tests/cluster/tests/07-replica-migration.tcl
redis-5.0.10/tests/cluster/tests/08-update-msg.tcl
redis-5.0.10/tests/cluster/tests/09-pubsub.tcl
redis-5.0.10/tests/cluster/tests/10-manual-failover.tcl
redis-5.0.10/tests/cluster/tests/11-manual-takeover.tcl
redis-5.0.10/tests/cluster/tests/12-replica-migration-2.tcl
redis-5.0.10/tests/cluster/tests/13-no-failover-option.tcl
redis-5.0.10/tests/cluster/tests/16-transactions-on-replica.tcl
redis-5.0.10/tests/cluster/tests/helpers/
redis-5.0.10/tests/cluster/tests/helpers/onlydots.tcl
redis-5.0.10/tests/cluster/tests/includes/
redis-5.0.10/tests/cluster/tests/includes/init-tests.tcl
redis-5.0.10/tests/cluster/tmp/
redis-5.0.10/tests/cluster/tmp/.gitignore
redis-5.0.10/tests/helpers/
redis-5.0.10/tests/helpers/bg_block_op.tcl
redis-5.0.10/tests/helpers/bg_complex_data.tcl
redis-5.0.10/tests/helpers/gen_write_load.tcl
redis-5.0.10/tests/instances.tcl
redis-5.0.10/tests/integration/
redis-5.0.10/tests/integration/aof-race.tcl
redis-5.0.10/tests/integration/aof.tcl
redis-5.0.10/tests/integration/block-repl.tcl
redis-5.0.10/tests/integration/convert-zipmap-hash-on-load.tcl
redis-5.0.10/tests/integration/logging.tcl
redis-5.0.10/tests/integration/psync2-reg.tcl
redis-5.0.10/tests/integration/psync2.tcl
redis-5.0.10/tests/integration/rdb.tcl
redis-5.0.10/tests/integration/redis-cli.tcl
redis-5.0.10/tests/integration/replication-2.tcl
redis-5.0.10/tests/integration/replication-3.tcl
redis-5.0.10/tests/integration/replication-4.tcl
redis-5.0.10/tests/integration/replication-psync.tcl
redis-5.0.10/tests/integration/replication.tcl
redis-5.0.10/tests/modules/
redis-5.0.10/tests/modules/Makefile
redis-5.0.10/tests/modules/commandfilter.c
redis-5.0.10/tests/modules/testrdb.c
redis-5.0.10/tests/sentinel/
redis-5.0.10/tests/sentinel/run.tcl
redis-5.0.10/tests/sentinel/tests/
redis-5.0.10/tests/sentinel/tests/00-base.tcl
redis-5.0.10/tests/sentinel/tests/01-conf-update.tcl
redis-5.0.10/tests/sentinel/tests/02-slaves-reconf.tcl
redis-5.0.10/tests/sentinel/tests/03-runtime-reconf.tcl
redis-5.0.10/tests/sentinel/tests/04-slave-selection.tcl
redis-5.0.10/tests/sentinel/tests/05-manual.tcl
redis-5.0.10/tests/sentinel/tests/06-ckquorum.tcl
redis-5.0.10/tests/sentinel/tests/07-down-conditions.tcl
redis-5.0.10/tests/sentinel/tests/includes/
redis-5.0.10/tests/sentinel/tests/includes/init-tests.tcl
redis-5.0.10/tests/sentinel/tmp/
redis-5.0.10/tests/sentinel/tmp/.gitignore
redis-5.0.10/tests/support/
redis-5.0.10/tests/support/cluster.tcl
redis-5.0.10/tests/support/redis.tcl
redis-5.0.10/tests/support/server.tcl
redis-5.0.10/tests/support/test.tcl
redis-5.0.10/tests/support/tmpfile.tcl
redis-5.0.10/tests/support/util.tcl
redis-5.0.10/tests/test_helper.tcl
redis-5.0.10/tests/tmp/
redis-5.0.10/tests/tmp/.gitignore
redis-5.0.10/tests/unit/
redis-5.0.10/tests/unit/aofrw.tcl
redis-5.0.10/tests/unit/auth.tcl
redis-5.0.10/tests/unit/bitfield.tcl
redis-5.0.10/tests/unit/bitops.tcl
redis-5.0.10/tests/unit/dump.tcl
redis-5.0.10/tests/unit/expire.tcl
redis-5.0.10/tests/unit/geo.tcl
redis-5.0.10/tests/unit/hyperloglog.tcl
redis-5.0.10/tests/unit/introspection-2.tcl
redis-5.0.10/tests/unit/introspection.tcl
redis-5.0.10/tests/unit/keyspace.tcl
redis-5.0.10/tests/unit/latency-monitor.tcl
redis-5.0.10/tests/unit/lazyfree.tcl
redis-5.0.10/tests/unit/limits.tcl
redis-5.0.10/tests/unit/maxmemory.tcl
redis-5.0.10/tests/unit/memefficiency.tcl
redis-5.0.10/tests/unit/moduleapi/
redis-5.0.10/tests/unit/moduleapi/commandfilter.tcl
redis-5.0.10/tests/unit/moduleapi/testrdb.tcl
redis-5.0.10/tests/unit/multi.tcl
redis-5.0.10/tests/unit/obuf-limits.tcl
redis-5.0.10/tests/unit/other.tcl
redis-5.0.10/tests/unit/pendingquerybuf.tcl
redis-5.0.10/tests/unit/printver.tcl
redis-5.0.10/tests/unit/protocol.tcl
redis-5.0.10/tests/unit/pubsub.tcl
redis-5.0.10/tests/unit/quit.tcl
redis-5.0.10/tests/unit/scan.tcl
redis-5.0.10/tests/unit/scripting.tcl
redis-5.0.10/tests/unit/slowlog.tcl
redis-5.0.10/tests/unit/sort.tcl
redis-5.0.10/tests/unit/type/
redis-5.0.10/tests/unit/type/hash.tcl
redis-5.0.10/tests/unit/type/incr.tcl
redis-5.0.10/tests/unit/type/list-2.tcl
redis-5.0.10/tests/unit/type/list-3.tcl
redis-5.0.10/tests/unit/type/list-common.tcl
redis-5.0.10/tests/unit/type/list.tcl
redis-5.0.10/tests/unit/type/set.tcl
redis-5.0.10/tests/unit/type/stream-cgroups.tcl
redis-5.0.10/tests/unit/type/stream.tcl
redis-5.0.10/tests/unit/type/string.tcl
redis-5.0.10/tests/unit/type/zset.tcl
redis-5.0.10/tests/unit/wait.tcl
redis-5.0.10/utils/
redis-5.0.10/utils/build-static-symbols.tcl
redis-5.0.10/utils/cluster_fail_time.tcl
redis-5.0.10/utils/corrupt_rdb.c
redis-5.0.10/utils/create-cluster/
redis-5.0.10/utils/create-cluster/.gitignore
redis-5.0.10/utils/create-cluster/README
redis-5.0.10/utils/create-cluster/create-cluster
redis-5.0.10/utils/generate-command-help.rb
redis-5.0.10/utils/graphs/
redis-5.0.10/utils/graphs/commits-over-time/
redis-5.0.10/utils/graphs/commits-over-time/README.md
redis-5.0.10/utils/graphs/commits-over-time/genhtml.tcl
redis-5.0.10/utils/hashtable/
redis-5.0.10/utils/hashtable/README
redis-5.0.10/utils/hashtable/rehashing.c
redis-5.0.10/utils/hyperloglog/
redis-5.0.10/utils/hyperloglog/.gitignore
redis-5.0.10/utils/hyperloglog/hll-err.rb
redis-5.0.10/utils/hyperloglog/hll-gnuplot-graph.rb
redis-5.0.10/utils/install_server.sh
redis-5.0.10/utils/lru/
redis-5.0.10/utils/lru/README
redis-5.0.10/utils/lru/lfu-simulation.c
redis-5.0.10/utils/lru/test-lru.rb
redis-5.0.10/utils/redis-copy.rb
redis-5.0.10/utils/redis-sha1.rb
redis-5.0.10/utils/redis_init_script
redis-5.0.10/utils/redis_init_script.tpl
redis-5.0.10/utils/releasetools/
redis-5.0.10/utils/releasetools/01_create_tarball.sh
redis-5.0.10/utils/releasetools/02_upload_tarball.sh
redis-5.0.10/utils/releasetools/03_test_release.sh
redis-5.0.10/utils/releasetools/04_release_hash.sh
redis-5.0.10/utils/releasetools/changelog.tcl
redis-5.0.10/utils/speed-regression.tcl
redis-5.0.10/utils/whatisdoing.sh
[root@localhost local]#

解压后,在 /usr/local/ 目录下,会产生一个 redis-5.0.10 目录,这就是redis的解压目录。

cd切换到 redis 解压目录下,执行编译

进入 redis解压目录
cd redis-5.0.10
执行编译
make

[root@localhost local]# cd redis-5.0.10/
[root@localhost redis-5.0.10]# make
cd src && make all
make[1]: 进入目录“/usr/local/redis-5.0.10/src”
    CC Makefile.dep
make[1]: 离开目录“/usr/local/redis-5.0.10/src”
make[1]: 进入目录“/usr/local/redis-5.0.10/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
(cd ../deps && make distclean)
make[2]: 进入目录“/usr/local/redis-5.0.10/deps”
(cd hiredis && make clean) > /dev/null || true
(cd linenoise && make clean) > /dev/null || true
(cd lua && make clean) > /dev/null || true
(cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
(rm -f .make-*)
make[2]: 离开目录“/usr/local/redis-5.0.10/deps”
(rm -f .make-*)
echo STD=-std=c99 -pedantic -DREDIS_STATIC='' >> .make-settings
echo WARN=-Wall -W -Wno-missing-field-initializers >> .make-settings
echo OPT=-O2 >> .make-settings
echo MALLOC=jemalloc >> .make-settings
echo CFLAGS= >> .make-settings
echo LDFLAGS= >> .make-settings
echo REDIS_CFLAGS= >> .make-settings
echo REDIS_LDFLAGS= >> .make-settings
echo PREV_FINAL_CFLAGS=-std=c99 -pedantic -DREDIS_STATIC='' -Wall -W -Wno-missing-field-initializers -O2 -g -ggdb   -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src -DUSE_JEMALLOC -I../deps/jemalloc/include >> .make-settings
echo PREV_FINAL_LDFLAGS=  -g -ggdb -rdynamic >> .make-settings
(cd ../deps && make hiredis linenoise lua jemalloc)
make[2]: 进入目录“/usr/local/redis-5.0.10/deps”
(cd hiredis && make clean) > /dev/null || true
(cd linenoise && make clean) > /dev/null || true
(cd lua && make clean) > /dev/null || true
(cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
(rm -f .make-*)
(echo "" > .make-cflags)
(echo "" > .make-ldflags)
MAKE hiredis
cd hiredis && make static
make[3]: 进入目录“/usr/local/redis-5.0.10/deps/hiredis”
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  net.c
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  hiredis.c
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  sds.c
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  async.c
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  read.c
ar rcs libhiredis.a net.o hiredis.o sds.o async.o read.o
make[3]: 离开目录“/usr/local/redis-5.0.10/deps/hiredis”
MAKE linenoise
cd linenoise && make
make[3]: 进入目录“/usr/local/redis-5.0.10/deps/linenoise”
cc  -Wall -Os -g  -c linenoise.c
make[3]: 离开目录“/usr/local/redis-5.0.10/deps/linenoise”
MAKE lua
cd lua/src && make all CFLAGS="-O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' " MYLDFLAGS="" AR="ar rcu"
make[3]: 进入目录“/usr/local/redis-5.0.10/deps/lua/src”
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lapi.o lapi.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lcode.o lcode.ccc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o ldebug.o ldebug.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o ldo.o ldo.c
ldo.c: 在函数‘f_parser’中:
ldo.c:496:7: 警告:未使用的变量‘c’ [-Wunused-variable]
   int c = luaZ_lookahead(p->z);
       ^
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o ldump.o ldump.ccc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lfunc.o lfunc.ccc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lgc.o lgc.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o llex.o llex.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lmem.o lmem.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lobject.o lobject.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lopcodes.o lopcodes.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lparser.o lparser.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lstate.o lstate.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lstring.o lstring.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o ltable.o ltable.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o ltm.o ltm.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lundump.o lundump.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lvm.o lvm.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lzio.o lzio.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o strbuf.o strbuf.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o fpconv.o fpconv.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lauxlib.o lauxlib.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lbaselib.o lbaselib.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o ldblib.o ldblib.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o liolib.o liolib.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lmathlib.o lmathlib.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o loslib.o loslib.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o ltablib.o ltablib.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lstrlib.o lstrlib.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o loadlib.o loadlib.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o linit.o linit.ccc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lua_cjson.o lua_cjson.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lua_struct.o lua_struct.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lua_cmsgpack.o lua_cmsgpack.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lua_bit.o lua_bit.c
ar rcu liblua.a lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o strbuf.o fpconv.o lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o lstrlib.o loadlib.o linit.o lua_cjson.o lua_struct.o lua_cmsgpack.o lua_bit.o  # DLL needs all object files
ranlib liblua.a
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o lua.o lua.c
cc -o lua  lua.o liblua.a -lm 
liblua.a(loslib.o):在函数‘os_tmpname’中:
loslib.c:(.text+0x28c): 警告:the use of `tmpnam' is dangerous, better use `mkstemp'
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o luac.o luac.c
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC=''    -c -o print.o print.ccc -o luac  luac.o print.o liblua.a -lm 
make[3]: 离开目录“/usr/local/redis-5.0.10/deps/lua/src”
MAKE jemalloc
cd jemalloc && ./configure --with-version=5.1.0-0-g0 --with-lg-quantum=3 --with-jemalloc-prefix=je_ --enable-cc-silence CFLAGS="-std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops " LDFLAGS=""
configure: WARNING: unrecognized options: --enable-cc-silence
checking for xsltproc... /usr/bin/xsltproc
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether compiler is cray... no
checking whether compiler supports -std=gnu11... yes
checking whether compiler supports -Wall... yes
checking whether compiler supports -Wshorten-64-to-32... no
checking whether compiler supports -Wsign-compare... yes
checking whether compiler supports -Wundef... yes
checking whether compiler supports -Wno-format-zero-length... yes
checking whether compiler supports -pipe... yes
checking whether compiler supports -g3... yes
checking how to run the C preprocessor... gcc -E
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl.exe... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no
checking whether we are using the GNU C++ compiler... no
checking whether g++ accepts -g... no
checking whether g++ supports C++14 features by default... no
checking whether g++ supports C++14 features with -std=c++14... no
checking whether g++ supports C++14 features with -std=c++0x... no
checking whether g++ supports C++14 features with +std=c++14... no
checking whether g++ supports C++14 features with -h std=c++14... no
configure: No compiler with C++14 support was found
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking whether byte ordering is bigendian... no
checking size of void *... 8
checking size of int... 4
checking size of long... 8
checking size of long long... 8
checking size of intmax_t... 8
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking whether pause instruction is compilable... yes
checking number of significant virtual address bits... 48
checking for ar... ar
checking for nm... nm
checking for gawk... gawk
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking whether malloc_usable_size definition can use const argument... no
checking for library containing log... -lm
checking whether __attribute__ syntax is compilable... yes
checking whether compiler supports -fvisibility=hidden... yes
checking whether compiler supports -fvisibility=hidden... no
checking whether compiler supports -Werror... yes
checking whether compiler supports -herror_on_warning... no
checking whether tls_model attribute is compilable... yes
checking whether compiler supports -Werror... yes
checking whether compiler supports -herror_on_warning... no
checking whether alloc_size attribute is compilable... yes
checking whether compiler supports -Werror... yes
checking whether compiler supports -herror_on_warning... no
checking whether format(gnu_printf, ...) attribute is compilable... yes
checking whether compiler supports -Werror... yes
checking whether compiler supports -herror_on_warning... no
checking whether format(printf, ...) attribute is compilable... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for ranlib... ranlib
checking for ld... /usr/bin/ld
checking for autoconf... false
checking for memalign... yes
checking for valloc... yes
checking whether compiler supports -O3... yes
checking whether compiler supports -O3... no
checking whether compiler supports -funroll-loops... yes
checking configured backtracing method... N/A
checking for sbrk... yes
checking whether utrace(2) is compilable... no
checking whether a program using __builtin_unreachable is compilable... yes
checking whether a program using __builtin_ffsl is compilable... yes
checking LG_PAGE... 12
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
checking for pthread_create in -lpthread... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for dlsym... no
checking for dlsym in -ldl... yes
checking whether pthread_atfork(3) is compilable... yes
checking whether pthread_setname_np(3) is compilable... yes
checking for library containing clock_gettime... none required
checking whether clock_gettime(CLOCK_MONOTONIC_COARSE, ...) is compilable... yes
checking whether clock_gettime(CLOCK_MONOTONIC, ...) is compilable... yes
checking whether mach_absolute_time() is compilable... no
checking whether compiler supports -Werror... yes
checking whether syscall(2) is compilable... yes
checking for secure_getenv... yes
checking for sched_getcpu... yes
checking for sched_setaffinity... yes
checking for issetugid... no
checking for _malloc_thread_cleanup... no
checking for _pthread_mutex_init_calloc_cb... no
checking for TLS... yes
checking whether C11 atomics is compilable... no
checking whether GCC __atomic atomics is compilable... yes
checking whether GCC __sync atomics is compilable... yes
checking whether Darwin OSAtomic*() is compilable... no
checking whether madvise(2) is compilable... yes
checking whether madvise(..., MADV_FREE) is compilable... no
checking whether madvise(..., MADV_DONTNEED) is compilable... yes
checking whether madvise(..., MADV_DO[NT]DUMP) is compilable... yes
checking whether madvise(..., MADV_[NO]HUGEPAGE) is compilable... yes
checking whether to force 32-bit __sync_{add,sub}_and_fetch()... no
checking whether to force 64-bit __sync_{add,sub}_and_fetch()... no
checking for __builtin_clz... yes
checking whether Darwin os_unfair_lock_*() is compilable... no
checking whether Darwin OSSpin*() is compilable... no
checking whether glibc malloc hook is compilable... yes
checking whether glibc memalign hook is compilable... yes
checking whether pthreads adaptive mutexes is compilable... yes
checking whether compiler supports -D_GNU_SOURCE... yes
checking whether compiler supports -Werror... yes
checking whether compiler supports -herror_on_warning... no
checking whether strerror_r returns char with gnu source is compilable... yes
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating jemalloc.pc
config.status: creating doc/html.xsl
config.status: creating doc/manpages.xsl
config.status: creating doc/jemalloc.xml
config.status: creating include/jemalloc/jemalloc_macros.h
config.status: creating include/jemalloc/jemalloc_protos.h
config.status: creating include/jemalloc/jemalloc_typedefs.h
config.status: creating include/jemalloc/internal/jemalloc_preamble.h
config.status: creating test/test.sh
config.status: creating test/include/test/jemalloc_test.h
config.status: creating config.stamp
config.status: creating bin/jemalloc-config
config.status: creating bin/jemalloc.sh
config.status: creating bin/jeprof
config.status: creating include/jemalloc/jemalloc_defs.h
config.status: creating include/jemalloc/internal/jemalloc_internal_defs.h
config.status: creating test/include/test/jemalloc_test_defs.h
config.status: executing include/jemalloc/internal/public_symbols.txt commands
config.status: executing include/jemalloc/internal/private_symbols.awk commands
config.status: executing include/jemalloc/internal/private_symbols_jet.awk commands
config.status: executing include/jemalloc/internal/public_namespace.h commands
config.status: executing include/jemalloc/internal/public_unnamespace.h commands
config.status: executing include/jemalloc/internal/size_classes.h commands
config.status: executing include/jemalloc/jemalloc_protos_jet.h commands
config.status: executing include/jemalloc/jemalloc_rename.h commands
config.status: executing include/jemalloc/jemalloc_mangle.h commands
config.status: executing include/jemalloc/jemalloc_mangle_jet.h commands
config.status: executing include/jemalloc/jemalloc.h commands
configure: WARNING: unrecognized options: --enable-cc-silence
===============================================================================
jemalloc version   : 5.1.0-0-g0
library revision   : 2

CONFIG             : --with-version=5.1.0-0-g0 --with-lg-quantum=3 --with-jemalloc-prefix=je_ --enable-cc-silence 'CFLAGS=-std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops ' LDFLAGS=
CC                 : gcc
CONFIGURE_CFLAGS   : -std=gnu11 -Wall -Wsign-compare -Wundef -Wno-format-zero-length -pipe -g3 -fvisibility=hidden -O3 -funroll-loops
SPECIFIED_CFLAGS   : -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops 
EXTRA_CFLAGS       : 
CPPFLAGS           : -D_GNU_SOURCE -D_REENTRANT
CXX                : g++
CONFIGURE_CXXFLAGS : 
SPECIFIED_CXXFLAGS : 
EXTRA_CXXFLAGS     : 
LDFLAGS            : 
EXTRA_LDFLAGS      : 
DSO_LDFLAGS        : -shared -Wl,-soname,$(@F)
LIBS               : -lm  -lpthread -ldl
RPATH_EXTRA        : 

XSLTPROC           : /usr/bin/xsltproc
XSLROOT            : 

PREFIX             : /usr/local
BINDIR             : /usr/local/bin
DATADIR            : /usr/local/share
INCLUDEDIR         : /usr/local/include
LIBDIR             : /usr/local/lib
MANDIR             : /usr/local/share/man

srcroot            : 
abs_srcroot        : /usr/local/redis-5.0.10/deps/jemalloc/
objroot            : 
abs_objroot        : /usr/local/redis-5.0.10/deps/jemalloc/

JEMALLOC_PREFIX    : je_
JEMALLOC_PRIVATE_NAMESPACE
                   : je_
install_suffix     : 
malloc_conf        : 
autogen            : 0
debug              : 0
stats              : 1
prof               : 0
prof-libunwind     : 0
prof-libgcc        : 0
prof-gcc           : 0
fill               : 1
utrace             : 0
xmalloc            : 0
log                : 0
lazy_lock          : 0
cache-oblivious    : 1
cxx                : 0
===============================================================================
cd jemalloc && make CFLAGS="-std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops " LDFLAGS="" lib/libjemalloc.a
make[3]: 进入目录“/usr/local/redis-5.0.10/deps/jemalloc”
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/jemalloc.sym.o src/jemalloc.c
nm -a src/jemalloc.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/jemalloc.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/arena.sym.o src/arena.c
nm -a src/arena.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/arena.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/background_thread.sym.o src/background_thread.c
nm -a src/background_thread.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/background_thread.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/base.sym.o src/base.c
nm -a src/base.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/base.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/bin.sym.o src/bin.c
nm -a src/bin.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/bin.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/bitmap.sym.o src/bitmap.c
nm -a src/bitmap.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/bitmap.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/ckh.sym.o src/ckh.c
nm -a src/ckh.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/ckh.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/ctl.sym.o src/ctl.c
nm -a src/ctl.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/ctl.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/div.sym.o src/div.c
nm -a src/div.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/div.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/extent.sym.o src/extent.c
nm -a src/extent.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/extent.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/extent_dss.sym.o src/extent_dss.c
nm -a src/extent_dss.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/extent_dss.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/extent_mmap.sym.o src/extent_mmap.c
nm -a src/extent_mmap.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/extent_mmap.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/hash.sym.o src/hash.c
nm -a src/hash.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/hash.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/hooks.sym.o src/hooks.c
nm -a src/hooks.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/hooks.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/large.sym.o src/large.c
nm -a src/large.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/large.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/log.sym.o src/log.c
nm -a src/log.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/log.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/malloc_io.sym.o src/malloc_io.c
nm -a src/malloc_io.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/malloc_io.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/mutex.sym.o src/mutex.c
nm -a src/mutex.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/mutex.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/mutex_pool.sym.o src/mutex_pool.c
nm -a src/mutex_pool.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/mutex_pool.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/nstime.sym.o src/nstime.c
nm -a src/nstime.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/nstime.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/pages.sym.o src/pages.c
nm -a src/pages.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/pages.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/prng.sym.o src/prng.c
nm -a src/prng.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/prng.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/prof.sym.o src/prof.c
nm -a src/prof.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/prof.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/rtree.sym.o src/rtree.c
nm -a src/rtree.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/rtree.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/stats.sym.o src/stats.c
nm -a src/stats.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/stats.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/sz.sym.o src/sz.c
nm -a src/sz.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/sz.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/tcache.sym.o src/tcache.c
nm -a src/tcache.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/tcache.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/ticker.sym.o src/ticker.c
nm -a src/ticker.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/ticker.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/tsd.sym.o src/tsd.c
nm -a src/tsd.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/tsd.sym
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/witness.sym.o src/witness.c
nm -a src/witness.sym.o | gawk -f include/jemalloc/internal/private_symbols.awk > src/witness.sym
/bin/sh include/jemalloc/internal/private_namespace.sh src/jemalloc.sym src/arena.sym src/background_thread.sym src/base.sym src/bin.sym src/bitmap.sym src/ckh.sym src/ctl.sym src/div.sym src/extent.sym src/extent_dss.sym src/extent_mmap.sym src/hash.sym src/hooks.sym src/large.sym src/log.sym src/malloc_io.sym src/mutex.sym src/mutex_pool.sym src/nstime.sym src/pages.sym src/prng.sym src/prof.sym src/rtree.sym src/stats.sym src/sz.sym src/tcache.sym src/ticker.sym src/tsd.sym src/witness.sym > include/jemalloc/internal/private_namespace.gen.h
cp include/jemalloc/internal/private_namespace.gen.h include/jemalloc/internal/private_namespace.gen.h
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/jemalloc.o src/jemalloc.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/arena.o src/arena.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/background_thread.o src/background_thread.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/base.o src/base.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/bin.o src/bin.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/bitmap.o src/bitmap.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/ckh.o src/ckh.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/ctl.o src/ctl.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/div.o src/div.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/extent.o src/extent.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/extent_dss.o src/extent_dss.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/extent_mmap.o src/extent_mmap.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/hash.o src/hash.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/hooks.o src/hooks.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/large.o src/large.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/log.o src/log.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/malloc_io.o src/malloc_io.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/mutex.o src/mutex.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/mutex_pool.o src/mutex_pool.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/nstime.o src/nstime.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/pages.o src/pages.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/prng.o src/prng.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/prof.o src/prof.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/rtree.o src/rtree.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/stats.o src/stats.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/sz.o src/sz.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/tcache.o src/tcache.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/ticker.o src/ticker.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/tsd.o src/tsd.c
gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/witness.o src/witness.c
ar crus lib/libjemalloc.a src/jemalloc.o src/arena.o src/background_thread.o src/base.o src/bin.o src/bitmap.o src/ckh.o src/ctl.o src/div.o src/extent.o src/extent_dss.o src/extent_mmap.o src/hash.o src/hooks.o src/large.o src/log.o src/malloc_io.o src/mutex.o src/mutex_pool.o src/nstime.o src/pages.o src/prng.o src/prof.o src/rtree.o src/stats.o src/sz.o src/tcache.o src/ticker.o src/tsd.o src/witness.o
make[3]: 离开目录“/usr/local/redis-5.0.10/deps/jemalloc”
make[2]: 离开目录“/usr/local/redis-5.0.10/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 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
    LINK redis-server
    INSTALL redis-sentinel
    CC redis-cli.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]: 离开目录“/usr/local/redis-5.0.10/src”
[root@localhost redis-5.0.10]#

安装并指定安装目录

此时保持在 /usr 目录下,执行下面命令
make install PREFIX=/usr/local/redis 其中,PREFIX 的值为指定的安装目录

[root@localhost redis-5.0.10]# make install PREFIX=/usr/local/redis
cd src && make install
make[1]: 进入目录“/usr/local/redis-5.0.10/src”
    CC Makefile.dep
make[1]: 离开目录“/usr/local/redis-5.0.10/src”
make[1]: 进入目录“/usr/local/redis-5.0.10/src”

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

    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
make[1]: 离开目录“/usr/local/redis-5.0.10/src”
[root@localhost redis-5.0.10]#

复制配置文件到安装目录中

保持在/usr/local/redis-5.0.10 目录下,将 该目录下的redis.conf文件通过cp命令复制到/usr/local/redis/bin 目录下
cp redis.conf /usr/local/redis/bin/

[root@localhost redis-5.0.10]# cp redis.conf /usr/local/redis/bin/
[root@localhost redis-5.0.10]# 

在安装目录下修改配置文件信息

切换到 /usr/local/redis/bin/ 目录下,先根据实际使用的端口号给 redis.conf 重命名(如果似乎默认的端口的话,可以不改,这里修改是为了提示对应的端口),然后通过vim修改参数,vim 指定文件 i进入输入模式,Esc退出输入模式 :wq 保持退出。
cd /usr/local/redis/bin/ 切换到安装目录
ls 查看目录下的文件
mv redis.conf redis-6378.conf 重命名 redis.conf 文件,便于提示对应端口

[root@localhost redis-5.0.10]# cd /usr/local/redis/bin/
[root@localhost bin]# ls
redis-benchmark  redis-check-rdb  redis.conf      redis-server
redis-check-aof  redis-cli        redis-sentinel
[root@localhost bin]# mv redis.conf redis-6378.conf
[root@localhost bin]# ls
redis-6378.conf  redis-check-aof  redis-cli       redis-server
redis-benchmark  redis-check-rdb  redis-sentinel
[root@localhost bin]#
[root@localhost bin]# vi redis-6378.conf 
[root@localhost bin]# 

修改的配置参数以及说明

属性原值修改值说明
bind127.0.0.10.0.0.0
(或者用#注释掉bind 127.0.0.1)
放开的话,只有bind绑定的ip才能访问redis
protected-modeyesnoredis3.2版本后新增protected-mode配置,默认是yes,即开启。设置外部网络连接redis服务,设置方式如下:
1.关闭protected-mode模式,此时外部网络可以直接访问。
2.开启protected-mode保护模式,需配置bind ip或者设置访问密码。
port63796378端口号,默认是6379,可以根据需求自己约定端口号
daemonizenoyes用来指定redis是否要用守护线程的方式启动,默认是no。
当daemonize选项设置成no时,当前界面将进入redis的命令行界面,exit强制退出或者关闭连接工具(putty,xshell等)都会导致redis进程退出。
redis采用的是单进程多线程的模式。当redis.conf中选项daemonize设置成yes时,代表开启守护进程模式。在该模式下,redis会在后台运行,并将进程pid号写入至redis.conf选项pidfile设置的文件中,此时redis将一直运行,除非手动kill该进程。
pidfile/var/run/redis_6379.pid/var/run/redis_6378.pid也是为了端口和服务对应,便于查找,可以不修改
logfile“”/usr/local/redis/logs/redis_6378.log默认空字符串,指向·dev/null 目录。此时可以设置日志路径,但要注意:确保设置的目录是存在的,没有的话用mkdir先创建好

设置开启自启动服务

vim /etc/systemd/system/redis6378.service

[root@localhost bin]# vim /etc/systemd/system/redis6378.service
[root@localhost bin]# 

在 /etc/systemd/system/redis6378.service 中复制粘贴一下内容

[Unit]
Description=redis6378-server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis-6378.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target

其中ExecStart设置成自己安装的redis的路径

如果自定义的 /etc/systemd/system/xxxx.service 有修改过,需要先执行一下 systemctl daemon-reload 命令,用于重新加载配置文件,然后再重新启动相关服务。

依次执行一下命令,启动redis服务并设置开机自启动

systemctl daemon-reload 重新加载配置文件
systemctl start redis6378.service 启动redis 服务,端口号6378。这的 redis6378.service 就是你上面vim添加到 /etc/systemd/system/ 目录下的。
systemctl enable redis6378.service 设置开机自启动

[root@localhost redis]# systemctl daemon-reload
[root@localhost redis]# systemctl start redis6378.service
[root@localhost redis]# systemctl enable redis6378.service
Created symlink from /etc/systemd/system/multi-user.target.wants/redis6378.service to /etc/systemd/system/redis6378.service.
[root@localhost redis]#

防火墙开放端口

firewall

设置 public作用域内 添加端口 6378 永久生效(重启也生效)
firewall-cmd --zone=public --add-port=6378/tcp –permanent
重新载入,使配置生效
firewall-cmd –reload
可以通过查询命令查询指定端口是否生效
firewall-cmd --zone=public --query-port=6378/tcp

[root@localhost local]# firewall-cmd --zone=public --add-port=6378/tcp –permanent
[root@localhost local]# firewall-cmd –reload
[root@localhost local]# 
iptables

vim /etc/sysconfig/iptabless
添加 6378端口,并保存退出
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6378 -j ACCEPT
重启iptables
systemctl restart iptables.service

[root@localhost redis]# vi /etc/sysconfig/iptables
[root@localhost redis]# systemctl restart iptables.service
[root@localhost redis]# 

检查redis是否启动成功

[root@localhost redis]# ps aux | grep redis
root     10846  0.1  0.1 153992  7908 ?        Ssl  16:04   0:01 /usr/local/redis/bin/redis-server *:6378
root     12546  0.0  0.0 112824   980 pts/3    S+   16:25   0:00 grep --color=auto redis
[root@localhost redis]# 

然后就可以用 redis-cli 或者 Redis Desktop Manager工具测试本地连接,远程连接。
RDM连接测试

配置

配置信息,参考安装中的在安装目录下修改配置文件信息部分。修改了配置之后,需要通过 systemctl restart redis6378.service 重启一下redis服务。同时注意如果 redis6378.service 也有了变动,记得先 systemctl daemon-reload 重新加载配置文件,再重启redis服务。
另外,如果想配置多个端口启动redis服务的话,从安装中的复制配置文件到安装目录中 开始,创建新端口对应的redis-***.conf ,然后按照下面的安装步骤走即可。

卸载

说明:此卸载方法对应上面的安装中完成的配置进行。

查看redis进程

ps aux|grep redis 查看redis进程

[root@localhost ~]# ps aux | grep redis
root      1357  0.0  0.0 112824   980 pts/1    S+   09:01   0:00 grep --color=auto redi
root     10846  0.1  0.1 159624  8576 ?        Ssl  12月14   1:19 /usr/local/redis/bin/redis-server *:6378
[root@localhost ~]# 

关闭redis

通过redis-cli 关闭

先进入redis-cli 所在目录(如果安装的时候配置了环境变量的话,不用切换目录), 通过 ./redis-cli -h ip地址 -p 端口号 -u url格式的地址 -a 密码 shutdown 关闭redis进程。其中 -h -p -u -a 根据实际需要自由填写。没有的话,默认的是关闭 本地 端口号为6379 无密码 的redis进程(如果有的话)。

[root@localhost local]# cd  /usr/local/redis/bin/
[root@localhost bin]# ./redis-cli -p 6378 shutdown
[root@localhost bin]# ps aux | grep redis
root     30561  0.0  0.0 112824   976 pts/3    S+   13:51   0:00 grep --color=auto redis
[root@localhost bin]# 

再次通过 ps aux | grep redis查看,确认端口号为6378的redis服务是否已经关闭。

通过 systemctl stop redis6378.service 关闭

这里的 redis6378.service 是上面安装时,在 /etc/systemd/system/ 目录下自定义的开机服务,自己根据自己创建的服务名修改。不必 进入redis-cli 所在目录

[root@localhost ~]# systemctl stop redis6378.service 
[root@localhost ~]# ps aux | grep redis
root      4582  0.0  0.0 112824   980 pts/1    S+   09:22   0:00 grep --color=auto redi
[root@localhost ~]# 

再次通过 ps aux | grep redis查看,确认端口号为6378的redis服务是否已经关闭。

通过杀进程的方式 关闭

先 通过 ps aux | grep redis 获取PID,然后通过 kill -9 PID 发方式杀死进程。不必 进入redis-cli 所在目录

[root@localhost /]# ps aux|grep redis
root      4662  0.1  0.0 153992  4332 ?        Ssl  09:22   0:00 /usr/local/redis/bin/redis-server *:6378
root      6201  0.0  0.0 112824   976 pts/1    S+   09:35   0:00 grep --color=auto redi
[root@localhost /]# kill -9 4662
[root@localhost /]# ps aux|grep redis
root      6253  0.0  0.0 112824   980 pts/1    S+   09:36   0:00 grep --color=auto redi
[root@localhost /]#

再次通过 ps aux | grep redis查看,确认端口号为6378的redis服务是否已经关闭。

删除安装时 make install 生产的文件

上面安装时通过make install PREFIX=/usr/local/redis 指定了目录 /usr/local/redis,所以这里只需要将 /usr/local/redis目录及目录下文件子目录删除即可。

[root@localhost local]# rm -rf /usr/local/redis

注意: 对rm -rf命令的使用一定要谨慎!! 建议先在文本编辑器上编辑好,执行时一定要再三确认! 尤其是在生产环境!

删除 /etc/systemd/system/ 下自定义的开机启动服务

[root@localhost local]# rm -rf /etc/systemd/system/redis6378.service

注意: 对rm -rf命令的使用一定要谨慎!! 建议先在文本编辑器上编辑好,执行时一定要再三确认! 尤其是在生产环境!

需要的话,删除下载的压缩包和解压文件

我在上面安装的时候,压缩包和解压文件是在 /usr/local/ 目录下,则删除命令如下:

[root@localhost /]# cd /usr/local/
[root@localhost local]# ll
总用量 1956
drwxr-xr-x. 2 root root       6 4月  11 2018 bin
drwxr-xr-x. 2 root root       6 4月  11 2018 etc
drwxr-xr-x. 2 root root       6 4月  11 2018 games
drwxr-xr-x. 2 root root    4096 12月  1 13:27 gcc
drwxr-xr-x. 2 root root       6 4月  11 2018 include
drwxr-xr-x. 2 root root       6 4月  11 2018 lib
drwxr-xr-x. 2 root root       6 4月  11 2018 lib64
drwxr-xr-x. 2 root root       6 4月  11 2018 libexec
drwxr-xr-x. 2 root root    4096 11月 30 14:39 mysql
drwxrwxr-x. 6 root root    4096 10月 27 14:49 redis-5.0.10
-rw-r--r--. 1 root root 1990507 10月 27 15:00 redis-5.0.10.tar.gz
drwxr-xr-x. 2 root root       6 4月  11 2018 sbin
drwxr-xr-x. 5 root root      49 11月 26 22:45 share
drwxr-xr-x. 2 root root       6 4月  11 2018 src
[root@localhost local]# rm -rf /usr/local/redis-5.0.10
[root@localhost local]# rm -rf /usr/local/redis-5.0.10.tar.gz

注意: 对rm -rf命令的使用一定要谨慎!! 建议先在文本编辑器上编辑好,执行时一定要再三确认! 尤其是在生产环境!

至此,redis就卸载完成了。

如果你觉的这篇文章对你有帮助,请点赞收藏。
另外,我有一个公众号,有兴趣的可以关注一下:
我的公众号

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用提到了一种解决方法,即通过软链接将库文件放置在"/usr/local/lib/"目录下,然后使用ldconfig命令来使系统能够找到该库文件。具体的软链接命令如下:sudo ln -s $HOME/kimera_ws/build/pangolin/src/libpangolin.so /usr/local/lib/libpangolin.so。这样,系统就可以找到该库文件了。 引用是一个错误信息,提示找不到名为"lg2o_ext_csparse"的库文件。这种错误通常是由于库文件没有添加到ld的检索目录导致的。解决方法是将该库文件添加到ld的检索目录,可以通过软链接的方式将该库文件放置在正确的目录下。 引用也提到了类似的错误,即在软件编译时出现"cannot find -lxxx"或者".so undefined xxx"的错误。主要原因是库文件没有导入到ld的检索目录。解决方法同样是将库文件添加到ld的检索目录。 因此,根据引用的方法,您可以尝试将"/usr/local/bin/ld"无法找到的库文件放置到正确的目录下,并通过软链接的方式将其添加到ld的检索目录,以解决该错误。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [/usr/bin/ld: cannot find -l 基本原理解释与解决方法](https://blog.csdn.net/boyhoodme/article/details/125097384)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [usr/bin/ld: cannot find XXX错误解决方法](https://blog.csdn.net/zhuquan945/article/details/79725201)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值