您的位置:首页 > 数据库 > Redis

linux 安装redis

2016-07-11 10:42 513 查看

Linux下redis的安装

第一部分:安装redis 
希望将redis安装到此目录 

希望将安装包下载到此目录 

那么安装过程指令如下: 

注意上面的最后一行,我们通过PREFIX指定了安装的目录。如果make失败,一般是你们系统中还未安装gcc,那么可以通过yum安装: 

安装完成后,继续执行make. 

在安装redis成功后,你将可以在/usr/local/redis看到一个bin的目录,里面包括了以下文件: 

第二部分:将redis做成一个服务 

1.复制脚本到/etc/rc.d/init.d目录 
ps: /etc/rc.d/init.d/目录下的脚本就类似与windows中的注册表,在系统启动的时候某些指定脚本将被执行 
按以上步骤安装Redis时,其服务脚本位于:

必须将其复制到/etc/rc.d/init.d的目录下: 

将redis_init_script复制到/etc/rc.d/init.d/,同时易名为redis。

如果这时添加注册服务:

将报以下错误:

为此,我们需要更改redis脚本。 

2.更改redis脚本 
打开使用vi打开脚本,查看脚本信息: 

看到的内容如下(下内容是更改好的信息): 

和原配置文件相比: 

1.原文件是没有以下第2行的内容的,

如果不加 执行

[root@szwlan3 redis]# chkconfig --add redis

redis 服务不支持 chkconfig

2.原文件EXEC、CLIEXEC参数,也是有所更改。 

3.redis开启的命令,以后台运行的方式执行。

ps:注意后面的那个“&”,即是将服务转到后面运行的意思,否则启动服务时,Redis服务将 

占据在前台,占用了主用户界面,造成其它的命令执行不了。 
4.将redis配置文件拷贝到/etc/redis/${REDISPORT}.conf 

这样,redis服务脚本指定的CONF就存在了。默认情况下,Redis未启用认证,可以通过开启6379.conf的requirepass 指定一个验证密码。 

以上操作完成后,即可注册yedis服务:

3.启动redis服务 

第三,将Redis的命令所在目录添加到系统参数PATH中 

修改profile文件:

在最后行追加: 

然后马上应用这个文件: 

这样就可以直接调用redis-cli的命令了,如下所示: 

至此,redis 就成功安装了。 

总结下:在linux系统中安装redis,或多或少都能碰到一些问题。在此次安装中3个大部分, 
1.下载,安装,这里使用到wget命令,make命令,我不太懂make命令的使用,而且一直担心make命令如何安装到指定目录下, 此次终于明白了。 
2.如何将一个程序添加到服务,当然也对/etc/rc.d/init.d这个文件有所了解。 
3.如何将一个程序的一些命令添加到系统参数中,直接输入命令就能达到对某个程序的操作。 
其实就是指定好环境变量。

安装redis

[root@szwlan3 redis-stable]# make PREFIX=/usr/local/redis install

cd src && make install

make[1]: Entering directory `/root/dev_soft/redis-stable/src'

rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-dump redis-check-aof *.o *.gcda *.gcno *.gcov redis.info lcov-html

(cd ../deps && make distclean)

make[2]: Entering directory `/root/dev_soft/redis-stable/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]: Leaving directory `/root/dev_soft/redis-stable/deps'

(rm -f .make-*)

echo STD=-std=c99 -pedantic >> .make-settings

echo WARN=-Wall -W >> .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 -Wall -W -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]: Entering directory `/root/dev_soft/redis-stable/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-ldflags)

(echo "" > .make-cflags)

MAKE hiredis

cd hiredis && make static

make[3]: Entering directory `/root/dev_soft/redis-stable/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

ar rcs libhiredis.a net.o hiredis.o sds.o async.o

make[3]: Leaving directory `/root/dev_soft/redis-stable/deps/hiredis'

MAKE linenoise

cd linenoise && make

make[3]: Entering directory `/root/dev_soft/redis-stable/deps/linenoise'

cc  -Wall -Os -g  -c linenoise.c

make[3]: Leaving directory `/root/dev_soft/redis-stable/deps/linenoise'

MAKE lua

cd lua/src && make all CFLAGS="-O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL " MYLDFLAGS="" AR="ar rcu"

make[3]: Entering directory `/root/dev_soft/redis-stable/deps/lua/src'

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lapi.o lapi.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lcode.o lcode.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o ldebug.o ldebug.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o ldo.o ldo.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o ldump.o ldump.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lfunc.o lfunc.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lgc.o lgc.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o llex.o llex.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lmem.o lmem.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lobject.o lobject.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lopcodes.o lopcodes.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lparser.o lparser.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lstate.o lstate.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lstring.o lstring.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o ltable.o ltable.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o ltm.o ltm.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lundump.o lundump.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lvm.o lvm.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lzio.o lzio.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o strbuf.o strbuf.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o fpconv.o fpconv.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lauxlib.o lauxlib.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lbaselib.o lbaselib.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o ldblib.o ldblib.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o liolib.o liolib.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lmathlib.o lmathlib.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o loslib.o loslib.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o ltablib.o ltablib.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lstrlib.o lstrlib.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o loadlib.o loadlib.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o linit.o linit.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lua_cjson.o lua_cjson.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lua_struct.o lua_struct.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o lua_cmsgpack.o lua_cmsgpack.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -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    -c -o lua.o lua.c

cc -o lua  lua.o liblua.a -lm

liblua.a(loslib.o): In function `os_tmpname':

loslib.c:(.text+0x35): warning: the use of `tmpnam' is dangerous, better use `mkstemp'

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o luac.o luac.c

cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL    -c -o print.o print.c

cc -o luac  luac.o print.o liblua.a -lm

make[3]: Leaving directory `/root/dev_soft/redis-stable/deps/lua/src'

MAKE jemalloc

cd jemalloc && ./configure --with-jemalloc-prefix=je_ --enable-cc-silence CFLAGS="-std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops " LDFLAGS=""

checking for xsltproc... false

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 how to run the C preprocessor... gcc -E

checking for grep that handles long lines and -e... /bin/grep

checking for egrep... /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 intmax_t... 8

checking build system type... x86_64-unknown-linux-gnu

checking host system type... x86_64-unknown-linux-gnu

checking whether pause instruction is compilable... yes

checking whether SSE2 intrinsics is compilable... yes

checking for ar... ar

checking whether __attribute__ syntax is compilable... yes

checking whether compiler supports -fvisibility=hidden... yes

checking whether compiler supports -Werror... yes

checking whether tls_model 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... /usr/bin/autoconf

checking for memalign... yes

checking for valloc... yes

checking configured backtracing method... N/A

checking for sbrk... yes

checking whether utrace(2) is compilable... no

checking whether valgrind is compilable... no

checking STATIC_PAGE_SHIFT... 12

checking pthread.h usability... yes

checking pthread.h presence... yes

checking for pthread.h... yes

checking for pthread_create in -lpthread... yes

checking for _malloc_thread_cleanup... no

checking for _pthread_mutex_init_calloc_cb... no

checking for TLS... yes

checking whether a program using ffsl is compilable... yes

checking whether atomic(9) is compilable... no

checking whether Darwin OSAtomic*() is compilable... no

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 whether Darwin OSSpin*() is compilable... no

checking for stdbool.h that conforms to C99... yes

checking for _Bool... yes

configure: creating ./config.status

config.status: creating Makefile

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/internal/jemalloc_internal.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.sh

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/private_namespace.h commands

config.status: executing include/jemalloc/internal/private_unnamespace.h commands

config.status: executing include/jemalloc/internal/public_symbols.txt 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

===============================================================================

jemalloc version   : 3.6.0-0-g46c0af68bd248b04df75e4f92d5fb804c3d75340

library revision   : 1

CC                 : gcc

CPPFLAGS           :  -D_GNU_SOURCE -D_REENTRANT

CFLAGS             : -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -fvisibility=hidden

LDFLAGS            :

EXTRA_LDFLAGS      :

LIBS               :  -lpthread

RPATH_EXTRA        :

XSLTPROC           : false

XSLROOT            :

PREFIX             : /usr/local

BINDIR             : /usr/local/bin

INCLUDEDIR         : /usr/local/include

LIBDIR             : /usr/local/lib

DATADIR            : /usr/local/share

MANDIR             : /usr/local/share/man

srcroot            :

abs_srcroot        : /root/dev_soft/redis-stable/deps/jemalloc/

objroot            :

abs_objroot        : /root/dev_soft/redis-stable/deps/jemalloc/

JEMALLOC_PREFIX    : je_

JEMALLOC_PRIVATE_NAMESPACE

                   : je_

install_suffix     :

autogen            : 0

experimental       : 1

cc-silence         : 1

debug              : 0

code-coverage      : 0

stats              : 1

prof               : 0

prof-libunwind     : 0

prof-libgcc        : 0

prof-gcc           : 0

tcache             : 1

fill               : 1

utrace             : 0

valgrind           : 0

xmalloc            : 0

mremap             : 0

munmap             : 0

dss                : 0

lazy_lock          : 0

tls                : 1

===============================================================================

cd jemalloc && make CFLAGS="-std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops " LDFLAGS="" lib/libjemalloc.a

make[3]: Entering directory `/root/dev_soft/redis-stable/deps/jemalloc'

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/atomic.o src/atomic.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/bitmap.o src/bitmap.c

gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/chunk.o src/chunk.c

gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/chunk_dss.o src/chunk_dss.c

gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/chunk_mmap.o src/chunk_mmap.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/extent.o src/extent.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/huge.o src/huge.c

gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/mb.o src/mb.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/prof.o src/prof.c

gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/quarantine.o src/quarantine.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/tcache.o src/tcache.c

gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops  -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/util.o src/util.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

ar crus lib/libjemalloc.a src/jemalloc.o src/arena.o src/atomic.o src/base.o src/bitmap.o src/chunk.o src/chunk_dss.o src/chunk_mmap.o src/ckh.o src/ctl.o src/extent.o src/hash.o src/huge.o src/mb.o src/mutex.o src/prof.o src/quarantine.o src/rtree.o src/stats.o
src/tcache.o src/util.o src/tsd.o

make[3]: Leaving directory `/root/dev_soft/redis-stable/deps/jemalloc'

make[2]: Leaving directory `/root/dev_soft/redis-stable/deps'

    CC adlist.o

    CC ae.o

    CC anet.o

anet.c: 在函数‘anetSockName’中:

anet.c:565: 警告:dereferencing pointer ‘s’ does break strict-aliasing rules

anet.c:563: 附注:initialized from here

anet.c:569: 警告:dereferencing pointer ‘s’ does break strict-aliasing rules

anet.c:567: 附注:initialized from here

anet.c: 在函数‘anetPeerToString’中:

anet.c:543: 警告:dereferencing pointer ‘s’ does break strict-aliasing rules

anet.c:541: 附注:initialized from here

anet.c:547: 警告:dereferencing pointer ‘s’ does break strict-aliasing rules

anet.c:545: 附注:initialized from here

anet.c: 在函数‘anetTcpAccept’中:

anet.c:511: 警告:dereferencing pointer ‘s’ does break strict-aliasing rules

anet.c:509: 附注:initialized from here

anet.c:515: 警告:dereferencing pointer ‘s’ does break strict-aliasing rules

anet.c:513: 附注:initialized from here

    CC dict.o

    CC redis.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

db.c: 在函数‘scanGenericCommand’中:

db.c:418: 警告:此函数中的‘pat’在使用前可能未初始化

db.c:419: 警告:此函数中的‘patlen’在使用前可能未初始化

    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 migrate.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 hyperloglog.o

    CC latency.o

    CC sparkline.o

    LINK redis-server

    INSTALL redis-sentinel

    CC redis-cli.o

    LINK redis-cli

    CC redis-benchmark.o

    LINK redis-benchmark

    CC redis-check-dump.o

    LINK redis-check-dump

    CC redis-check-aof.o

    LINK redis-check-aof

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

    INSTALL install

    INSTALL install

    INSTALL install

    INSTALL install

    INSTALL install

make[1]: Leaving directory `/root/dev_soft/redis-stable/src'

[root@szwlan3 redis-stable]#

[root@szwlan3 redis]# service redis start

Starting Redis server...

[root@szwlan3 redis]# [19962] 11 Jul 10:36:55.681 * Increased maximum number of open files to 10032 (it was originally set to 1024).

                _._                                                  

           _.-``__ ''-._                                             

      _.-``    `.  `_.  ''-._           Redis 2.8.19 (00000000/0) 64 bit

  .-`` .-```.  ```\/    _.,_ ''-._                                   

 (    '      ,       .-`  | `,    )     Running in stand alone mode

 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379

 |    `-._   `._    /     _.-'    |     PID: 19962

  `-._    `-._  `-./  _.-'    _.-'                                   

 |`-._`-._    `-.__.-'    _.-'_.-'|                                  

 |    `-._`-._        _.-'_.-'    |           http://redis.io        

  `-._    `-._`-.__.-'_.-'    _.-'                                   

 |`-._`-._    `-.__.-'    _.-'_.-'|                                  

 |    `-._`-._        _.-'_.-'    |                                  

  `-._    `-._`-.__.-'_.-'    _.-'                                   

      `-._    `-.__.-'    _.-'                                       

          `-._        _.-'                                           

              `-.__.-'                                               

[19962] 11 Jul 10:36:55.682 # Server started, Redis version 2.8.19

[19962] 11 Jul 10:36:55.682 # 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.

[19962] 11 Jul 10:36:55.682 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'
as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.

[19962] 11 Jul 10:36:55.682 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

[19962] 11 Jul 10:36:55.682 * The server is now ready to accept connections on port 6379

^C

[root@szwlan3 redis]# ps -ef|grep redis

root     19962     1  0 10:36 pts/2    00:00:00 /usr/local/redis/bin/redis-server *:6379              

root     19966 19904  0 10:37 pts/2    00:00:00 grep redis

[root@szwlan3 redis]#

以下方式启动不退出

/usr/local/redis/bin/./redis-server &

20161225:

如果make报错 怎样清理已经按照的文件?    运行make distclean之后再make

redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何

redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲

redis-check-dump:修复有问题的dump.rdb文件

redis-sentinel:redis集群使用

redis常用命令
http://redisdoc.com/
keys *

exists key的名字,判断某个key是否存在

move key db   --->当前库就没有了,被移除了

expire key 秒钟:为给定的key设置过期时间

ttl key 查看还有多少秒过期,-1表示永不过期,-2表示已过期

type key 查看你的key是什么类型

如果配置文件里没有加密码要求 则会出现

127.0.0.1:6379> auth 5vwJ4AghYNH&W4RWejfieo69C2ZPp%r@

(error) ERR Client sent AUTH, but no password is set

[qjzh@localhost redis]$ pwd

/etc/redis

[qjzh@localhost redis]$ sudo vim 6379.conf

391 # requirepass foobared

392  requirepass "5vwJ4AghYNH&W4RWejfieo69C2ZPp%r@"

重启

[qjzh@localhost bin]$ sudo ./redis-server /etc/redis/6379.conf &

[1] 13538

[qjzh@localhost bin]$                 _._                                                  

           _.-``__ ''-._                                             

      _.-``    `.  `_.  ''-._           Redis 2.8.19 (00000000/0) 64 bit

  .-`` .-```.  ```\/    _.,_ ''-._                                   

 (    '      ,       .-`  | `,    )     Running in stand alone mode

 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379

 |    `-._   `._    /     _.-'    |     PID: 13539

  `-._    `-._  `-./  _.-'    _.-'                                   

 |`-._`-._    `-.__.-'    _.-'_.-'|                                  

 |    `-._`-._        _.-'_.-'    |           http://redis.io        

  `-._    `-._`-.__.-'_.-'    _.-'                                   

 |`-._`-._    `-.__.-'    _.-'_.-'|                                  

 |    `-._`-._        _.-'_.-'    |                                  

  `-._    `-._`-.__.-'_.-'    _.-'                                   

      `-._    `-.__.-'    _.-'                                       

          `-._        _.-'                                           

              `-.__.-'                                               

[13539] 27 Feb 10:47:07.502 # Server started, Redis version 2.8.19

[13539] 27 Feb 10:47:07.502 # 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.

[13539] 27 Feb 10:47:07.502 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'
as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.

[13539] 27 Feb 10:47:07.502 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

[13539] 27 Feb 10:47:07.502 * The server is now ready to accept connections on port 6379

再连:

[qjzh@localhost redis]$ redis-cli

127.0.0.1:6379> auth 5vwJ4AghYNH&W4RWejfieo69C2ZPp%r@

OK

127.0.0.1:6379>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: