千家信息网

redis 3.0.7 安装部署

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,############################基础环境OS: centos 6.6DB: redis 3.0.7#############################1.下载源码包,稳定
千家信息网最后更新 2025年02月02日redis 3.0.7 安装部署


############################

基础环境

OS: centos 6.6

DB: redis 3.0.7

#############################


1.下载源码包,稳定版本

http://redis.io/ -->Download it -->download 3.0.7.


2.上传到服务器/usr/local目录下,解压缩

#cd /usr/local

# tar -zxvf redis-3.0.7.tar.gz


3.编译

# cd redis-3.0.7

# make

#make test --可以省略


4.安装

# make install


5.安装数据库设置,可以设置不同端口,多个实例

# ./utils/install_server.sh --可以运行多次

Welcome to the redis service installer

This script will help you easily set up a running redis server


Please select the redis port for this instance: [6379]

Selecting default: 6379

Please select the redis config file name [/etc/redis/6379.conf]

Selected default - /etc/redis/6379.conf

Please select the redis log file name [/var/log/redis_6379.log]

Selected default - /var/log/redis_6379.log

Please select the data directory for this instance [/var/lib/redis/6379]

Selected default - /var/lib/redis/6379

Please select the redis executable path [/usr/local/bin/redis-server]

Selected config:

Port : 6379

Config file : /etc/redis/6379.conf

Log file : /var/log/redis_6379.log

Data dir : /var/lib/redis/6379

Executable : /usr/local/bin/redis-server

Cli Executable : /usr/local/bin/redis-cli

Is this ok? Then press ENTER to go on or Ctrl-C to abort.

Copied /tmp/6379.conf => /etc/init.d/redis_6379

Installing service...

Successfully added to chkconfig!

Successfully added to runlevels 345!

Starting Redis server...

Installation successful!


6.验证

# ps -ef |grep redis

# chkconfig --list |grep redis

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

# redis-cli -p 6379

127.0.0.1:6379> info


7.启停

#service redis_6379 stop

#service redis_6379 start


8.问题总结:


1)安装gcc、jemalloc

# yum -y install gcc

# rpm -ivh jemalloc-3.6.0-1.el6.x86_64.rpm


2)make时报如下错误,一定要用jemalloc

zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory

zmalloc.h:55:2: error: #error "Newer version of jemalloc required"

make[1]: *** [adlist.o] Error 1

原因是jemalloc重载了Linux下的ANSI C的malloc和free函数。解决办法:make时添加参数。

解决方法:

#make MALLOC=libc


3)make之后,会出现一句提示

Hint: To run 'make test' is a good idea ;)

但是不测试,通常是可以使用的。若我们运行make test ,会有如下提示

#make test

You need tcl 8.5 or newer in order to run the Redis test

make: ***[test] Error_1

解决办法是用yum安装tcl8.5(或去tcl的官方网站http://www.tcl.tk/下载8.5版本,并参考官网介绍进行安装)

#yum install tcl


4)编译测试报错

*** [err]: Test replication partial resync: no backlog (diskless: no, reconnect: 1) in tests/integration/replication-psync.tcl

Expected condition '[s -1 sync_partial_err] > 0' to be true ([s -1 sync_partial_err] > 0)

Cleanup: may take some time... OK

make[1]: *** [test] 错误 1

make[1]: Leaving directory `/usr/local/redis-3.0.7/src'

make: *** [test] 错误 2

解决办法:

在速度较慢的机器上执行make test可能出现下列错误,无影响



0